Socket
Socket
Sign inDemoInstall

@magic-sdk/provider

Package Overview
Dependencies
Maintainers
23
Versions
656
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@magic-sdk/provider - npm Package Compare versions

Comparing version 28.5.0 to 28.6.0-canary.768.10579617213.0

6

./dist/cjs/index.js

@@ -1,6 +0,6 @@

"use strict";var Jt=Object.create;var re=Object.defineProperty,Gt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,jt=Object.getOwnPropertyDescriptors,Bt=Object.getOwnPropertyNames,at=Object.getOwnPropertySymbols,Vt=Object.getPrototypeOf,lt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable;var ct=(n,t,e)=>t in n?re(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,V=(n,t)=>{for(var e in t||(t={}))lt.call(t,e)&&ct(n,e,t[e]);if(at)for(var e of at(t))Ht.call(t,e)&&ct(n,e,t[e]);return n},H=(n,t)=>Gt(n,jt(t));var Xt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),dt=(n,t)=>{for(var e in t)re(n,e,{get:t[e],enumerable:!0})},ut=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Bt(t))!lt.call(n,s)&&s!==e&&re(n,s,{get:()=>t[s],enumerable:!(r=Kt(t,s))||r.enumerable});return n};var zt=(n,t,e)=>(e=n!=null?Jt(Vt(n)):{},ut(t||!n||!n.__esModule?re(e,"default",{value:n,enumerable:!0}):e,n)),Yt=n=>ut(re({},"__esModule",{value:!0}),n);var f=(n,t,e)=>new Promise((r,s)=>{var o=c=>{try{a(e.next(c))}catch(l){s(l)}},i=c=>{try{a(e.throw(c))}catch(l){s(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(o,i);a((e=e.apply(n,t)).next())});var Ct=Xt((Sr,Xe)=>{"use strict";var Bn=Object.prototype.hasOwnProperty,M="~";function ce(){}Object.create&&(ce.prototype=Object.create(null),new ce().__proto__||(M=!1));function Vn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function Nt(n,t,e,r,s){if(typeof e!="function")throw new TypeError("The listener must be a function");var o=new Vn(e,r||n,s),i=M?M+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],o]:n._events[i].push(o):(n._events[i]=o,n._eventsCount++),n}function ve(n,t){--n._eventsCount===0?n._events=new ce:delete n._events[t]}function w(){this._events=new ce,this._eventsCount=0}w.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)Bn.call(e,r)&&t.push(M?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};w.prototype.listeners=function(t){var e=M?M+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var s=0,o=r.length,i=new Array(o);s<o;s++)i[s]=r[s].fn;return i};w.prototype.listenerCount=function(t){var e=M?M+t:t,r=this._events[e];return r?r.fn?1:r.length:0};w.prototype.emit=function(t,e,r,s,o,i){var a=M?M+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,p;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,s),!0;case 5:return c.fn.call(c.context,e,r,s,o),!0;case 6:return c.fn.call(c.context,e,r,s,o,i),!0}for(p=1,d=new Array(l-1);p<l;p++)d[p-1]=arguments[p];c.fn.apply(c.context,d)}else{var C=c.length,I;for(p=0;p<C;p++)switch(c[p].once&&this.removeListener(t,c[p].fn,void 0,!0),l){case 1:c[p].fn.call(c[p].context);break;case 2:c[p].fn.call(c[p].context,e);break;case 3:c[p].fn.call(c[p].context,e,r);break;case 4:c[p].fn.call(c[p].context,e,r,s);break;default:if(!d)for(I=1,d=new Array(l-1);I<l;I++)d[I-1]=arguments[I];c[p].fn.apply(c[p].context,d)}}return!0};w.prototype.on=function(t,e,r){return Nt(this,t,e,r,!1)};w.prototype.once=function(t,e,r){return Nt(this,t,e,r,!0)};w.prototype.removeListener=function(t,e,r,s){var o=M?M+t:t;if(!this._events[o])return this;if(!e)return ve(this,o),this;var i=this._events[o];if(i.fn)i.fn===e&&(!s||i.once)&&(!r||i.context===r)&&ve(this,o);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||s&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:ve(this,o)}return this};w.prototype.removeAllListeners=function(t){var e;return t?(e=M?M+t:t,this._events[e]&&ve(this,e)):(this._events=new ce,this._eventsCount=0),this};w.prototype.off=w.prototype.removeListener;w.prototype.addListener=w.prototype.on;w.prefixed=M;w.EventEmitter=w;typeof Xe<"u"&&(Xe.exports=w)});var Er={};dt(Er,{Extension:()=>_,MagicExtensionError:()=>K,MagicExtensionWarning:()=>Y,MagicRPCError:()=>L,MagicSDKError:()=>S,MagicSDKWarning:()=>D,SDKBase:()=>pe,STORE_KEY_PRIVATE_KEY:()=>Me,STORE_KEY_PUBLIC_JWK:()=>de,TypedEmitter:()=>Te,ViewController:()=>_e,clearKeys:()=>er,createDeprecationWarning:()=>U,createDuplicateIframeWarning:()=>Jn,createExtensionNotInitializedError:()=>Ke,createIncompatibleExtensionsError:()=>je,createInvalidArgumentError:()=>Be,createJwt:()=>et,createMalformedResponseError:()=>Ge,createMissingApiKeyError:()=>Fe,createModalNotReadyError:()=>Je,createPromiEvent:()=>O,createPromise:()=>be,createReactNativeEndpointConfigurationWarning:()=>He,createSDK:()=>wt,createSynchronousWeb3MethodWarning:()=>Ve,createTypedEmitter:()=>le,createURL:()=>xe,decodeJSON:()=>De,encodeJSON:()=>ae,getPayloadId:()=>Re,isEmpty:()=>z,isJsonRpcErrorCode:()=>We,isJsonRpcRequestPayload:()=>Wn,isJsonRpcResponsePayload:()=>Ue,isMagicPayloadMethod:()=>Fn,isMajorVersionAtLeast:()=>Ye,isPromiEvent:()=>ze,isWebCryptoSupported:()=>ee,storage:()=>Z,uuid:()=>Ze});module.exports=Yt(Er);function Qt(n){let t={exports:{}};return n(t,t.exports),t.exports}var Zt=Number.MAX_SAFE_INTEGER||9007199254740991;var qe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:Zt,MAX_SAFE_COMPONENT_LENGTH:16},en=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},E=en,ie=Qt(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=qe,r=(t=n.exports={}).re=[],s=t.src=[],o=t.t={},i=0,a=(c,l,d)=>{let p=i++;E(p,l),o[c]=p,s[p]=l,r[p]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${s[o.NUMERICIDENTIFIER]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${s[o.NUMERICIDENTIFIERLOOSE]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${s[o.PRERELEASEIDENTIFIER]}(?:\\.${s[o.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${s[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${s[o.BUILDIDENTIFIER]}(?:\\.${s[o.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${s[o.MAINVERSION]}${s[o.PRERELEASE]}?${s[o.BUILD]}?`),a("FULL",`^${s[o.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${s[o.MAINVERSIONLOOSE]}${s[o.PRERELEASELOOSE]}?${s[o.BUILD]}?`),a("LOOSE",`^${s[o.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${s[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${s[o.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:${s[o.PRERELEASE]})?${s[o.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:${s[o.PRERELEASELOOSE]})?${s[o.BUILD]}?)?)?`),a("XRANGE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",s[o.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${s[o.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${s[o.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${s[o.LONECARET]}${s[o.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${s[o.LONECARET]}${s[o.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${s[o.GTLT]}\\s*(${s[o.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]}|${s[o.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${s[o.XRANGEPLAIN]})\\s+-\\s+(${s[o.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${s[o.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[o.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),pt=/^[0-9]+$/,Tt=(n,t)=>{let e=pt.test(n),r=pt.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},tn=(n,t)=>Tt(t,n),nn={compareIdentifiers:Tt,rcompareIdentifiers:tn},{MAX_LENGTH:ht,MAX_SAFE_INTEGER:me}=qe,{re:mt,t:ft}=ie,{compareIdentifiers:se}=nn,g=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof g){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>ht)throw new TypeError(`version is longer than ${ht} characters`);E("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?mt[ft.LOOSE]:mt[ft.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>me||this.major<0)throw new TypeError("Invalid major version");if(this.minor>me||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>me||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&o<me)return o}return s}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(E("SemVer.compare",this.version,this.options,t),!(t instanceof g)){if(typeof t=="string"&&t===this.version)return 0;t=new g(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof g||(t=new g(t,this.options)),se(this.major,t.major)||se(this.minor,t.minor)||se(this.patch,t.patch)}comparePre(t){if(t instanceof g||(t=new g(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],s=t.prerelease[e];if(E("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return se(r,s)}while(++e)}compareBuild(t){t instanceof g||(t=new g(t,this.options));let e=0;do{let r=this.build[e],s=t.build[e];if(E("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return se(r,s)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},rn=(n,t,e)=>new g(n,e).compare(new g(t,e)),X=rn,sn=(n,t,e)=>X(n,t,e)===0,on=sn,an=(n,t,e)=>X(n,t,e)!==0,cn=an,ln=(n,t,e)=>X(n,t,e)>0,dn=ln,un=(n,t,e)=>X(n,t,e)>=0,pn=un,hn=(n,t,e)=>X(n,t,e)<0,mn=hn,fn=(n,t,e)=>X(n,t,e)<=0,En=fn,yn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return on(n,e,r);case"!=":return cn(n,e,r);case">":return dn(n,e,r);case">=":return pn(n,e,r);case"<":return mn(n,e,r);case"<=":return En(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},ke=yn,oe=Symbol("SemVer ANY"),W=class{static get ANY(){return oe}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof W){if(t.loose===!!e.loose)return t;t=t.value}E("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===oe?this.value="":this.value=this.operator+this.semver.version,E("comp",this)}parse(t){let e=this.options.loose?Et[yt.COMPARATORLOOSE]:Et[yt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new g(r[2],this.options.loose):this.semver=oe}toString(){return this.value}test(t){if(E("Comparator.test",t,this.options.loose),this.semver===oe||t===oe)return!0;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}return ke(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof W))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new k(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new k(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),s=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),o=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=ke(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=ke(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||s||o&&i||a||c}},{re:Et,t:yt}=ie,k=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof k)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new k(t.raw,e);if(t instanceof W)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?b[T.HYPHENRANGELOOSE]:b[T.HYPHENRANGE];t=t.replace(r,An(this.options.includePrerelease)),E("hyphen replace",t),t=t.replace(b[T.COMPARATORTRIM],gn),E("comparator trim",t,b[T.COMPARATORTRIM]),t=(t=(t=t.replace(b[T.TILDETRIM],Rn)).replace(b[T.CARETTRIM],vn)).split(/\s+/).join(" ");let s=e?b[T.COMPARATORLOOSE]:b[T.COMPARATOR];return t.split(" ").map(o=>Tn(o,this.options)).join(" ").split(/\s+/).map(o=>Cn(o,this.options)).filter(this.options.loose?o=>!!o.match(s):()=>!0).map(o=>new W(o,this.options))}intersects(t,e){if(!(t instanceof k))throw new TypeError("a Range is required");return this.set.some(r=>gt(r,e)&&t.set.some(s=>gt(s,e)&&r.every(o=>s.every(i=>o.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if($n(this.set[e],t,this.options))return!0;return!1}},{re:b,t:T,comparatorTrimReplace:gn,tildeTrimReplace:Rn,caretTrimReplace:vn}=ie,gt=(n,t)=>{let e=!0,r=n.slice(),s=r.pop();for(;e&&r.length;)e=r.every(o=>s.intersects(o,t)),s=r.pop();return e},Tn=(n,t)=>(E("comp",n,t),n=wn(n,t),E("caret",n),n=In(n,t),E("tildes",n),n=Mn(n,t),E("xrange",n),n=Nn(n,t),E("stars",n),n),P=n=>!n||n.toLowerCase()==="x"||n==="*",In=(n,t)=>n.trim().split(/\s+/).map(e=>bn(e,t)).join(" "),bn=(n,t)=>{let e=t.loose?b[T.TILDELOOSE]:b[T.TILDE];return n.replace(e,(r,s,o,i,a)=>{let c;return E("tilde",n,r,s,o,i,a),P(s)?c="":P(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:P(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(E("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,E("tilde return",c),c})},wn=(n,t)=>n.trim().split(/\s+/).map(e=>Pn(e,t)).join(" "),Pn=(n,t)=>{E("caret",n,t);let e=t.loose?b[T.CARETLOOSE]:b[T.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(s,o,i,a,c)=>{let l;return E("caret",n,s,o,i,a,c),P(o)?l="":P(i)?l=`>=${o}.0.0${r} <${+o+1}.0.0-0`:P(a)?l=o==="0"?`>=${o}.${i}.0${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${r} <${+o+1}.0.0-0`:c?(E("replaceCaret pr",c),l=o==="0"?i==="0"?`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(E("no pr"),l=o==="0"?i==="0"?`>=${o}.${i}.${a}${r} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),E("caret return",l),l})},Mn=(n,t)=>(E("replaceXRanges",n,t),n.split(/\s+/).map(e=>xn(e,t)).join(" ")),xn=(n,t)=>{n=n.trim();let e=t.loose?b[T.XRANGELOOSE]:b[T.XRANGE];return n.replace(e,(r,s,o,i,a,c)=>{E("xRange",n,r,s,o,i,a,c);let l=P(o),d=l||P(i),p=d||P(a),C=p;return s==="="&&C&&(s=""),c=t.includePrerelease?"-0":"",l?r=s===">"||s==="<"?"<0.0.0-0":"*":s&&C?(d&&(i=0),a=0,s===">"?(s=">=",d?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",d?o=+o+1:i=+i+1),s==="<"&&(c="-0"),r=`${s+o}.${i}.${a}${c}`):d?r=`>=${o}.0.0${c} <${+o+1}.0.0-0`:p&&(r=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),E("xRange return",r),r})},Nn=(n,t)=>(E("replaceStars",n,t),n.trim().replace(b[T.STAR],"")),Cn=(n,t)=>(E("replaceGTE0",n,t),n.trim().replace(b[t.includePrerelease?T.GTE0PRE:T.GTE0],"")),An=n=>(t,e,r,s,o,i,a,c,l,d,p,C,I)=>`${e=P(r)?"":P(s)?`>=${r}.0.0${n?"-0":""}`:P(o)?`>=${r}.${s}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=P(l)?"":P(d)?`<${+l+1}.0.0-0`:P(p)?`<${l}.${+d+1}.0-0`:C?`<=${l}.${d}.${p}-${C}`:n?`<${l}.${d}.${+p+1}-0`:`<=${c}`}`.trim(),$n=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(E(n[r].semver),n[r].semver!==W.ANY&&n[r].semver.prerelease.length>0){let s=n[r].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0},It=(n,t,e)=>{try{t=new k(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:Sn}=qe,{re:Rt,t:vt}=ie,Ln=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof g)return n;if(typeof n!="string"||n.length>Sn||!(t.loose?Rt[vt.LOOSE]:Rt[vt.FULL]).test(n))return null;try{return new g(n,t)}catch(e){return null}},On=Ln,{re:fe,t:Ee}=ie,bt=(n,t)=>{if(n instanceof g)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=fe[Ee.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),fe[Ee.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;fe[Ee.COERCERTL].lastIndex=-1}else e=n.match(fe[Ee.COERCE]);return e===null?null:On(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function _n(n){return String.fromCharCode(parseInt(n.slice(1),16))}function kn(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function qn(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,_n))}function Dn(n){return decodeURIComponent(Array.from(atob(n),kn).join(""))}function ae(n){return qn(JSON.stringify(n))}function De(n){return JSON.parse(Dn(n))}var A=require("@magic-sdk/types");var ye=require("@magic-sdk/types");function q(n){return typeof n=="undefined"}function Un(n){return n===null}function ge(n){return Un(n)||q(n)}function Wn(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&!q(n.method)&&!q(n.params)}function Ue(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&(!q(n.result)||!q(n.error))}function Fn(n){return ge(n)?!1:typeof n=="string"&&Object.values(ye.MagicPayloadMethod).includes(n)}function We(n){return ge(n)?!1:typeof n=="number"&&Object.values(ye.RPCErrorCode).includes(n)}function z(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var m={};function wt(n,t){return Object.assign(m,t),n}var Pt={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var S=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,S.prototype)}},L=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=We(r)?r:A.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,L.prototype)}},D=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},K=class extends Error{constructor(e,r,s,o){super(`Magic Extension Error (${e.name}): [${r}] ${s}`);this.code=r;this.rawMessage=s;this.data=o;this.__proto__=Error;Object.setPrototypeOf(this,K.prototype)}},Y=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function Fe(){return new S(A.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Je(){return new S(A.SDKErrorCode.ModalNotReady,"Modal is not ready.")}function Ge(){return new S(A.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function Ke(n){return new S(A.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function je(n){let t=`Some extensions are incompatible with \`${m.sdkName}@${m.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[m.sdkName];typeof r=="string"?t+=`
"use strict";var Jt=Object.create;var re=Object.defineProperty,Gt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,jt=Object.getOwnPropertyDescriptors,Bt=Object.getOwnPropertyNames,at=Object.getOwnPropertySymbols,Vt=Object.getPrototypeOf,lt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable;var ct=(n,t,e)=>t in n?re(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,V=(n,t)=>{for(var e in t||(t={}))lt.call(t,e)&&ct(n,e,t[e]);if(at)for(var e of at(t))Ht.call(t,e)&&ct(n,e,t[e]);return n},H=(n,t)=>Gt(n,jt(t));var Xt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),dt=(n,t)=>{for(var e in t)re(n,e,{get:t[e],enumerable:!0})},ut=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Bt(t))!lt.call(n,o)&&o!==e&&re(n,o,{get:()=>t[o],enumerable:!(r=Kt(t,o))||r.enumerable});return n};var zt=(n,t,e)=>(e=n!=null?Jt(Vt(n)):{},ut(t||!n||!n.__esModule?re(e,"default",{value:n,enumerable:!0}):e,n)),Yt=n=>ut(re({},"__esModule",{value:!0}),n);var f=(n,t,e)=>new Promise((r,o)=>{var s=c=>{try{a(e.next(c))}catch(l){o(l)}},i=c=>{try{a(e.throw(c))}catch(l){o(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(s,i);a((e=e.apply(n,t)).next())});var Nt=Xt(($r,Xe)=>{"use strict";var Bn=Object.prototype.hasOwnProperty,M="~";function ce(){}Object.create&&(ce.prototype=Object.create(null),new ce().__proto__||(M=!1));function Vn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function Ct(n,t,e,r,o){if(typeof e!="function")throw new TypeError("The listener must be a function");var s=new Vn(e,r||n,o),i=M?M+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],s]:n._events[i].push(s):(n._events[i]=s,n._eventsCount++),n}function ve(n,t){--n._eventsCount===0?n._events=new ce:delete n._events[t]}function w(){this._events=new ce,this._eventsCount=0}w.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)Bn.call(e,r)&&t.push(M?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};w.prototype.listeners=function(t){var e=M?M+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,s=r.length,i=new Array(s);o<s;o++)i[o]=r[o].fn;return i};w.prototype.listenerCount=function(t){var e=M?M+t:t,r=this._events[e];return r?r.fn?1:r.length:0};w.prototype.emit=function(t,e,r,o,s,i){var a=M?M+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,h;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,o),!0;case 5:return c.fn.call(c.context,e,r,o,s),!0;case 6:return c.fn.call(c.context,e,r,o,s,i),!0}for(h=1,d=new Array(l-1);h<l;h++)d[h-1]=arguments[h];c.fn.apply(c.context,d)}else{var N=c.length,I;for(h=0;h<N;h++)switch(c[h].once&&this.removeListener(t,c[h].fn,void 0,!0),l){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,e);break;case 3:c[h].fn.call(c[h].context,e,r);break;case 4:c[h].fn.call(c[h].context,e,r,o);break;default:if(!d)for(I=1,d=new Array(l-1);I<l;I++)d[I-1]=arguments[I];c[h].fn.apply(c[h].context,d)}}return!0};w.prototype.on=function(t,e,r){return Ct(this,t,e,r,!1)};w.prototype.once=function(t,e,r){return Ct(this,t,e,r,!0)};w.prototype.removeListener=function(t,e,r,o){var s=M?M+t:t;if(!this._events[s])return this;if(!e)return ve(this,s),this;var i=this._events[s];if(i.fn)i.fn===e&&(!o||i.once)&&(!r||i.context===r)&&ve(this,s);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||o&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[s]=c.length===1?c[0]:c:ve(this,s)}return this};w.prototype.removeAllListeners=function(t){var e;return t?(e=M?M+t:t,this._events[e]&&ve(this,e)):(this._events=new ce,this._eventsCount=0),this};w.prototype.off=w.prototype.removeListener;w.prototype.addListener=w.prototype.on;w.prefixed=M;w.EventEmitter=w;typeof Xe<"u"&&(Xe.exports=w)});var Er={};dt(Er,{Extension:()=>_,MagicExtensionError:()=>K,MagicExtensionWarning:()=>Y,MagicRPCError:()=>L,MagicSDKError:()=>$,MagicSDKWarning:()=>D,SDKBase:()=>pe,STORE_KEY_PRIVATE_KEY:()=>Me,STORE_KEY_PUBLIC_JWK:()=>de,TypedEmitter:()=>Te,ViewController:()=>_e,clearKeys:()=>er,createDeprecationWarning:()=>U,createDuplicateIframeWarning:()=>Jn,createExtensionNotInitializedError:()=>Ke,createIncompatibleExtensionsError:()=>je,createInvalidArgumentError:()=>Be,createJwt:()=>et,createMalformedResponseError:()=>Ge,createMissingApiKeyError:()=>Fe,createModalNotReadyError:()=>Je,createPromiEvent:()=>O,createPromise:()=>be,createReactNativeEndpointConfigurationWarning:()=>He,createSDK:()=>wt,createSynchronousWeb3MethodWarning:()=>Ve,createTypedEmitter:()=>le,createURL:()=>xe,decodeJSON:()=>De,encodeJSON:()=>ae,getPayloadId:()=>Re,isEmpty:()=>z,isJsonRpcErrorCode:()=>We,isJsonRpcRequestPayload:()=>Wn,isJsonRpcResponsePayload:()=>Ue,isMagicPayloadMethod:()=>Fn,isMajorVersionAtLeast:()=>Ye,isPromiEvent:()=>ze,isWebCryptoSupported:()=>ee,storage:()=>Z,uuid:()=>Ze});module.exports=Yt(Er);function Qt(n){let t={exports:{}};return n(t,t.exports),t.exports}var Zt=Number.MAX_SAFE_INTEGER||9007199254740991;var qe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:Zt,MAX_SAFE_COMPONENT_LENGTH:16},en=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},E=en,ie=Qt(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=qe,r=(t=n.exports={}).re=[],o=t.src=[],s=t.t={},i=0,a=(c,l,d)=>{let h=i++;E(h,l),s[c]=h,o[h]=l,r[h]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${o[s.NUMERICIDENTIFIER]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${o[s.NUMERICIDENTIFIERLOOSE]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${o[s.PRERELEASEIDENTIFIER]}(?:\\.${o[s.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${o[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${o[s.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${o[s.BUILDIDENTIFIER]}(?:\\.${o[s.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${o[s.MAINVERSION]}${o[s.PRERELEASE]}?${o[s.BUILD]}?`),a("FULL",`^${o[s.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${o[s.MAINVERSIONLOOSE]}${o[s.PRERELEASELOOSE]}?${o[s.BUILD]}?`),a("LOOSE",`^${o[s.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${o[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${o[s.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:${o[s.PRERELEASE]})?${o[s.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:${o[s.PRERELEASELOOSE]})?${o[s.BUILD]}?)?)?`),a("XRANGE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",o[s.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${o[s.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${o[s.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${o[s.LONECARET]}${o[s.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${o[s.LONECARET]}${o[s.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${o[s.GTLT]}\\s*(${o[s.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]}|${o[s.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${o[s.XRANGEPLAIN]})\\s+-\\s+(${o[s.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${o[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${o[s.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),pt=/^[0-9]+$/,Tt=(n,t)=>{let e=pt.test(n),r=pt.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},tn=(n,t)=>Tt(t,n),nn={compareIdentifiers:Tt,rcompareIdentifiers:tn},{MAX_LENGTH:ht,MAX_SAFE_INTEGER:me}=qe,{re:mt,t:ft}=ie,{compareIdentifiers:se}=nn,g=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof g){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>ht)throw new TypeError(`version is longer than ${ht} characters`);E("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?mt[ft.LOOSE]:mt[ft.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>me||this.major<0)throw new TypeError("Invalid major version");if(this.minor>me||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>me||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let s=+o;if(s>=0&&s<me)return s}return o}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(E("SemVer.compare",this.version,this.options,t),!(t instanceof g)){if(typeof t=="string"&&t===this.version)return 0;t=new g(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof g||(t=new g(t,this.options)),se(this.major,t.major)||se(this.minor,t.minor)||se(this.patch,t.patch)}comparePre(t){if(t instanceof g||(t=new g(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],o=t.prerelease[e];if(E("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return se(r,o)}while(++e)}compareBuild(t){t instanceof g||(t=new g(t,this.options));let e=0;do{let r=this.build[e],o=t.build[e];if(E("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return se(r,o)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},rn=(n,t,e)=>new g(n,e).compare(new g(t,e)),X=rn,sn=(n,t,e)=>X(n,t,e)===0,on=sn,an=(n,t,e)=>X(n,t,e)!==0,cn=an,ln=(n,t,e)=>X(n,t,e)>0,dn=ln,un=(n,t,e)=>X(n,t,e)>=0,pn=un,hn=(n,t,e)=>X(n,t,e)<0,mn=hn,fn=(n,t,e)=>X(n,t,e)<=0,En=fn,yn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return on(n,e,r);case"!=":return cn(n,e,r);case">":return dn(n,e,r);case">=":return pn(n,e,r);case"<":return mn(n,e,r);case"<=":return En(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},ke=yn,oe=Symbol("SemVer ANY"),W=class{static get ANY(){return oe}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof W){if(t.loose===!!e.loose)return t;t=t.value}E("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===oe?this.value="":this.value=this.operator+this.semver.version,E("comp",this)}parse(t){let e=this.options.loose?Et[yt.COMPARATORLOOSE]:Et[yt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new g(r[2],this.options.loose):this.semver=oe}toString(){return this.value}test(t){if(E("Comparator.test",t,this.options.loose),this.semver===oe||t===oe)return!0;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}return ke(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof W))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new k(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new k(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),o=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),s=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=ke(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=ke(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||o||s&&i||a||c}},{re:Et,t:yt}=ie,k=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof k)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new k(t.raw,e);if(t instanceof W)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?b[T.HYPHENRANGELOOSE]:b[T.HYPHENRANGE];t=t.replace(r,An(this.options.includePrerelease)),E("hyphen replace",t),t=t.replace(b[T.COMPARATORTRIM],gn),E("comparator trim",t,b[T.COMPARATORTRIM]),t=(t=(t=t.replace(b[T.TILDETRIM],Rn)).replace(b[T.CARETTRIM],vn)).split(/\s+/).join(" ");let o=e?b[T.COMPARATORLOOSE]:b[T.COMPARATOR];return t.split(" ").map(s=>Tn(s,this.options)).join(" ").split(/\s+/).map(s=>Nn(s,this.options)).filter(this.options.loose?s=>!!s.match(o):()=>!0).map(s=>new W(s,this.options))}intersects(t,e){if(!(t instanceof k))throw new TypeError("a Range is required");return this.set.some(r=>gt(r,e)&&t.set.some(o=>gt(o,e)&&r.every(s=>o.every(i=>s.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(Sn(this.set[e],t,this.options))return!0;return!1}},{re:b,t:T,comparatorTrimReplace:gn,tildeTrimReplace:Rn,caretTrimReplace:vn}=ie,gt=(n,t)=>{let e=!0,r=n.slice(),o=r.pop();for(;e&&r.length;)e=r.every(s=>o.intersects(s,t)),o=r.pop();return e},Tn=(n,t)=>(E("comp",n,t),n=wn(n,t),E("caret",n),n=In(n,t),E("tildes",n),n=Mn(n,t),E("xrange",n),n=Cn(n,t),E("stars",n),n),P=n=>!n||n.toLowerCase()==="x"||n==="*",In=(n,t)=>n.trim().split(/\s+/).map(e=>bn(e,t)).join(" "),bn=(n,t)=>{let e=t.loose?b[T.TILDELOOSE]:b[T.TILDE];return n.replace(e,(r,o,s,i,a)=>{let c;return E("tilde",n,r,o,s,i,a),P(o)?c="":P(s)?c=`>=${o}.0.0 <${+o+1}.0.0-0`:P(i)?c=`>=${o}.${s}.0 <${o}.${+s+1}.0-0`:a?(E("replaceTilde pr",a),c=`>=${o}.${s}.${i}-${a} <${o}.${+s+1}.0-0`):c=`>=${o}.${s}.${i} <${o}.${+s+1}.0-0`,E("tilde return",c),c})},wn=(n,t)=>n.trim().split(/\s+/).map(e=>Pn(e,t)).join(" "),Pn=(n,t)=>{E("caret",n,t);let e=t.loose?b[T.CARETLOOSE]:b[T.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(o,s,i,a,c)=>{let l;return E("caret",n,o,s,i,a,c),P(s)?l="":P(i)?l=`>=${s}.0.0${r} <${+s+1}.0.0-0`:P(a)?l=s==="0"?`>=${s}.${i}.0${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.0${r} <${+s+1}.0.0-0`:c?(E("replaceCaret pr",c),l=s==="0"?i==="0"?`>=${s}.${i}.${a}-${c} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}-${c} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a}-${c} <${+s+1}.0.0-0`):(E("no pr"),l=s==="0"?i==="0"?`>=${s}.${i}.${a}${r} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a} <${+s+1}.0.0-0`),E("caret return",l),l})},Mn=(n,t)=>(E("replaceXRanges",n,t),n.split(/\s+/).map(e=>xn(e,t)).join(" ")),xn=(n,t)=>{n=n.trim();let e=t.loose?b[T.XRANGELOOSE]:b[T.XRANGE];return n.replace(e,(r,o,s,i,a,c)=>{E("xRange",n,r,o,s,i,a,c);let l=P(s),d=l||P(i),h=d||P(a),N=h;return o==="="&&N&&(o=""),c=t.includePrerelease?"-0":"",l?r=o===">"||o==="<"?"<0.0.0-0":"*":o&&N?(d&&(i=0),a=0,o===">"?(o=">=",d?(s=+s+1,i=0,a=0):(i=+i+1,a=0)):o==="<="&&(o="<",d?s=+s+1:i=+i+1),o==="<"&&(c="-0"),r=`${o+s}.${i}.${a}${c}`):d?r=`>=${s}.0.0${c} <${+s+1}.0.0-0`:h&&(r=`>=${s}.${i}.0${c} <${s}.${+i+1}.0-0`),E("xRange return",r),r})},Cn=(n,t)=>(E("replaceStars",n,t),n.trim().replace(b[T.STAR],"")),Nn=(n,t)=>(E("replaceGTE0",n,t),n.trim().replace(b[t.includePrerelease?T.GTE0PRE:T.GTE0],"")),An=n=>(t,e,r,o,s,i,a,c,l,d,h,N,I)=>`${e=P(r)?"":P(o)?`>=${r}.0.0${n?"-0":""}`:P(s)?`>=${r}.${o}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=P(l)?"":P(d)?`<${+l+1}.0.0-0`:P(h)?`<${l}.${+d+1}.0-0`:N?`<=${l}.${d}.${h}-${N}`:n?`<${l}.${d}.${+h+1}-0`:`<=${c}`}`.trim(),Sn=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(E(n[r].semver),n[r].semver!==W.ANY&&n[r].semver.prerelease.length>0){let o=n[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0},It=(n,t,e)=>{try{t=new k(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:$n}=qe,{re:Rt,t:vt}=ie,Ln=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof g)return n;if(typeof n!="string"||n.length>$n||!(t.loose?Rt[vt.LOOSE]:Rt[vt.FULL]).test(n))return null;try{return new g(n,t)}catch(e){return null}},On=Ln,{re:fe,t:Ee}=ie,bt=(n,t)=>{if(n instanceof g)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=fe[Ee.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),fe[Ee.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;fe[Ee.COERCERTL].lastIndex=-1}else e=n.match(fe[Ee.COERCE]);return e===null?null:On(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function _n(n){return String.fromCharCode(parseInt(n.slice(1),16))}function kn(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function qn(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,_n))}function Dn(n){return decodeURIComponent(Array.from(atob(n),kn).join(""))}function ae(n){return qn(JSON.stringify(n))}function De(n){return JSON.parse(Dn(n))}var A=require("@magic-sdk/types");var ye=require("@magic-sdk/types");function q(n){return typeof n=="undefined"}function Un(n){return n===null}function ge(n){return Un(n)||q(n)}function Wn(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&!q(n.method)&&!q(n.params)}function Ue(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&(!q(n.result)||!q(n.error))}function Fn(n){return ge(n)?!1:typeof n=="string"&&Object.values(ye.MagicPayloadMethod).includes(n)}function We(n){return ge(n)?!1:typeof n=="number"&&Object.values(ye.RPCErrorCode).includes(n)}function z(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var m={};function wt(n,t){return Object.assign(m,t),n}var Pt={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var $=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,$.prototype)}},L=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=We(r)?r:A.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,L.prototype)}},D=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},K=class extends Error{constructor(e,r,o,s){super(`Magic Extension Error (${e.name}): [${r}] ${o}`);this.code=r;this.rawMessage=o;this.data=s;this.__proto__=Error;Object.setPrototypeOf(this,K.prototype)}},Y=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function Fe(){return new $(A.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Je(){return new $(A.SDKErrorCode.ModalNotReady,"Modal is not ready.")}function Ge(){return new $(A.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function Ke(n){return new $(A.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function je(n){let t=`Some extensions are incompatible with \`${m.sdkName}@${m.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[m.sdkName];typeof r=="string"?t+=`
- Extension \`${e.name}\` supports version(s) \`${r}\``:r||(t+=`
- Extension \`${e.name}\` does not support ${m.platform} environments.`)}),new S(A.SDKErrorCode.IncompatibleExtensions,t)}function Be(n){let t=e=>{let r=e+1,s=r%10,o=r%100;return s===1&&o!==11?`${r}st`:s===2&&o!==12?`${r}nd`:s===3&&o!==13?`${r}rd`:`${r}th`};return new S(A.SDKErrorCode.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
- Extension \`${e.name}\` does not support ${m.platform} environments.`)}),new $(A.SDKErrorCode.IncompatibleExtensions,t)}function Be(n){let t=e=>{let r=e+1,o=r%10,s=r%100;return o===1&&s!==11?`${r}st`:o===2&&s!==12?`${r}nd`:o===3&&s!==13?`${r}rd`:`${r}th`};return new $(A.SDKErrorCode.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
Expected: \`${n.expected}\`
Received: \`${n.received}\``)}function Jn(){return new D(A.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ve(){return new D(A.SDKWarningCode.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function He(){return new D(A.SDKWarningCode.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${m.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function U(n){let{method:t,removalVersions:e,useInstead:r}=n,s=e[m.sdkName],o=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${m.sdkName}\` in version \`${s}\`.${o}`;return new D(A.SDKWarningCode.DeprecationNotice,i)}var h=require("@magic-sdk/types");var Q=require("@magic-sdk/types");function*Gn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Kn=Gn();function Re(){return Kn.next().value}var Mt=Symbol("Payload pre-processed by Magic SDK");function xt(n){return Object.defineProperty(n,Mt,{value:!0,enumerable:!1}),n}function jn(n){return!!n[Mt]}function j(n){var t,e,r;return jn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Re(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],xt(n)),n}function u(n,t=[]){return xt({params:t,method:n,jsonrpc:"2.0",id:Re()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):Ue(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var Ie=require("@magic-sdk/types");var At=zt(Ct()),Te=class extends At.default{};function le(){let n=new Te;return{emitter:n,createChainingEmitterMethod:(r,s)=>(...o)=>(n[r].apply(n,o),s),createBoundEmitterMethod:r=>(...s)=>n[r].apply(n,s)}}var $t=Symbol("isPromiEvent");function ze(n){return!!n[$t]}function O(n){let t=be(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=le(),s=Symbol("Promise.then"),o=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,p)=>(...C)=>{let I=p[d].apply(p,C);return c(I)},c=d=>Object.assign(d,{[$t]:!0,[s]:d[s]||d.then,[o]:d[o]||d.catch,[i]:d[i]||d.finally,then:a(s,d),catch:a(o,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Ie.UserEventsOnReceived.ClosedByUser,()=>{l.emit(Ie.UserEventsEmit.ClosedByUser)}),l}function be(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var x=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(Q.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,j(t)),r=O((o,i)=>{e.then(a=>{if(s(),a.hasError)i(new L(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw Ge()}).catch(a=>{s(),i(a)})}),s=this.overlay.on(Q.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,o=>{var a;let{response:i}=o.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return s=>{let o=u(Q.MagicPayloadMethod.IntermediaryEvent,[{payloadId:e,eventType:t,args:s}]);this.request(o)}}};function Ye(n,t){let[e]=n.split(".").map(Number);return e>=t}var B={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},we=class extends x{loginWithMagicLink(t){let e=m.sdkName==="@magic-sdk/react-native"||m.sdkName==="@magic-sdk/react-native-bare"||m.sdkName==="@magic-sdk/react-native-expo";if(e&&Ye(m.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&U({method:"auth.loginWithMagicLink()",removalVersions:B,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:s=!0,redirectURI:o,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithMagicLinkTestMode:h.MagicPayloadMethod.LoginWithMagicLink,[{email:r,showUI:s,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,lifespan:r}=t,s=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithSmsTestMode:h.MagicPayloadMethod.LoginWithSms,[{phoneNumber:e,showUI:!0,lifespan:r}]);return this.request(s)}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}=t,a=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithEmailOTPTestMode:h.MagicPayloadMethod.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}]),c=this.request(a);return!s&&c&&c.on(h.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(h.DeviceVerificationEventEmit.Retry,a.id)()}),!r&&c&&(c.on(h.LoginWithEmailOTPEventEmit.VerifyEmailOtp,l=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(l)}),c.on(h.LoginWithEmailOTPEventEmit.VerifyMFACode,l=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(l)}),c.on(h.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},s=e!=null?e:"";if(!e&&m.platform==="web"){s=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let o=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithCredentialTestMode:h.MagicPayloadMethod.LoginWithCredential,[s,r]);return this.request(o)}setAuthorizationToken(t){let e=u(h.MagicPayloadMethod.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,s=u(this.sdk.testMode?h.MagicPayloadMethod.UpdateEmailTestMode:h.MagicPayloadMethod.UpdateEmail,[{email:e,showUI:r}]),o=this.request(s);return r||(o.on(h.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.Retry,s.id)()}),o.on(h.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.Cancel,s.id)()}),o.on(h.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.VerifyEmailOtp,s.id)(i)}),o.on(h.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.VerifyMFACode,s.id)(i)}),o.on(h.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.RetryWithNewEmail,s.id)(i)}),o.on(h.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.Cancel,s.id)()}),o.on(h.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.VerifyEmailOtp,s.id)(i)})),o}};var v=require("@magic-sdk/types");var Z={};dt(Z,{clear:()=>Hn,getItem:()=>R,iterate:()=>Qe,key:()=>zn,keys:()=>Yn,length:()=>Xn,removeItem:()=>$,setItem:()=>N});var Pe;function J(n){return(...t)=>f(this,null,function*(){return Pe||(Pe=yield m.configureStorage()),yield Pe.ready(),Pe[n](...t)})}var R=J("getItem"),N=J("setItem"),$=J("removeItem"),Hn=J("clear"),Xn=J("length"),zn=J("key"),Yn=J("keys"),Qe=J("iterate");function Ze(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var Me="STORE_KEY_PRIVATE_KEY",de="STORE_KEY_PUBLIC_JWK",Lt="ECDSA",Qn="P-256",Zn={name:Lt,namedCurve:Qn};function ee(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function er(){$(de),$(Me)}function et(){return f(this,null,function*(){let n=yield tr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield R(Me);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:Ze()},s={typ:"dpop+jwt",alg:"ES256",jwk:n},o={protected:St(JSON.stringify(s)),claims:St(JSON.stringify(r))},i=rr(`${o.protected}.${o.claims}`),a={name:Lt,hash:{name:"SHA-256"}},c=or(new Uint8Array(yield t.sign(a,e,i)));return`${o.protected}.${o.claims}.${c}`})}function tr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}return(yield R(de))||(yield nr()),R(de)})}function nr(){return f(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(Zn,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield N(Me,t.privateKey),yield N(de,e)})}function St(n){return Ot(sr(n))}function rr(n){return new TextEncoder().encode(n)}function Ot(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function sr(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function or(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),Ot(t)}var tt="ds",nt="ek",rt="iv",st="AES-GCM",ir=256;function te(){return f(this,null,function*(){let n=[];yield Qe((t,e,r)=>{e.startsWith(`${tt}_`)&&n.push(e)});for(let t of n)yield $(t)})}function _t(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let s=0;s<r;s++)t+=String.fromCharCode(e[s]);return window.btoa(t)}function kt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let s=0;s<e;s++)r[s]=t.charCodeAt(s);return r.buffer}function ar(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield R(rt);return t||n.getRandomValues(new Uint8Array(12))})}function cr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield R(nt);return t||(yield n.generateKey({name:st,length:ir},!1,["encrypt","decrypt"]))})}function qt(n,t){return f(this,null,function*(){let e=yield ar(),r=yield cr();if(!e||!r||!n)return;let s=kt(n),{subtle:o}=window.crypto,i=yield o.encrypt({name:st,iv:e},r,s),a=_t(i);yield N(`${tt}_${t}`,a),yield N(nt,r),yield N(rt,e)})}function Dt(n){return f(this,null,function*(){let t=yield R(`${tt}_${n}`),e=yield R(rt),r=yield R(nt);if(!e||!t||!r||!ee())return;let{subtle:s}=window.crypto,o=yield s.decrypt({name:st,iv:e},r,kt(t));return _t(o)})}function xe(n,t){return t?new URL(n,t):new URL(n)}var Ne=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GetIdTokenTestMode:v.MagicPayloadMethod.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GenerateIdTokenTestMode:v.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(r)}getInfo(){return f(this,null,function*(){let e=yield R(this.localForageKey),r=u(v.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return O((e,r)=>f(this,null,function*(){try{let s=!1;this.sdk.useStorageCache&&(s=(yield R(this.localForageIsLoggedInKey))==="true",s&&e(!0));let o=u(this.sdk.testMode?v.MagicPayloadMethod.IsLoggedInTestMode:v.MagicPayloadMethod.IsLoggedIn),i=yield this.request(o);this.sdk.useStorageCache&&(i?N(this.localForageIsLoggedInKey,!0):$(this.localForageIsLoggedInKey),s&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(s){r(s)}}))}logout(){return $(this.localForageKey),$(this.localForageIsLoggedInKey),te(),O((e,r)=>f(this,null,function*(){try{let s=u(this.sdk.testMode?v.MagicPayloadMethod.LogoutTestMode:v.MagicPayloadMethod.Logout),o=yield this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(o),e(o)}catch(s){r(s)}}))}requestInfoWithUI(e){let r=u(v.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.UserSettingsTestMode:v.MagicPayloadMethod.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.RecoverAccountTestMode:v.MagicPayloadMethod.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(v.MagicPayloadMethod.RevealPK);return this.request(e)}getMetadata(){U({method:"user.getMetadata()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?v.MagicPayloadMethod.GetMetadataTestMode:v.MagicPayloadMethod.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(v.MagicPayloadMethod.EnableMFA);return this.request(e)}disableMFA(){let e=u(v.MagicPayloadMethod.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};var y=require("@magic-sdk/types");var Ce=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=O((r,s)=>f(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled(y.Wallets.MetaMask))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled(y.Wallets.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.CoinbaseWallet);r(l);return}let o=this.getUserEnv(),i=u(y.MagicPayloadMethod.Login,[o]),a=this.request(i);a.on(y.Events.WalletSelected,l=>this.handleWalletSelected(H(V({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&s(c),r(c)}catch(o){s(o)}}));return e}showUI(e){return this.request(u(y.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(u(y.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(u(y.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(u(y.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(u(y.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(u(y.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(y.MagicPayloadMethod.SendGaslessTransaction,[e,r]))}getInfo(){return f(this,null,function*(){U({method:"wallet.getInfo()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=yield R(this.localForageKey),r=u(y.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){U({method:"wallet.disconnect()",removalVersions:B,useInstead:"user.logout()"}).log(),$(this.localForageKey),te();let e=u(y.MagicPayloadMethod.Disconnect);return this.request(e)}requestUserInfoWithUI(e){U({method:"wallet.requestUserInfoWithUI()",removalVersions:B,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(y.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return f(this,null,function*(){switch(yield R(this.localForageKey)){case y.Wallets.MetaMask:return this.getMetaMaskProvider();case y.Wallets.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case y.Wallets.MetaMask:return this.connectToMetaMask();case y.Wallets.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return f(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield N(this.localForageKey,e.wallet),this.createIntermediaryEvent(y.Events.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(y.Events.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return f(this,null,function*(){let r;e===y.Wallets.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===y.Wallets.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield N(this.localForageKey,e);let s=u(y.MagicPayloadMethod.AutoConnect,[{wallet:e,address:r}]);return this.request(s)})}};var ue=require("@magic-sdk/types");var{createBoundEmitterMethod:Ae,createChainingEmitterMethod:ne}=le(),$e=class extends x{constructor(){super(...arguments);this.isMagic=!0;this.on=ne("on",this);this.once=ne("once",this);this.addListener=ne("addListener",this);this.off=ne("off",this);this.removeListener=ne("removeListener",this);this.removeAllListeners=ne("removeAllListeners",this);this.emit=Ae("emit");this.eventNames=Ae("eventNames");this.listeners=Ae("listeners");this.listenerCount=Ae("listenerCount")}sendAsync(e,r){if(!r)throw Be({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(s=>{let o=j(s);return this.prefixPayloadMethodForTestMode(o),o})).then(s=>{r(null,s.map(o=>H(V({},o.payload),{error:o.hasError?new L(o.payload.error):null})))});else{let s=j(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,s).then(o=>{r(o.hasError?new L(o.payload.error):null,o.payload)})}}send(e,r){if(typeof e=="string"){let o=u(e,Array.isArray(r)?r:[]);return this.request(o)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let s=Ve();return s.log(),new F(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=u(ue.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Ut=["request","overlay","sdk"];function lr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==x.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var Se=class extends x{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:O,isPromiEvent:ze,encodeJSON:ae,decodeJSON:De,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:j,storage:Z};let e=[this,...lr(this)];Ut.forEach(r=>{let s=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),o=s.findIndex(c=>!!c),i=o>0,a=s[o];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw Ke(r)}}))})}init(e){this.__is_initialized__||(Ut.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:s,isPrototypeField:o}=this.__sdk_access_field_descriptors__.get(r);o?delete this[r]:Object.defineProperty(this,r,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:s,useInstead:o}=e,i=o?` Use \`${o}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${s}\`.${i}`;return new Y(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new Y(this,e,r)}createError(e,r,s){return new K(this,e,r,s)}},ot=class extends Se{},_=class extends Se{};_.Internal=ot,_.Anonymous="anonymous extension";var Le=require("@magic-sdk/types");var Oe=class extends x{purchase(t){let e=u(Le.MagicPayloadMethod.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(Le.MagicPayloadMethod.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(Le.MagicPayloadMethod.NFTTransfer,[t]);return this.request(e)}};function Wt(n){return n.compat&&n.compat[m.sdkName]!=null?typeof n.compat[m.sdkName]=="string"?It(bt(m.version),n.compat[m.sdkName]):!!n.compat[m.sdkName]:!0}function dr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function ur(n){var s;let t=(s=n==null?void 0:n.extensions)!=null?s:[],e={},r=[];if(Array.isArray(t)?t.forEach(o=>{Wt(o)?(o.init(this),(o.name||o.name!==_.Anonymous)&&(this[o.name]=o),o instanceof _.Internal&&(z(o.config)||(e[o.name]=o.config))):r.push(o)}):Object.keys(t).forEach(o=>{if(Wt(t[o])){t[o].init(this);let i=t[o];this[o]=i,i instanceof _.Internal&&(z(i.config)||(e[t[o].name]=i.config))}else r.push(t[o])}),r.length)throw je(r);return e}var he=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw Fe();m.platform==="react-native"&&(e==null?void 0:e.endpoint)&&He().log();let{defaultEndpoint:r,version:s}=m;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=xe((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new we(this),this.user=new Ne(this),this.wallet=new Ce(this),this.nft=new Oe(this),this.rpcProvider=new $e(this);let o=ur.call(this,e);this.parameters=ae(H(V({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:xe(this.endpoint).host,sdk:Pt[m.sdkName],version:s,ext:z(o)?void 0:o,locale:(e==null?void 0:e.locale)||"en_US"},m.bundleId?{bundleId:m.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=dr(this.apiKey,e==null?void 0:e.network,z(o)?void 0:o),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!he.__overlays__.has(this.parameters)){let t=new m.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),he.__overlays__.set(this.parameters,t)}return he.__overlays__.get(this.parameters)}preload(){return f(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},pe=he;pe.__overlays__=new Map;var G=require("@magic-sdk/types");function pr(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function hr(n,t){var s;let e=(s=t.data.response)==null?void 0:s.id,r=pr(n,e);if(e&&r){let o=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:o}}return{}}function mr(n,t,e){return f(this,null,function*(){var a;let r=yield R("rt"),s;if(m.platform==="web")try{s=(a=yield R("jwt"))!=null?a:yield et()}catch(c){console.error("webcrypto error",c)}let o={msgType:n,payload:t};s&&(o.jwt=s),s&&r&&(o.rt=r);let i=yield Dt(e);return i&&(o.deviceShare=i),o})}function fr(n){return f(this,null,function*(){!n.data.rt||(yield N("rt",n.data.rt))})}var _e=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return f(this,null,function*(){return be((r,s)=>f(this,null,function*(){if(!this.isConnectedToInternet){let d=Je();s(d)}this.isReadyForRequest||(yield this.waitForReady());let o=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield mr(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>p=>{var it;let{id:C,response:I}=hr(e,p);if(fr(p),((it=I==null?void 0:I.payload.error)==null?void 0:it.message)==="User denied account access.")te();else if(p.data.deviceShare){let{deviceShare:Ft}=p.data;qt(Ft,this.networkHash)}C&&I&&Array.isArray(e)&&i.includes(C)?(o.push(I),o.length===e.length&&(d(),r(o))):C&&I&&!Array.isArray(e)&&C===e.id&&(d(),r(I))},l=this.on(G.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),s=o=>{o.data.msgType===`${t}-${this.parameters}`&&r(o)};return this.messageHandlers.add(s),()=>this.messageHandlers.delete(s)}waitForReady(){return new Promise(t=>{let e=this.on(G.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(G.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new D(G.SDKWarningCode.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};
Received: \`${n.received}\``)}function Jn(){return new D(A.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ve(){return new D(A.SDKWarningCode.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function He(){return new D(A.SDKWarningCode.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${m.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function U(n){let{method:t,removalVersions:e,useInstead:r}=n,o=e[m.sdkName],s=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${m.sdkName}\` in version \`${o}\`.${s}`;return new D(A.SDKWarningCode.DeprecationNotice,i)}var p=require("@magic-sdk/types");var Q=require("@magic-sdk/types");function*Gn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Kn=Gn();function Re(){return Kn.next().value}var Mt=Symbol("Payload pre-processed by Magic SDK");function xt(n){return Object.defineProperty(n,Mt,{value:!0,enumerable:!1}),n}function jn(n){return!!n[Mt]}function j(n){var t,e,r;return jn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Re(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],xt(n)),n}function u(n,t=[]){return xt({params:t,method:n,jsonrpc:"2.0",id:Re()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):Ue(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var Ie=require("@magic-sdk/types");var At=zt(Nt()),Te=class extends At.default{};function le(){let n=new Te;return{emitter:n,createChainingEmitterMethod:(r,o)=>(...s)=>(n[r].apply(n,s),o),createBoundEmitterMethod:r=>(...o)=>n[r].apply(n,o)}}var St=Symbol("isPromiEvent");function ze(n){return!!n[St]}function O(n){let t=be(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=le(),o=Symbol("Promise.then"),s=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,h)=>(...N)=>{let I=h[d].apply(h,N);return c(I)},c=d=>Object.assign(d,{[St]:!0,[o]:d[o]||d.then,[s]:d[s]||d.catch,[i]:d[i]||d.finally,then:a(o,d),catch:a(s,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Ie.UserEventsOnReceived.ClosedByUser,()=>{l.emit(Ie.UserEventsEmit.ClosedByUser)}),l}function be(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var x=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(Q.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,j(t)),r=O((s,i)=>{e.then(a=>{if(o(),a.hasError)i(new L(a.payload.error));else if(a.hasResult)s(a.payload.result);else throw Ge()}).catch(a=>{o(),i(a)})}),o=this.overlay.on(Q.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,s=>{var a;let{response:i}=s.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return o=>{let s=u(Q.MagicPayloadMethod.IntermediaryEvent,[{payloadId:e,eventType:t,args:o}]);this.request(s)}}};function Ye(n,t){let[e]=n.split(".").map(Number);return e>=t}var B={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},we=class extends x{loginWithMagicLink(t){let e=m.sdkName==="@magic-sdk/react-native"||m.sdkName==="@magic-sdk/react-native-bare"||m.sdkName==="@magic-sdk/react-native-expo";if(e&&Ye(m.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&U({method:"auth.loginWithMagicLink()",removalVersions:B,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:o=!0,redirectURI:s,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithMagicLinkTestMode:p.MagicPayloadMethod.LoginWithMagicLink,[{email:r,showUI:o,redirectURI:s,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,showUI:r=!0,lifespan:o}=t,s=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithSmsTestMode:p.MagicPayloadMethod.LoginWithSms,[{phoneNumber:e,showUI:r,lifespan:o}]),i=this.request(s);return!r&&i&&(i.on(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,a=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,s.id)(a)}),i.on(p.LoginWithSmsOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.Cancel,s.id)()})),i}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}=t,a=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithEmailOTPTestMode:p.MagicPayloadMethod.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}]),c=this.request(a);return!o&&c&&c.on(p.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(p.DeviceVerificationEventEmit.Retry,a.id)()}),!r&&c&&(c.on(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,l=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(l)}),c.on(p.LoginWithEmailOTPEventEmit.VerifyMFACode,l=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(l)}),c.on(p.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},o=e!=null?e:"";if(!e&&m.platform==="web"){o=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let s=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithCredentialTestMode:p.MagicPayloadMethod.LoginWithCredential,[o,r]);return this.request(s)}setAuthorizationToken(t){let e=u(p.MagicPayloadMethod.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,o=u(this.sdk.testMode?p.MagicPayloadMethod.UpdateEmailTestMode:p.MagicPayloadMethod.UpdateEmail,[{email:e,showUI:r}]),s=this.request(o);return r||(s.on(p.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Retry,o.id)()}),s.on(p.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Cancel,o.id)()}),s.on(p.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyEmailOtp,o.id)(i)}),s.on(p.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyMFACode,o.id)(i)}),s.on(p.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.RetryWithNewEmail,o.id)(i)}),s.on(p.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.Cancel,o.id)()}),s.on(p.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.VerifyEmailOtp,o.id)(i)})),s}};var v=require("@magic-sdk/types");var Z={};dt(Z,{clear:()=>Hn,getItem:()=>R,iterate:()=>Qe,key:()=>zn,keys:()=>Yn,length:()=>Xn,removeItem:()=>S,setItem:()=>C});var Pe;function J(n){return(...t)=>f(this,null,function*(){return Pe||(Pe=yield m.configureStorage()),yield Pe.ready(),Pe[n](...t)})}var R=J("getItem"),C=J("setItem"),S=J("removeItem"),Hn=J("clear"),Xn=J("length"),zn=J("key"),Yn=J("keys"),Qe=J("iterate");function Ze(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var Me="STORE_KEY_PRIVATE_KEY",de="STORE_KEY_PUBLIC_JWK",Lt="ECDSA",Qn="P-256",Zn={name:Lt,namedCurve:Qn};function ee(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function er(){S(de),S(Me)}function et(){return f(this,null,function*(){let n=yield tr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield R(Me);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:Ze()},o={typ:"dpop+jwt",alg:"ES256",jwk:n},s={protected:$t(JSON.stringify(o)),claims:$t(JSON.stringify(r))},i=rr(`${s.protected}.${s.claims}`),a={name:Lt,hash:{name:"SHA-256"}},c=or(new Uint8Array(yield t.sign(a,e,i)));return`${s.protected}.${s.claims}.${c}`})}function tr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}return(yield R(de))||(yield nr()),R(de)})}function nr(){return f(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(Zn,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield C(Me,t.privateKey),yield C(de,e)})}function $t(n){return Ot(sr(n))}function rr(n){return new TextEncoder().encode(n)}function Ot(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function sr(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function or(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),Ot(t)}var tt="ds",nt="ek",rt="iv",st="AES-GCM",ir=256;function te(){return f(this,null,function*(){let n=[];yield Qe((t,e,r)=>{e.startsWith(`${tt}_`)&&n.push(e)});for(let t of n)yield S(t)})}function _t(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let o=0;o<r;o++)t+=String.fromCharCode(e[o]);return window.btoa(t)}function kt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let o=0;o<e;o++)r[o]=t.charCodeAt(o);return r.buffer}function ar(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield R(rt);return t||n.getRandomValues(new Uint8Array(12))})}function cr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield R(nt);return t||(yield n.generateKey({name:st,length:ir},!1,["encrypt","decrypt"]))})}function qt(n,t){return f(this,null,function*(){let e=yield ar(),r=yield cr();if(!e||!r||!n)return;let o=kt(n),{subtle:s}=window.crypto,i=yield s.encrypt({name:st,iv:e},r,o),a=_t(i);yield C(`${tt}_${t}`,a),yield C(nt,r),yield C(rt,e)})}function Dt(n){return f(this,null,function*(){let t=yield R(`${tt}_${n}`),e=yield R(rt),r=yield R(nt);if(!e||!t||!r||!ee())return;let{subtle:o}=window.crypto,s=yield o.decrypt({name:st,iv:e},r,kt(t));return _t(s)})}function xe(n,t){return t?new URL(n,t):new URL(n)}var Ce=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GetIdTokenTestMode:v.MagicPayloadMethod.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GenerateIdTokenTestMode:v.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(r)}getInfo(){return f(this,null,function*(){let e=yield R(this.localForageKey),r=u(v.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return O((e,r)=>f(this,null,function*(){try{let o=!1;this.sdk.useStorageCache&&(o=(yield R(this.localForageIsLoggedInKey))==="true",o&&e(!0));let s=u(this.sdk.testMode?v.MagicPayloadMethod.IsLoggedInTestMode:v.MagicPayloadMethod.IsLoggedIn),i=yield this.request(s);this.sdk.useStorageCache&&(i?C(this.localForageIsLoggedInKey,!0):S(this.localForageIsLoggedInKey),o&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(o){r(o)}}))}logout(){return S(this.localForageKey),S(this.localForageIsLoggedInKey),te(),O((e,r)=>f(this,null,function*(){try{let o=u(this.sdk.testMode?v.MagicPayloadMethod.LogoutTestMode:v.MagicPayloadMethod.Logout),s=yield this.request(o);this.sdk.useStorageCache&&this.emitUserLoggedOut(s),e(s)}catch(o){r(o)}}))}requestInfoWithUI(e){let r=u(v.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.UserSettingsTestMode:v.MagicPayloadMethod.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.RecoverAccountTestMode:v.MagicPayloadMethod.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(v.MagicPayloadMethod.RevealPK);return this.request(e)}getMetadata(){U({method:"user.getMetadata()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?v.MagicPayloadMethod.GetMetadataTestMode:v.MagicPayloadMethod.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(v.MagicPayloadMethod.EnableMFA);return this.request(e)}disableMFA(){let e=u(v.MagicPayloadMethod.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};var y=require("@magic-sdk/types");var Ne=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=O((r,o)=>f(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled(y.Wallets.MetaMask))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled(y.Wallets.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.CoinbaseWallet);r(l);return}let s=this.getUserEnv(),i=u(y.MagicPayloadMethod.Login,[s]),a=this.request(i);a.on(y.Events.WalletSelected,l=>this.handleWalletSelected(H(V({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&o(c),r(c)}catch(s){o(s)}}));return e}showUI(e){return this.request(u(y.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(u(y.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(u(y.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(u(y.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(u(y.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(u(y.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(y.MagicPayloadMethod.SendGaslessTransaction,[e,r]))}getInfo(){return f(this,null,function*(){U({method:"wallet.getInfo()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=yield R(this.localForageKey),r=u(y.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){U({method:"wallet.disconnect()",removalVersions:B,useInstead:"user.logout()"}).log(),S(this.localForageKey),te();let e=u(y.MagicPayloadMethod.Disconnect);return this.request(e)}requestUserInfoWithUI(e){U({method:"wallet.requestUserInfoWithUI()",removalVersions:B,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(y.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return f(this,null,function*(){switch(yield R(this.localForageKey)){case y.Wallets.MetaMask:return this.getMetaMaskProvider();case y.Wallets.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case y.Wallets.MetaMask:return this.connectToMetaMask();case y.Wallets.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return f(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield C(this.localForageKey,e.wallet),this.createIntermediaryEvent(y.Events.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(y.Events.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return f(this,null,function*(){let r;e===y.Wallets.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===y.Wallets.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield C(this.localForageKey,e);let o=u(y.MagicPayloadMethod.AutoConnect,[{wallet:e,address:r}]);return this.request(o)})}};var ue=require("@magic-sdk/types");var{createBoundEmitterMethod:Ae,createChainingEmitterMethod:ne}=le(),Se=class extends x{constructor(){super(...arguments);this.isMagic=!0;this.on=ne("on",this);this.once=ne("once",this);this.addListener=ne("addListener",this);this.off=ne("off",this);this.removeListener=ne("removeListener",this);this.removeAllListeners=ne("removeAllListeners",this);this.emit=Ae("emit");this.eventNames=Ae("eventNames");this.listeners=Ae("listeners");this.listenerCount=Ae("listenerCount")}sendAsync(e,r){if(!r)throw Be({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(o=>{let s=j(o);return this.prefixPayloadMethodForTestMode(s),s})).then(o=>{r(null,o.map(s=>H(V({},s.payload),{error:s.hasError?new L(s.payload.error):null})))});else{let o=j(e);this.prefixPayloadMethodForTestMode(o),this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,o).then(s=>{r(s.hasError?new L(s.payload.error):null,s.payload)})}}send(e,r){if(typeof e=="string"){let s=u(e,Array.isArray(r)?r:[]);return this.request(s)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let o=Ve();return o.log(),new F(e).applyError({code:-32603,message:o.rawMessage}).payload}enable(){let e=u(ue.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Ut=["request","overlay","sdk"];function lr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==x.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var $e=class extends x{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:O,isPromiEvent:ze,encodeJSON:ae,decodeJSON:De,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:j,storage:Z};let e=[this,...lr(this)];Ut.forEach(r=>{let o=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),s=o.findIndex(c=>!!c),i=s>0,a=o[s];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw Ke(r)}}))})}init(e){this.__is_initialized__||(Ut.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:o,isPrototypeField:s}=this.__sdk_access_field_descriptors__.get(r);s?delete this[r]:Object.defineProperty(this,r,o)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:o,useInstead:s}=e,i=s?` Use \`${s}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${o}\`.${i}`;return new Y(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new Y(this,e,r)}createError(e,r,o){return new K(this,e,r,o)}},ot=class extends $e{},_=class extends $e{};_.Internal=ot,_.Anonymous="anonymous extension";var Le=require("@magic-sdk/types");var Oe=class extends x{purchase(t){let e=u(Le.MagicPayloadMethod.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(Le.MagicPayloadMethod.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(Le.MagicPayloadMethod.NFTTransfer,[t]);return this.request(e)}};function Wt(n){return n.compat&&n.compat[m.sdkName]!=null?typeof n.compat[m.sdkName]=="string"?It(bt(m.version),n.compat[m.sdkName]):!!n.compat[m.sdkName]:!0}function dr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function ur(n){var o;let t=(o=n==null?void 0:n.extensions)!=null?o:[],e={},r=[];if(Array.isArray(t)?t.forEach(s=>{Wt(s)?(s.init(this),(s.name||s.name!==_.Anonymous)&&(this[s.name]=s),s instanceof _.Internal&&(z(s.config)||(e[s.name]=s.config))):r.push(s)}):Object.keys(t).forEach(s=>{if(Wt(t[s])){t[s].init(this);let i=t[s];this[s]=i,i instanceof _.Internal&&(z(i.config)||(e[t[s].name]=i.config))}else r.push(t[s])}),r.length)throw je(r);return e}var he=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw Fe();m.platform==="react-native"&&(e==null?void 0:e.endpoint)&&He().log();let{defaultEndpoint:r,version:o}=m;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=xe((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new we(this),this.user=new Ce(this),this.wallet=new Ne(this),this.nft=new Oe(this),this.rpcProvider=new Se(this);let s=ur.call(this,e);this.parameters=ae(H(V({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:xe(this.endpoint).host,sdk:Pt[m.sdkName],version:o,ext:z(s)?void 0:s,locale:(e==null?void 0:e.locale)||"en_US"},m.bundleId?{bundleId:m.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=dr(this.apiKey,e==null?void 0:e.network,z(s)?void 0:s),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!he.__overlays__.has(this.parameters)){let t=new m.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),he.__overlays__.set(this.parameters,t)}return he.__overlays__.get(this.parameters)}preload(){return f(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},pe=he;pe.__overlays__=new Map;var G=require("@magic-sdk/types");function pr(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function hr(n,t){var o;let e=(o=t.data.response)==null?void 0:o.id,r=pr(n,e);if(e&&r){let s=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:s}}return{}}function mr(n,t,e){return f(this,null,function*(){var a;let r=yield R("rt"),o;if(m.platform==="web")try{o=(a=yield R("jwt"))!=null?a:yield et()}catch(c){console.error("webcrypto error",c)}let s={msgType:n,payload:t};o&&(s.jwt=o),o&&r&&(s.rt=r);let i=yield Dt(e);return i&&(s.deviceShare=i),s})}function fr(n){return f(this,null,function*(){!n.data.rt||(yield C("rt",n.data.rt))})}var _e=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return f(this,null,function*(){return be((r,o)=>f(this,null,function*(){if(!this.isConnectedToInternet){let d=Je();o(d)}this.isReadyForRequest||(yield this.waitForReady());let s=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield mr(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>h=>{var it;let{id:N,response:I}=hr(e,h);if(fr(h),((it=I==null?void 0:I.payload.error)==null?void 0:it.message)==="User denied account access.")te();else if(h.data.deviceShare){let{deviceShare:Ft}=h.data;qt(Ft,this.networkHash)}N&&I&&Array.isArray(e)&&i.includes(N)?(s.push(I),s.length===e.length&&(d(),r(s))):N&&I&&!Array.isArray(e)&&N===e.id&&(d(),r(I))},l=this.on(G.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),o=s=>{s.data.msgType===`${t}-${this.parameters}`&&r(s)};return this.messageHandlers.add(o),()=>this.messageHandlers.delete(o)}waitForReady(){return new Promise(t=>{let e=this.on(G.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(G.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new D(G.SDKWarningCode.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};
//# sourceMappingURL=index.js.map

@@ -1,6 +0,6 @@

"use strict";var Jt=Object.create;var re=Object.defineProperty,Gt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,jt=Object.getOwnPropertyDescriptors,Bt=Object.getOwnPropertyNames,at=Object.getOwnPropertySymbols,Vt=Object.getPrototypeOf,lt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable;var ct=(n,t,e)=>t in n?re(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,V=(n,t)=>{for(var e in t||(t={}))lt.call(t,e)&&ct(n,e,t[e]);if(at)for(var e of at(t))Ht.call(t,e)&&ct(n,e,t[e]);return n},H=(n,t)=>Gt(n,jt(t));var Xt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),dt=(n,t)=>{for(var e in t)re(n,e,{get:t[e],enumerable:!0})},ut=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Bt(t))!lt.call(n,s)&&s!==e&&re(n,s,{get:()=>t[s],enumerable:!(r=Kt(t,s))||r.enumerable});return n};var zt=(n,t,e)=>(e=n!=null?Jt(Vt(n)):{},ut(t||!n||!n.__esModule?re(e,"default",{value:n,enumerable:!0}):e,n)),Yt=n=>ut(re({},"__esModule",{value:!0}),n);var f=(n,t,e)=>new Promise((r,s)=>{var o=c=>{try{a(e.next(c))}catch(l){s(l)}},i=c=>{try{a(e.throw(c))}catch(l){s(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(o,i);a((e=e.apply(n,t)).next())});var Ct=Xt((Sr,Xe)=>{"use strict";var Bn=Object.prototype.hasOwnProperty,M="~";function ce(){}Object.create&&(ce.prototype=Object.create(null),new ce().__proto__||(M=!1));function Vn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function Nt(n,t,e,r,s){if(typeof e!="function")throw new TypeError("The listener must be a function");var o=new Vn(e,r||n,s),i=M?M+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],o]:n._events[i].push(o):(n._events[i]=o,n._eventsCount++),n}function ve(n,t){--n._eventsCount===0?n._events=new ce:delete n._events[t]}function w(){this._events=new ce,this._eventsCount=0}w.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)Bn.call(e,r)&&t.push(M?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};w.prototype.listeners=function(t){var e=M?M+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var s=0,o=r.length,i=new Array(o);s<o;s++)i[s]=r[s].fn;return i};w.prototype.listenerCount=function(t){var e=M?M+t:t,r=this._events[e];return r?r.fn?1:r.length:0};w.prototype.emit=function(t,e,r,s,o,i){var a=M?M+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,p;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,s),!0;case 5:return c.fn.call(c.context,e,r,s,o),!0;case 6:return c.fn.call(c.context,e,r,s,o,i),!0}for(p=1,d=new Array(l-1);p<l;p++)d[p-1]=arguments[p];c.fn.apply(c.context,d)}else{var C=c.length,I;for(p=0;p<C;p++)switch(c[p].once&&this.removeListener(t,c[p].fn,void 0,!0),l){case 1:c[p].fn.call(c[p].context);break;case 2:c[p].fn.call(c[p].context,e);break;case 3:c[p].fn.call(c[p].context,e,r);break;case 4:c[p].fn.call(c[p].context,e,r,s);break;default:if(!d)for(I=1,d=new Array(l-1);I<l;I++)d[I-1]=arguments[I];c[p].fn.apply(c[p].context,d)}}return!0};w.prototype.on=function(t,e,r){return Nt(this,t,e,r,!1)};w.prototype.once=function(t,e,r){return Nt(this,t,e,r,!0)};w.prototype.removeListener=function(t,e,r,s){var o=M?M+t:t;if(!this._events[o])return this;if(!e)return ve(this,o),this;var i=this._events[o];if(i.fn)i.fn===e&&(!s||i.once)&&(!r||i.context===r)&&ve(this,o);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||s&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:ve(this,o)}return this};w.prototype.removeAllListeners=function(t){var e;return t?(e=M?M+t:t,this._events[e]&&ve(this,e)):(this._events=new ce,this._eventsCount=0),this};w.prototype.off=w.prototype.removeListener;w.prototype.addListener=w.prototype.on;w.prefixed=M;w.EventEmitter=w;typeof Xe<"u"&&(Xe.exports=w)});var Er={};dt(Er,{Extension:()=>_,MagicExtensionError:()=>K,MagicExtensionWarning:()=>Y,MagicRPCError:()=>L,MagicSDKError:()=>S,MagicSDKWarning:()=>D,SDKBase:()=>pe,STORE_KEY_PRIVATE_KEY:()=>Me,STORE_KEY_PUBLIC_JWK:()=>de,TypedEmitter:()=>Te,ViewController:()=>_e,clearKeys:()=>er,createDeprecationWarning:()=>U,createDuplicateIframeWarning:()=>Jn,createExtensionNotInitializedError:()=>Ke,createIncompatibleExtensionsError:()=>je,createInvalidArgumentError:()=>Be,createJwt:()=>et,createMalformedResponseError:()=>Ge,createMissingApiKeyError:()=>Fe,createModalNotReadyError:()=>Je,createPromiEvent:()=>O,createPromise:()=>be,createReactNativeEndpointConfigurationWarning:()=>He,createSDK:()=>wt,createSynchronousWeb3MethodWarning:()=>Ve,createTypedEmitter:()=>le,createURL:()=>xe,decodeJSON:()=>De,encodeJSON:()=>ae,getPayloadId:()=>Re,isEmpty:()=>z,isJsonRpcErrorCode:()=>We,isJsonRpcRequestPayload:()=>Wn,isJsonRpcResponsePayload:()=>Ue,isMagicPayloadMethod:()=>Fn,isMajorVersionAtLeast:()=>Ye,isPromiEvent:()=>ze,isWebCryptoSupported:()=>ee,storage:()=>Z,uuid:()=>Ze});module.exports=Yt(Er);function Qt(n){let t={exports:{}};return n(t,t.exports),t.exports}var Zt=Number.MAX_SAFE_INTEGER||9007199254740991;var qe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:Zt,MAX_SAFE_COMPONENT_LENGTH:16},en=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},E=en,ie=Qt(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=qe,r=(t=n.exports={}).re=[],s=t.src=[],o=t.t={},i=0,a=(c,l,d)=>{let p=i++;E(p,l),o[c]=p,s[p]=l,r[p]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${s[o.NUMERICIDENTIFIER]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${s[o.NUMERICIDENTIFIERLOOSE]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${s[o.PRERELEASEIDENTIFIER]}(?:\\.${s[o.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${s[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${s[o.BUILDIDENTIFIER]}(?:\\.${s[o.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${s[o.MAINVERSION]}${s[o.PRERELEASE]}?${s[o.BUILD]}?`),a("FULL",`^${s[o.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${s[o.MAINVERSIONLOOSE]}${s[o.PRERELEASELOOSE]}?${s[o.BUILD]}?`),a("LOOSE",`^${s[o.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${s[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${s[o.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:${s[o.PRERELEASE]})?${s[o.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:${s[o.PRERELEASELOOSE]})?${s[o.BUILD]}?)?)?`),a("XRANGE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",s[o.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${s[o.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${s[o.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${s[o.LONECARET]}${s[o.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${s[o.LONECARET]}${s[o.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${s[o.GTLT]}\\s*(${s[o.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]}|${s[o.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${s[o.XRANGEPLAIN]})\\s+-\\s+(${s[o.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${s[o.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[o.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),pt=/^[0-9]+$/,Tt=(n,t)=>{let e=pt.test(n),r=pt.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},tn=(n,t)=>Tt(t,n),nn={compareIdentifiers:Tt,rcompareIdentifiers:tn},{MAX_LENGTH:ht,MAX_SAFE_INTEGER:me}=qe,{re:mt,t:ft}=ie,{compareIdentifiers:se}=nn,g=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof g){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>ht)throw new TypeError(`version is longer than ${ht} characters`);E("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?mt[ft.LOOSE]:mt[ft.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>me||this.major<0)throw new TypeError("Invalid major version");if(this.minor>me||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>me||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&o<me)return o}return s}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(E("SemVer.compare",this.version,this.options,t),!(t instanceof g)){if(typeof t=="string"&&t===this.version)return 0;t=new g(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof g||(t=new g(t,this.options)),se(this.major,t.major)||se(this.minor,t.minor)||se(this.patch,t.patch)}comparePre(t){if(t instanceof g||(t=new g(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],s=t.prerelease[e];if(E("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return se(r,s)}while(++e)}compareBuild(t){t instanceof g||(t=new g(t,this.options));let e=0;do{let r=this.build[e],s=t.build[e];if(E("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return se(r,s)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},rn=(n,t,e)=>new g(n,e).compare(new g(t,e)),X=rn,sn=(n,t,e)=>X(n,t,e)===0,on=sn,an=(n,t,e)=>X(n,t,e)!==0,cn=an,ln=(n,t,e)=>X(n,t,e)>0,dn=ln,un=(n,t,e)=>X(n,t,e)>=0,pn=un,hn=(n,t,e)=>X(n,t,e)<0,mn=hn,fn=(n,t,e)=>X(n,t,e)<=0,En=fn,yn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return on(n,e,r);case"!=":return cn(n,e,r);case">":return dn(n,e,r);case">=":return pn(n,e,r);case"<":return mn(n,e,r);case"<=":return En(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},ke=yn,oe=Symbol("SemVer ANY"),W=class{static get ANY(){return oe}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof W){if(t.loose===!!e.loose)return t;t=t.value}E("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===oe?this.value="":this.value=this.operator+this.semver.version,E("comp",this)}parse(t){let e=this.options.loose?Et[yt.COMPARATORLOOSE]:Et[yt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new g(r[2],this.options.loose):this.semver=oe}toString(){return this.value}test(t){if(E("Comparator.test",t,this.options.loose),this.semver===oe||t===oe)return!0;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}return ke(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof W))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new k(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new k(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),s=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),o=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=ke(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=ke(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||s||o&&i||a||c}},{re:Et,t:yt}=ie,k=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof k)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new k(t.raw,e);if(t instanceof W)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?b[T.HYPHENRANGELOOSE]:b[T.HYPHENRANGE];t=t.replace(r,An(this.options.includePrerelease)),E("hyphen replace",t),t=t.replace(b[T.COMPARATORTRIM],gn),E("comparator trim",t,b[T.COMPARATORTRIM]),t=(t=(t=t.replace(b[T.TILDETRIM],Rn)).replace(b[T.CARETTRIM],vn)).split(/\s+/).join(" ");let s=e?b[T.COMPARATORLOOSE]:b[T.COMPARATOR];return t.split(" ").map(o=>Tn(o,this.options)).join(" ").split(/\s+/).map(o=>Cn(o,this.options)).filter(this.options.loose?o=>!!o.match(s):()=>!0).map(o=>new W(o,this.options))}intersects(t,e){if(!(t instanceof k))throw new TypeError("a Range is required");return this.set.some(r=>gt(r,e)&&t.set.some(s=>gt(s,e)&&r.every(o=>s.every(i=>o.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if($n(this.set[e],t,this.options))return!0;return!1}},{re:b,t:T,comparatorTrimReplace:gn,tildeTrimReplace:Rn,caretTrimReplace:vn}=ie,gt=(n,t)=>{let e=!0,r=n.slice(),s=r.pop();for(;e&&r.length;)e=r.every(o=>s.intersects(o,t)),s=r.pop();return e},Tn=(n,t)=>(E("comp",n,t),n=wn(n,t),E("caret",n),n=In(n,t),E("tildes",n),n=Mn(n,t),E("xrange",n),n=Nn(n,t),E("stars",n),n),P=n=>!n||n.toLowerCase()==="x"||n==="*",In=(n,t)=>n.trim().split(/\s+/).map(e=>bn(e,t)).join(" "),bn=(n,t)=>{let e=t.loose?b[T.TILDELOOSE]:b[T.TILDE];return n.replace(e,(r,s,o,i,a)=>{let c;return E("tilde",n,r,s,o,i,a),P(s)?c="":P(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:P(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(E("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,E("tilde return",c),c})},wn=(n,t)=>n.trim().split(/\s+/).map(e=>Pn(e,t)).join(" "),Pn=(n,t)=>{E("caret",n,t);let e=t.loose?b[T.CARETLOOSE]:b[T.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(s,o,i,a,c)=>{let l;return E("caret",n,s,o,i,a,c),P(o)?l="":P(i)?l=`>=${o}.0.0${r} <${+o+1}.0.0-0`:P(a)?l=o==="0"?`>=${o}.${i}.0${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${r} <${+o+1}.0.0-0`:c?(E("replaceCaret pr",c),l=o==="0"?i==="0"?`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(E("no pr"),l=o==="0"?i==="0"?`>=${o}.${i}.${a}${r} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),E("caret return",l),l})},Mn=(n,t)=>(E("replaceXRanges",n,t),n.split(/\s+/).map(e=>xn(e,t)).join(" ")),xn=(n,t)=>{n=n.trim();let e=t.loose?b[T.XRANGELOOSE]:b[T.XRANGE];return n.replace(e,(r,s,o,i,a,c)=>{E("xRange",n,r,s,o,i,a,c);let l=P(o),d=l||P(i),p=d||P(a),C=p;return s==="="&&C&&(s=""),c=t.includePrerelease?"-0":"",l?r=s===">"||s==="<"?"<0.0.0-0":"*":s&&C?(d&&(i=0),a=0,s===">"?(s=">=",d?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",d?o=+o+1:i=+i+1),s==="<"&&(c="-0"),r=`${s+o}.${i}.${a}${c}`):d?r=`>=${o}.0.0${c} <${+o+1}.0.0-0`:p&&(r=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),E("xRange return",r),r})},Nn=(n,t)=>(E("replaceStars",n,t),n.trim().replace(b[T.STAR],"")),Cn=(n,t)=>(E("replaceGTE0",n,t),n.trim().replace(b[t.includePrerelease?T.GTE0PRE:T.GTE0],"")),An=n=>(t,e,r,s,o,i,a,c,l,d,p,C,I)=>`${e=P(r)?"":P(s)?`>=${r}.0.0${n?"-0":""}`:P(o)?`>=${r}.${s}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=P(l)?"":P(d)?`<${+l+1}.0.0-0`:P(p)?`<${l}.${+d+1}.0-0`:C?`<=${l}.${d}.${p}-${C}`:n?`<${l}.${d}.${+p+1}-0`:`<=${c}`}`.trim(),$n=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(E(n[r].semver),n[r].semver!==W.ANY&&n[r].semver.prerelease.length>0){let s=n[r].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0},It=(n,t,e)=>{try{t=new k(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:Sn}=qe,{re:Rt,t:vt}=ie,Ln=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof g)return n;if(typeof n!="string"||n.length>Sn||!(t.loose?Rt[vt.LOOSE]:Rt[vt.FULL]).test(n))return null;try{return new g(n,t)}catch(e){return null}},On=Ln,{re:fe,t:Ee}=ie,bt=(n,t)=>{if(n instanceof g)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=fe[Ee.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),fe[Ee.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;fe[Ee.COERCERTL].lastIndex=-1}else e=n.match(fe[Ee.COERCE]);return e===null?null:On(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function _n(n){return String.fromCharCode(parseInt(n.slice(1),16))}function kn(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function qn(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,_n))}function Dn(n){return decodeURIComponent(Array.from(atob(n),kn).join(""))}function ae(n){return qn(JSON.stringify(n))}function De(n){return JSON.parse(Dn(n))}var A=require("@magic-sdk/types");var ye=require("@magic-sdk/types");function q(n){return typeof n=="undefined"}function Un(n){return n===null}function ge(n){return Un(n)||q(n)}function Wn(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&!q(n.method)&&!q(n.params)}function Ue(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&(!q(n.result)||!q(n.error))}function Fn(n){return ge(n)?!1:typeof n=="string"&&Object.values(ye.MagicPayloadMethod).includes(n)}function We(n){return ge(n)?!1:typeof n=="number"&&Object.values(ye.RPCErrorCode).includes(n)}function z(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var m={};function wt(n,t){return Object.assign(m,t),n}var Pt={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var S=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,S.prototype)}},L=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=We(r)?r:A.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,L.prototype)}},D=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},K=class extends Error{constructor(e,r,s,o){super(`Magic Extension Error (${e.name}): [${r}] ${s}`);this.code=r;this.rawMessage=s;this.data=o;this.__proto__=Error;Object.setPrototypeOf(this,K.prototype)}},Y=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function Fe(){return new S(A.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Je(){return new S(A.SDKErrorCode.ModalNotReady,"Modal is not ready.")}function Ge(){return new S(A.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function Ke(n){return new S(A.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function je(n){let t=`Some extensions are incompatible with \`${m.sdkName}@${m.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[m.sdkName];typeof r=="string"?t+=`
"use strict";var Jt=Object.create;var re=Object.defineProperty,Gt=Object.defineProperties,Kt=Object.getOwnPropertyDescriptor,jt=Object.getOwnPropertyDescriptors,Bt=Object.getOwnPropertyNames,at=Object.getOwnPropertySymbols,Vt=Object.getPrototypeOf,lt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable;var ct=(n,t,e)=>t in n?re(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,V=(n,t)=>{for(var e in t||(t={}))lt.call(t,e)&&ct(n,e,t[e]);if(at)for(var e of at(t))Ht.call(t,e)&&ct(n,e,t[e]);return n},H=(n,t)=>Gt(n,jt(t));var Xt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),dt=(n,t)=>{for(var e in t)re(n,e,{get:t[e],enumerable:!0})},ut=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Bt(t))!lt.call(n,o)&&o!==e&&re(n,o,{get:()=>t[o],enumerable:!(r=Kt(t,o))||r.enumerable});return n};var zt=(n,t,e)=>(e=n!=null?Jt(Vt(n)):{},ut(t||!n||!n.__esModule?re(e,"default",{value:n,enumerable:!0}):e,n)),Yt=n=>ut(re({},"__esModule",{value:!0}),n);var f=(n,t,e)=>new Promise((r,o)=>{var s=c=>{try{a(e.next(c))}catch(l){o(l)}},i=c=>{try{a(e.throw(c))}catch(l){o(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(s,i);a((e=e.apply(n,t)).next())});var Nt=Xt(($r,Xe)=>{"use strict";var Bn=Object.prototype.hasOwnProperty,M="~";function ce(){}Object.create&&(ce.prototype=Object.create(null),new ce().__proto__||(M=!1));function Vn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function Ct(n,t,e,r,o){if(typeof e!="function")throw new TypeError("The listener must be a function");var s=new Vn(e,r||n,o),i=M?M+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],s]:n._events[i].push(s):(n._events[i]=s,n._eventsCount++),n}function ve(n,t){--n._eventsCount===0?n._events=new ce:delete n._events[t]}function w(){this._events=new ce,this._eventsCount=0}w.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)Bn.call(e,r)&&t.push(M?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};w.prototype.listeners=function(t){var e=M?M+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,s=r.length,i=new Array(s);o<s;o++)i[o]=r[o].fn;return i};w.prototype.listenerCount=function(t){var e=M?M+t:t,r=this._events[e];return r?r.fn?1:r.length:0};w.prototype.emit=function(t,e,r,o,s,i){var a=M?M+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,h;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,o),!0;case 5:return c.fn.call(c.context,e,r,o,s),!0;case 6:return c.fn.call(c.context,e,r,o,s,i),!0}for(h=1,d=new Array(l-1);h<l;h++)d[h-1]=arguments[h];c.fn.apply(c.context,d)}else{var N=c.length,I;for(h=0;h<N;h++)switch(c[h].once&&this.removeListener(t,c[h].fn,void 0,!0),l){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,e);break;case 3:c[h].fn.call(c[h].context,e,r);break;case 4:c[h].fn.call(c[h].context,e,r,o);break;default:if(!d)for(I=1,d=new Array(l-1);I<l;I++)d[I-1]=arguments[I];c[h].fn.apply(c[h].context,d)}}return!0};w.prototype.on=function(t,e,r){return Ct(this,t,e,r,!1)};w.prototype.once=function(t,e,r){return Ct(this,t,e,r,!0)};w.prototype.removeListener=function(t,e,r,o){var s=M?M+t:t;if(!this._events[s])return this;if(!e)return ve(this,s),this;var i=this._events[s];if(i.fn)i.fn===e&&(!o||i.once)&&(!r||i.context===r)&&ve(this,s);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||o&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[s]=c.length===1?c[0]:c:ve(this,s)}return this};w.prototype.removeAllListeners=function(t){var e;return t?(e=M?M+t:t,this._events[e]&&ve(this,e)):(this._events=new ce,this._eventsCount=0),this};w.prototype.off=w.prototype.removeListener;w.prototype.addListener=w.prototype.on;w.prefixed=M;w.EventEmitter=w;typeof Xe<"u"&&(Xe.exports=w)});var Er={};dt(Er,{Extension:()=>_,MagicExtensionError:()=>K,MagicExtensionWarning:()=>Y,MagicRPCError:()=>L,MagicSDKError:()=>$,MagicSDKWarning:()=>D,SDKBase:()=>pe,STORE_KEY_PRIVATE_KEY:()=>Me,STORE_KEY_PUBLIC_JWK:()=>de,TypedEmitter:()=>Te,ViewController:()=>_e,clearKeys:()=>er,createDeprecationWarning:()=>U,createDuplicateIframeWarning:()=>Jn,createExtensionNotInitializedError:()=>Ke,createIncompatibleExtensionsError:()=>je,createInvalidArgumentError:()=>Be,createJwt:()=>et,createMalformedResponseError:()=>Ge,createMissingApiKeyError:()=>Fe,createModalNotReadyError:()=>Je,createPromiEvent:()=>O,createPromise:()=>be,createReactNativeEndpointConfigurationWarning:()=>He,createSDK:()=>wt,createSynchronousWeb3MethodWarning:()=>Ve,createTypedEmitter:()=>le,createURL:()=>xe,decodeJSON:()=>De,encodeJSON:()=>ae,getPayloadId:()=>Re,isEmpty:()=>z,isJsonRpcErrorCode:()=>We,isJsonRpcRequestPayload:()=>Wn,isJsonRpcResponsePayload:()=>Ue,isMagicPayloadMethod:()=>Fn,isMajorVersionAtLeast:()=>Ye,isPromiEvent:()=>ze,isWebCryptoSupported:()=>ee,storage:()=>Z,uuid:()=>Ze});module.exports=Yt(Er);function Qt(n){let t={exports:{}};return n(t,t.exports),t.exports}var Zt=Number.MAX_SAFE_INTEGER||9007199254740991;var qe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:Zt,MAX_SAFE_COMPONENT_LENGTH:16},en=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},E=en,ie=Qt(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=qe,r=(t=n.exports={}).re=[],o=t.src=[],s=t.t={},i=0,a=(c,l,d)=>{let h=i++;E(h,l),s[c]=h,o[h]=l,r[h]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${o[s.NUMERICIDENTIFIER]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${o[s.NUMERICIDENTIFIERLOOSE]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${o[s.PRERELEASEIDENTIFIER]}(?:\\.${o[s.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${o[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${o[s.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${o[s.BUILDIDENTIFIER]}(?:\\.${o[s.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${o[s.MAINVERSION]}${o[s.PRERELEASE]}?${o[s.BUILD]}?`),a("FULL",`^${o[s.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${o[s.MAINVERSIONLOOSE]}${o[s.PRERELEASELOOSE]}?${o[s.BUILD]}?`),a("LOOSE",`^${o[s.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${o[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${o[s.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:${o[s.PRERELEASE]})?${o[s.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:${o[s.PRERELEASELOOSE]})?${o[s.BUILD]}?)?)?`),a("XRANGE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",o[s.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${o[s.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${o[s.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${o[s.LONECARET]}${o[s.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${o[s.LONECARET]}${o[s.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${o[s.GTLT]}\\s*(${o[s.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]}|${o[s.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${o[s.XRANGEPLAIN]})\\s+-\\s+(${o[s.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${o[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${o[s.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),pt=/^[0-9]+$/,Tt=(n,t)=>{let e=pt.test(n),r=pt.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},tn=(n,t)=>Tt(t,n),nn={compareIdentifiers:Tt,rcompareIdentifiers:tn},{MAX_LENGTH:ht,MAX_SAFE_INTEGER:me}=qe,{re:mt,t:ft}=ie,{compareIdentifiers:se}=nn,g=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof g){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>ht)throw new TypeError(`version is longer than ${ht} characters`);E("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?mt[ft.LOOSE]:mt[ft.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>me||this.major<0)throw new TypeError("Invalid major version");if(this.minor>me||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>me||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let s=+o;if(s>=0&&s<me)return s}return o}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(E("SemVer.compare",this.version,this.options,t),!(t instanceof g)){if(typeof t=="string"&&t===this.version)return 0;t=new g(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof g||(t=new g(t,this.options)),se(this.major,t.major)||se(this.minor,t.minor)||se(this.patch,t.patch)}comparePre(t){if(t instanceof g||(t=new g(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],o=t.prerelease[e];if(E("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return se(r,o)}while(++e)}compareBuild(t){t instanceof g||(t=new g(t,this.options));let e=0;do{let r=this.build[e],o=t.build[e];if(E("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return se(r,o)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},rn=(n,t,e)=>new g(n,e).compare(new g(t,e)),X=rn,sn=(n,t,e)=>X(n,t,e)===0,on=sn,an=(n,t,e)=>X(n,t,e)!==0,cn=an,ln=(n,t,e)=>X(n,t,e)>0,dn=ln,un=(n,t,e)=>X(n,t,e)>=0,pn=un,hn=(n,t,e)=>X(n,t,e)<0,mn=hn,fn=(n,t,e)=>X(n,t,e)<=0,En=fn,yn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return on(n,e,r);case"!=":return cn(n,e,r);case">":return dn(n,e,r);case">=":return pn(n,e,r);case"<":return mn(n,e,r);case"<=":return En(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},ke=yn,oe=Symbol("SemVer ANY"),W=class{static get ANY(){return oe}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof W){if(t.loose===!!e.loose)return t;t=t.value}E("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===oe?this.value="":this.value=this.operator+this.semver.version,E("comp",this)}parse(t){let e=this.options.loose?Et[yt.COMPARATORLOOSE]:Et[yt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new g(r[2],this.options.loose):this.semver=oe}toString(){return this.value}test(t){if(E("Comparator.test",t,this.options.loose),this.semver===oe||t===oe)return!0;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}return ke(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof W))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new k(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new k(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),o=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),s=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=ke(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=ke(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||o||s&&i||a||c}},{re:Et,t:yt}=ie,k=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof k)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new k(t.raw,e);if(t instanceof W)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?b[T.HYPHENRANGELOOSE]:b[T.HYPHENRANGE];t=t.replace(r,An(this.options.includePrerelease)),E("hyphen replace",t),t=t.replace(b[T.COMPARATORTRIM],gn),E("comparator trim",t,b[T.COMPARATORTRIM]),t=(t=(t=t.replace(b[T.TILDETRIM],Rn)).replace(b[T.CARETTRIM],vn)).split(/\s+/).join(" ");let o=e?b[T.COMPARATORLOOSE]:b[T.COMPARATOR];return t.split(" ").map(s=>Tn(s,this.options)).join(" ").split(/\s+/).map(s=>Nn(s,this.options)).filter(this.options.loose?s=>!!s.match(o):()=>!0).map(s=>new W(s,this.options))}intersects(t,e){if(!(t instanceof k))throw new TypeError("a Range is required");return this.set.some(r=>gt(r,e)&&t.set.some(o=>gt(o,e)&&r.every(s=>o.every(i=>s.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new g(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(Sn(this.set[e],t,this.options))return!0;return!1}},{re:b,t:T,comparatorTrimReplace:gn,tildeTrimReplace:Rn,caretTrimReplace:vn}=ie,gt=(n,t)=>{let e=!0,r=n.slice(),o=r.pop();for(;e&&r.length;)e=r.every(s=>o.intersects(s,t)),o=r.pop();return e},Tn=(n,t)=>(E("comp",n,t),n=wn(n,t),E("caret",n),n=In(n,t),E("tildes",n),n=Mn(n,t),E("xrange",n),n=Cn(n,t),E("stars",n),n),P=n=>!n||n.toLowerCase()==="x"||n==="*",In=(n,t)=>n.trim().split(/\s+/).map(e=>bn(e,t)).join(" "),bn=(n,t)=>{let e=t.loose?b[T.TILDELOOSE]:b[T.TILDE];return n.replace(e,(r,o,s,i,a)=>{let c;return E("tilde",n,r,o,s,i,a),P(o)?c="":P(s)?c=`>=${o}.0.0 <${+o+1}.0.0-0`:P(i)?c=`>=${o}.${s}.0 <${o}.${+s+1}.0-0`:a?(E("replaceTilde pr",a),c=`>=${o}.${s}.${i}-${a} <${o}.${+s+1}.0-0`):c=`>=${o}.${s}.${i} <${o}.${+s+1}.0-0`,E("tilde return",c),c})},wn=(n,t)=>n.trim().split(/\s+/).map(e=>Pn(e,t)).join(" "),Pn=(n,t)=>{E("caret",n,t);let e=t.loose?b[T.CARETLOOSE]:b[T.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(o,s,i,a,c)=>{let l;return E("caret",n,o,s,i,a,c),P(s)?l="":P(i)?l=`>=${s}.0.0${r} <${+s+1}.0.0-0`:P(a)?l=s==="0"?`>=${s}.${i}.0${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.0${r} <${+s+1}.0.0-0`:c?(E("replaceCaret pr",c),l=s==="0"?i==="0"?`>=${s}.${i}.${a}-${c} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}-${c} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a}-${c} <${+s+1}.0.0-0`):(E("no pr"),l=s==="0"?i==="0"?`>=${s}.${i}.${a}${r} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a} <${+s+1}.0.0-0`),E("caret return",l),l})},Mn=(n,t)=>(E("replaceXRanges",n,t),n.split(/\s+/).map(e=>xn(e,t)).join(" ")),xn=(n,t)=>{n=n.trim();let e=t.loose?b[T.XRANGELOOSE]:b[T.XRANGE];return n.replace(e,(r,o,s,i,a,c)=>{E("xRange",n,r,o,s,i,a,c);let l=P(s),d=l||P(i),h=d||P(a),N=h;return o==="="&&N&&(o=""),c=t.includePrerelease?"-0":"",l?r=o===">"||o==="<"?"<0.0.0-0":"*":o&&N?(d&&(i=0),a=0,o===">"?(o=">=",d?(s=+s+1,i=0,a=0):(i=+i+1,a=0)):o==="<="&&(o="<",d?s=+s+1:i=+i+1),o==="<"&&(c="-0"),r=`${o+s}.${i}.${a}${c}`):d?r=`>=${s}.0.0${c} <${+s+1}.0.0-0`:h&&(r=`>=${s}.${i}.0${c} <${s}.${+i+1}.0-0`),E("xRange return",r),r})},Cn=(n,t)=>(E("replaceStars",n,t),n.trim().replace(b[T.STAR],"")),Nn=(n,t)=>(E("replaceGTE0",n,t),n.trim().replace(b[t.includePrerelease?T.GTE0PRE:T.GTE0],"")),An=n=>(t,e,r,o,s,i,a,c,l,d,h,N,I)=>`${e=P(r)?"":P(o)?`>=${r}.0.0${n?"-0":""}`:P(s)?`>=${r}.${o}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=P(l)?"":P(d)?`<${+l+1}.0.0-0`:P(h)?`<${l}.${+d+1}.0-0`:N?`<=${l}.${d}.${h}-${N}`:n?`<${l}.${d}.${+h+1}-0`:`<=${c}`}`.trim(),Sn=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(E(n[r].semver),n[r].semver!==W.ANY&&n[r].semver.prerelease.length>0){let o=n[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0},It=(n,t,e)=>{try{t=new k(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:$n}=qe,{re:Rt,t:vt}=ie,Ln=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof g)return n;if(typeof n!="string"||n.length>$n||!(t.loose?Rt[vt.LOOSE]:Rt[vt.FULL]).test(n))return null;try{return new g(n,t)}catch(e){return null}},On=Ln,{re:fe,t:Ee}=ie,bt=(n,t)=>{if(n instanceof g)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=fe[Ee.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),fe[Ee.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;fe[Ee.COERCERTL].lastIndex=-1}else e=n.match(fe[Ee.COERCE]);return e===null?null:On(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function _n(n){return String.fromCharCode(parseInt(n.slice(1),16))}function kn(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function qn(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,_n))}function Dn(n){return decodeURIComponent(Array.from(atob(n),kn).join(""))}function ae(n){return qn(JSON.stringify(n))}function De(n){return JSON.parse(Dn(n))}var A=require("@magic-sdk/types");var ye=require("@magic-sdk/types");function q(n){return typeof n=="undefined"}function Un(n){return n===null}function ge(n){return Un(n)||q(n)}function Wn(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&!q(n.method)&&!q(n.params)}function Ue(n){return ge(n)?!1:!q(n.jsonrpc)&&!q(n.id)&&(!q(n.result)||!q(n.error))}function Fn(n){return ge(n)?!1:typeof n=="string"&&Object.values(ye.MagicPayloadMethod).includes(n)}function We(n){return ge(n)?!1:typeof n=="number"&&Object.values(ye.RPCErrorCode).includes(n)}function z(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var m={};function wt(n,t){return Object.assign(m,t),n}var Pt={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var $=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,$.prototype)}},L=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=We(r)?r:A.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,L.prototype)}},D=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},K=class extends Error{constructor(e,r,o,s){super(`Magic Extension Error (${e.name}): [${r}] ${o}`);this.code=r;this.rawMessage=o;this.data=s;this.__proto__=Error;Object.setPrototypeOf(this,K.prototype)}},Y=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function Fe(){return new $(A.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Je(){return new $(A.SDKErrorCode.ModalNotReady,"Modal is not ready.")}function Ge(){return new $(A.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function Ke(n){return new $(A.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function je(n){let t=`Some extensions are incompatible with \`${m.sdkName}@${m.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[m.sdkName];typeof r=="string"?t+=`
- Extension \`${e.name}\` supports version(s) \`${r}\``:r||(t+=`
- Extension \`${e.name}\` does not support ${m.platform} environments.`)}),new S(A.SDKErrorCode.IncompatibleExtensions,t)}function Be(n){let t=e=>{let r=e+1,s=r%10,o=r%100;return s===1&&o!==11?`${r}st`:s===2&&o!==12?`${r}nd`:s===3&&o!==13?`${r}rd`:`${r}th`};return new S(A.SDKErrorCode.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
- Extension \`${e.name}\` does not support ${m.platform} environments.`)}),new $(A.SDKErrorCode.IncompatibleExtensions,t)}function Be(n){let t=e=>{let r=e+1,o=r%10,s=r%100;return o===1&&s!==11?`${r}st`:o===2&&s!==12?`${r}nd`:o===3&&s!==13?`${r}rd`:`${r}th`};return new $(A.SDKErrorCode.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
Expected: \`${n.expected}\`
Received: \`${n.received}\``)}function Jn(){return new D(A.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ve(){return new D(A.SDKWarningCode.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function He(){return new D(A.SDKWarningCode.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${m.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function U(n){let{method:t,removalVersions:e,useInstead:r}=n,s=e[m.sdkName],o=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${m.sdkName}\` in version \`${s}\`.${o}`;return new D(A.SDKWarningCode.DeprecationNotice,i)}var h=require("@magic-sdk/types");var Q=require("@magic-sdk/types");function*Gn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Kn=Gn();function Re(){return Kn.next().value}var Mt=Symbol("Payload pre-processed by Magic SDK");function xt(n){return Object.defineProperty(n,Mt,{value:!0,enumerable:!1}),n}function jn(n){return!!n[Mt]}function j(n){var t,e,r;return jn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Re(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],xt(n)),n}function u(n,t=[]){return xt({params:t,method:n,jsonrpc:"2.0",id:Re()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):Ue(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var Ie=require("@magic-sdk/types");var At=zt(Ct()),Te=class extends At.default{};function le(){let n=new Te;return{emitter:n,createChainingEmitterMethod:(r,s)=>(...o)=>(n[r].apply(n,o),s),createBoundEmitterMethod:r=>(...s)=>n[r].apply(n,s)}}var $t=Symbol("isPromiEvent");function ze(n){return!!n[$t]}function O(n){let t=be(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=le(),s=Symbol("Promise.then"),o=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,p)=>(...C)=>{let I=p[d].apply(p,C);return c(I)},c=d=>Object.assign(d,{[$t]:!0,[s]:d[s]||d.then,[o]:d[o]||d.catch,[i]:d[i]||d.finally,then:a(s,d),catch:a(o,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Ie.UserEventsOnReceived.ClosedByUser,()=>{l.emit(Ie.UserEventsEmit.ClosedByUser)}),l}function be(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var x=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(Q.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,j(t)),r=O((o,i)=>{e.then(a=>{if(s(),a.hasError)i(new L(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw Ge()}).catch(a=>{s(),i(a)})}),s=this.overlay.on(Q.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,o=>{var a;let{response:i}=o.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return s=>{let o=u(Q.MagicPayloadMethod.IntermediaryEvent,[{payloadId:e,eventType:t,args:s}]);this.request(o)}}};function Ye(n,t){let[e]=n.split(".").map(Number);return e>=t}var B={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},we=class extends x{loginWithMagicLink(t){let e=m.sdkName==="@magic-sdk/react-native"||m.sdkName==="@magic-sdk/react-native-bare"||m.sdkName==="@magic-sdk/react-native-expo";if(e&&Ye(m.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&U({method:"auth.loginWithMagicLink()",removalVersions:B,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:s=!0,redirectURI:o,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithMagicLinkTestMode:h.MagicPayloadMethod.LoginWithMagicLink,[{email:r,showUI:s,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,lifespan:r}=t,s=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithSmsTestMode:h.MagicPayloadMethod.LoginWithSms,[{phoneNumber:e,showUI:!0,lifespan:r}]);return this.request(s)}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}=t,a=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithEmailOTPTestMode:h.MagicPayloadMethod.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}]),c=this.request(a);return!s&&c&&c.on(h.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(h.DeviceVerificationEventEmit.Retry,a.id)()}),!r&&c&&(c.on(h.LoginWithEmailOTPEventEmit.VerifyEmailOtp,l=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(l)}),c.on(h.LoginWithEmailOTPEventEmit.VerifyMFACode,l=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(l)}),c.on(h.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},s=e!=null?e:"";if(!e&&m.platform==="web"){s=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let o=u(this.sdk.testMode?h.MagicPayloadMethod.LoginWithCredentialTestMode:h.MagicPayloadMethod.LoginWithCredential,[s,r]);return this.request(o)}setAuthorizationToken(t){let e=u(h.MagicPayloadMethod.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,s=u(this.sdk.testMode?h.MagicPayloadMethod.UpdateEmailTestMode:h.MagicPayloadMethod.UpdateEmail,[{email:e,showUI:r}]),o=this.request(s);return r||(o.on(h.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.Retry,s.id)()}),o.on(h.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.Cancel,s.id)()}),o.on(h.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.VerifyEmailOtp,s.id)(i)}),o.on(h.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(h.RecencyCheckEventEmit.VerifyMFACode,s.id)(i)}),o.on(h.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.RetryWithNewEmail,s.id)(i)}),o.on(h.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.Cancel,s.id)()}),o.on(h.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(h.UpdateEmailEventEmit.VerifyEmailOtp,s.id)(i)})),o}};var v=require("@magic-sdk/types");var Z={};dt(Z,{clear:()=>Hn,getItem:()=>R,iterate:()=>Qe,key:()=>zn,keys:()=>Yn,length:()=>Xn,removeItem:()=>$,setItem:()=>N});var Pe;function J(n){return(...t)=>f(this,null,function*(){return Pe||(Pe=yield m.configureStorage()),yield Pe.ready(),Pe[n](...t)})}var R=J("getItem"),N=J("setItem"),$=J("removeItem"),Hn=J("clear"),Xn=J("length"),zn=J("key"),Yn=J("keys"),Qe=J("iterate");function Ze(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var Me="STORE_KEY_PRIVATE_KEY",de="STORE_KEY_PUBLIC_JWK",Lt="ECDSA",Qn="P-256",Zn={name:Lt,namedCurve:Qn};function ee(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function er(){$(de),$(Me)}function et(){return f(this,null,function*(){let n=yield tr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield R(Me);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:Ze()},s={typ:"dpop+jwt",alg:"ES256",jwk:n},o={protected:St(JSON.stringify(s)),claims:St(JSON.stringify(r))},i=rr(`${o.protected}.${o.claims}`),a={name:Lt,hash:{name:"SHA-256"}},c=or(new Uint8Array(yield t.sign(a,e,i)));return`${o.protected}.${o.claims}.${c}`})}function tr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}return(yield R(de))||(yield nr()),R(de)})}function nr(){return f(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(Zn,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield N(Me,t.privateKey),yield N(de,e)})}function St(n){return Ot(sr(n))}function rr(n){return new TextEncoder().encode(n)}function Ot(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function sr(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function or(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),Ot(t)}var tt="ds",nt="ek",rt="iv",st="AES-GCM",ir=256;function te(){return f(this,null,function*(){let n=[];yield Qe((t,e,r)=>{e.startsWith(`${tt}_`)&&n.push(e)});for(let t of n)yield $(t)})}function _t(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let s=0;s<r;s++)t+=String.fromCharCode(e[s]);return window.btoa(t)}function kt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let s=0;s<e;s++)r[s]=t.charCodeAt(s);return r.buffer}function ar(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield R(rt);return t||n.getRandomValues(new Uint8Array(12))})}function cr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield R(nt);return t||(yield n.generateKey({name:st,length:ir},!1,["encrypt","decrypt"]))})}function qt(n,t){return f(this,null,function*(){let e=yield ar(),r=yield cr();if(!e||!r||!n)return;let s=kt(n),{subtle:o}=window.crypto,i=yield o.encrypt({name:st,iv:e},r,s),a=_t(i);yield N(`${tt}_${t}`,a),yield N(nt,r),yield N(rt,e)})}function Dt(n){return f(this,null,function*(){let t=yield R(`${tt}_${n}`),e=yield R(rt),r=yield R(nt);if(!e||!t||!r||!ee())return;let{subtle:s}=window.crypto,o=yield s.decrypt({name:st,iv:e},r,kt(t));return _t(o)})}function xe(n,t){return t?new URL(n,t):new URL(n)}var Ne=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GetIdTokenTestMode:v.MagicPayloadMethod.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GenerateIdTokenTestMode:v.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(r)}getInfo(){return f(this,null,function*(){let e=yield R(this.localForageKey),r=u(v.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return O((e,r)=>f(this,null,function*(){try{let s=!1;this.sdk.useStorageCache&&(s=(yield R(this.localForageIsLoggedInKey))==="true",s&&e(!0));let o=u(this.sdk.testMode?v.MagicPayloadMethod.IsLoggedInTestMode:v.MagicPayloadMethod.IsLoggedIn),i=yield this.request(o);this.sdk.useStorageCache&&(i?N(this.localForageIsLoggedInKey,!0):$(this.localForageIsLoggedInKey),s&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(s){r(s)}}))}logout(){return $(this.localForageKey),$(this.localForageIsLoggedInKey),te(),O((e,r)=>f(this,null,function*(){try{let s=u(this.sdk.testMode?v.MagicPayloadMethod.LogoutTestMode:v.MagicPayloadMethod.Logout),o=yield this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(o),e(o)}catch(s){r(s)}}))}requestInfoWithUI(e){let r=u(v.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.UserSettingsTestMode:v.MagicPayloadMethod.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.RecoverAccountTestMode:v.MagicPayloadMethod.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(v.MagicPayloadMethod.RevealPK);return this.request(e)}getMetadata(){U({method:"user.getMetadata()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?v.MagicPayloadMethod.GetMetadataTestMode:v.MagicPayloadMethod.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(v.MagicPayloadMethod.EnableMFA);return this.request(e)}disableMFA(){let e=u(v.MagicPayloadMethod.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};var y=require("@magic-sdk/types");var Ce=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=O((r,s)=>f(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled(y.Wallets.MetaMask))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled(y.Wallets.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.CoinbaseWallet);r(l);return}let o=this.getUserEnv(),i=u(y.MagicPayloadMethod.Login,[o]),a=this.request(i);a.on(y.Events.WalletSelected,l=>this.handleWalletSelected(H(V({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&s(c),r(c)}catch(o){s(o)}}));return e}showUI(e){return this.request(u(y.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(u(y.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(u(y.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(u(y.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(u(y.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(u(y.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(y.MagicPayloadMethod.SendGaslessTransaction,[e,r]))}getInfo(){return f(this,null,function*(){U({method:"wallet.getInfo()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=yield R(this.localForageKey),r=u(y.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){U({method:"wallet.disconnect()",removalVersions:B,useInstead:"user.logout()"}).log(),$(this.localForageKey),te();let e=u(y.MagicPayloadMethod.Disconnect);return this.request(e)}requestUserInfoWithUI(e){U({method:"wallet.requestUserInfoWithUI()",removalVersions:B,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(y.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return f(this,null,function*(){switch(yield R(this.localForageKey)){case y.Wallets.MetaMask:return this.getMetaMaskProvider();case y.Wallets.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case y.Wallets.MetaMask:return this.connectToMetaMask();case y.Wallets.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return f(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield N(this.localForageKey,e.wallet),this.createIntermediaryEvent(y.Events.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(y.Events.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return f(this,null,function*(){let r;e===y.Wallets.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===y.Wallets.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield N(this.localForageKey,e);let s=u(y.MagicPayloadMethod.AutoConnect,[{wallet:e,address:r}]);return this.request(s)})}};var ue=require("@magic-sdk/types");var{createBoundEmitterMethod:Ae,createChainingEmitterMethod:ne}=le(),$e=class extends x{constructor(){super(...arguments);this.isMagic=!0;this.on=ne("on",this);this.once=ne("once",this);this.addListener=ne("addListener",this);this.off=ne("off",this);this.removeListener=ne("removeListener",this);this.removeAllListeners=ne("removeAllListeners",this);this.emit=Ae("emit");this.eventNames=Ae("eventNames");this.listeners=Ae("listeners");this.listenerCount=Ae("listenerCount")}sendAsync(e,r){if(!r)throw Be({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(s=>{let o=j(s);return this.prefixPayloadMethodForTestMode(o),o})).then(s=>{r(null,s.map(o=>H(V({},o.payload),{error:o.hasError?new L(o.payload.error):null})))});else{let s=j(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,s).then(o=>{r(o.hasError?new L(o.payload.error):null,o.payload)})}}send(e,r){if(typeof e=="string"){let o=u(e,Array.isArray(r)?r:[]);return this.request(o)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let s=Ve();return s.log(),new F(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=u(ue.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Ut=["request","overlay","sdk"];function lr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==x.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var Se=class extends x{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:O,isPromiEvent:ze,encodeJSON:ae,decodeJSON:De,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:j,storage:Z};let e=[this,...lr(this)];Ut.forEach(r=>{let s=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),o=s.findIndex(c=>!!c),i=o>0,a=s[o];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw Ke(r)}}))})}init(e){this.__is_initialized__||(Ut.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:s,isPrototypeField:o}=this.__sdk_access_field_descriptors__.get(r);o?delete this[r]:Object.defineProperty(this,r,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:s,useInstead:o}=e,i=o?` Use \`${o}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${s}\`.${i}`;return new Y(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new Y(this,e,r)}createError(e,r,s){return new K(this,e,r,s)}},ot=class extends Se{},_=class extends Se{};_.Internal=ot,_.Anonymous="anonymous extension";var Le=require("@magic-sdk/types");var Oe=class extends x{purchase(t){let e=u(Le.MagicPayloadMethod.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(Le.MagicPayloadMethod.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(Le.MagicPayloadMethod.NFTTransfer,[t]);return this.request(e)}};function Wt(n){return n.compat&&n.compat[m.sdkName]!=null?typeof n.compat[m.sdkName]=="string"?It(bt(m.version),n.compat[m.sdkName]):!!n.compat[m.sdkName]:!0}function dr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function ur(n){var s;let t=(s=n==null?void 0:n.extensions)!=null?s:[],e={},r=[];if(Array.isArray(t)?t.forEach(o=>{Wt(o)?(o.init(this),(o.name||o.name!==_.Anonymous)&&(this[o.name]=o),o instanceof _.Internal&&(z(o.config)||(e[o.name]=o.config))):r.push(o)}):Object.keys(t).forEach(o=>{if(Wt(t[o])){t[o].init(this);let i=t[o];this[o]=i,i instanceof _.Internal&&(z(i.config)||(e[t[o].name]=i.config))}else r.push(t[o])}),r.length)throw je(r);return e}var he=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw Fe();m.platform==="react-native"&&(e==null?void 0:e.endpoint)&&He().log();let{defaultEndpoint:r,version:s}=m;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=xe((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new we(this),this.user=new Ne(this),this.wallet=new Ce(this),this.nft=new Oe(this),this.rpcProvider=new $e(this);let o=ur.call(this,e);this.parameters=ae(H(V({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:xe(this.endpoint).host,sdk:Pt[m.sdkName],version:s,ext:z(o)?void 0:o,locale:(e==null?void 0:e.locale)||"en_US"},m.bundleId?{bundleId:m.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=dr(this.apiKey,e==null?void 0:e.network,z(o)?void 0:o),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!he.__overlays__.has(this.parameters)){let t=new m.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),he.__overlays__.set(this.parameters,t)}return he.__overlays__.get(this.parameters)}preload(){return f(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},pe=he;pe.__overlays__=new Map;var G=require("@magic-sdk/types");function pr(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function hr(n,t){var s;let e=(s=t.data.response)==null?void 0:s.id,r=pr(n,e);if(e&&r){let o=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:o}}return{}}function mr(n,t,e){return f(this,null,function*(){var a;let r=yield R("rt"),s;if(m.platform==="web")try{s=(a=yield R("jwt"))!=null?a:yield et()}catch(c){console.error("webcrypto error",c)}let o={msgType:n,payload:t};s&&(o.jwt=s),s&&r&&(o.rt=r);let i=yield Dt(e);return i&&(o.deviceShare=i),o})}function fr(n){return f(this,null,function*(){!n.data.rt||(yield N("rt",n.data.rt))})}var _e=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return f(this,null,function*(){return be((r,s)=>f(this,null,function*(){if(!this.isConnectedToInternet){let d=Je();s(d)}this.isReadyForRequest||(yield this.waitForReady());let o=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield mr(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>p=>{var it;let{id:C,response:I}=hr(e,p);if(fr(p),((it=I==null?void 0:I.payload.error)==null?void 0:it.message)==="User denied account access.")te();else if(p.data.deviceShare){let{deviceShare:Ft}=p.data;qt(Ft,this.networkHash)}C&&I&&Array.isArray(e)&&i.includes(C)?(o.push(I),o.length===e.length&&(d(),r(o))):C&&I&&!Array.isArray(e)&&C===e.id&&(d(),r(I))},l=this.on(G.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),s=o=>{o.data.msgType===`${t}-${this.parameters}`&&r(o)};return this.messageHandlers.add(s),()=>this.messageHandlers.delete(s)}waitForReady(){return new Promise(t=>{let e=this.on(G.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(G.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new D(G.SDKWarningCode.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};
Received: \`${n.received}\``)}function Jn(){return new D(A.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ve(){return new D(A.SDKWarningCode.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function He(){return new D(A.SDKWarningCode.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${m.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function U(n){let{method:t,removalVersions:e,useInstead:r}=n,o=e[m.sdkName],s=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${m.sdkName}\` in version \`${o}\`.${s}`;return new D(A.SDKWarningCode.DeprecationNotice,i)}var p=require("@magic-sdk/types");var Q=require("@magic-sdk/types");function*Gn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Kn=Gn();function Re(){return Kn.next().value}var Mt=Symbol("Payload pre-processed by Magic SDK");function xt(n){return Object.defineProperty(n,Mt,{value:!0,enumerable:!1}),n}function jn(n){return!!n[Mt]}function j(n){var t,e,r;return jn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Re(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],xt(n)),n}function u(n,t=[]){return xt({params:t,method:n,jsonrpc:"2.0",id:Re()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):Ue(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var Ie=require("@magic-sdk/types");var At=zt(Nt()),Te=class extends At.default{};function le(){let n=new Te;return{emitter:n,createChainingEmitterMethod:(r,o)=>(...s)=>(n[r].apply(n,s),o),createBoundEmitterMethod:r=>(...o)=>n[r].apply(n,o)}}var St=Symbol("isPromiEvent");function ze(n){return!!n[St]}function O(n){let t=be(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=le(),o=Symbol("Promise.then"),s=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,h)=>(...N)=>{let I=h[d].apply(h,N);return c(I)},c=d=>Object.assign(d,{[St]:!0,[o]:d[o]||d.then,[s]:d[s]||d.catch,[i]:d[i]||d.finally,then:a(o,d),catch:a(s,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Ie.UserEventsOnReceived.ClosedByUser,()=>{l.emit(Ie.UserEventsEmit.ClosedByUser)}),l}function be(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var x=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(Q.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,j(t)),r=O((s,i)=>{e.then(a=>{if(o(),a.hasError)i(new L(a.payload.error));else if(a.hasResult)s(a.payload.result);else throw Ge()}).catch(a=>{o(),i(a)})}),o=this.overlay.on(Q.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,s=>{var a;let{response:i}=s.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return o=>{let s=u(Q.MagicPayloadMethod.IntermediaryEvent,[{payloadId:e,eventType:t,args:o}]);this.request(s)}}};function Ye(n,t){let[e]=n.split(".").map(Number);return e>=t}var B={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},we=class extends x{loginWithMagicLink(t){let e=m.sdkName==="@magic-sdk/react-native"||m.sdkName==="@magic-sdk/react-native-bare"||m.sdkName==="@magic-sdk/react-native-expo";if(e&&Ye(m.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&U({method:"auth.loginWithMagicLink()",removalVersions:B,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:o=!0,redirectURI:s,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithMagicLinkTestMode:p.MagicPayloadMethod.LoginWithMagicLink,[{email:r,showUI:o,redirectURI:s,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,showUI:r=!0,lifespan:o}=t,s=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithSmsTestMode:p.MagicPayloadMethod.LoginWithSms,[{phoneNumber:e,showUI:r,lifespan:o}]),i=this.request(s);return!r&&i&&(i.on(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,a=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,s.id)(a)}),i.on(p.LoginWithSmsOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.Cancel,s.id)()})),i}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}=t,a=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithEmailOTPTestMode:p.MagicPayloadMethod.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}]),c=this.request(a);return!o&&c&&c.on(p.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(p.DeviceVerificationEventEmit.Retry,a.id)()}),!r&&c&&(c.on(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,l=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(l)}),c.on(p.LoginWithEmailOTPEventEmit.VerifyMFACode,l=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(l)}),c.on(p.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},o=e!=null?e:"";if(!e&&m.platform==="web"){o=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let s=u(this.sdk.testMode?p.MagicPayloadMethod.LoginWithCredentialTestMode:p.MagicPayloadMethod.LoginWithCredential,[o,r]);return this.request(s)}setAuthorizationToken(t){let e=u(p.MagicPayloadMethod.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,o=u(this.sdk.testMode?p.MagicPayloadMethod.UpdateEmailTestMode:p.MagicPayloadMethod.UpdateEmail,[{email:e,showUI:r}]),s=this.request(o);return r||(s.on(p.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Retry,o.id)()}),s.on(p.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Cancel,o.id)()}),s.on(p.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyEmailOtp,o.id)(i)}),s.on(p.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyMFACode,o.id)(i)}),s.on(p.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.RetryWithNewEmail,o.id)(i)}),s.on(p.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.Cancel,o.id)()}),s.on(p.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.VerifyEmailOtp,o.id)(i)})),s}};var v=require("@magic-sdk/types");var Z={};dt(Z,{clear:()=>Hn,getItem:()=>R,iterate:()=>Qe,key:()=>zn,keys:()=>Yn,length:()=>Xn,removeItem:()=>S,setItem:()=>C});var Pe;function J(n){return(...t)=>f(this,null,function*(){return Pe||(Pe=yield m.configureStorage()),yield Pe.ready(),Pe[n](...t)})}var R=J("getItem"),C=J("setItem"),S=J("removeItem"),Hn=J("clear"),Xn=J("length"),zn=J("key"),Yn=J("keys"),Qe=J("iterate");function Ze(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var Me="STORE_KEY_PRIVATE_KEY",de="STORE_KEY_PUBLIC_JWK",Lt="ECDSA",Qn="P-256",Zn={name:Lt,namedCurve:Qn};function ee(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function er(){S(de),S(Me)}function et(){return f(this,null,function*(){let n=yield tr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield R(Me);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:Ze()},o={typ:"dpop+jwt",alg:"ES256",jwk:n},s={protected:$t(JSON.stringify(o)),claims:$t(JSON.stringify(r))},i=rr(`${s.protected}.${s.claims}`),a={name:Lt,hash:{name:"SHA-256"}},c=or(new Uint8Array(yield t.sign(a,e,i)));return`${s.protected}.${s.claims}.${c}`})}function tr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}return(yield R(de))||(yield nr()),R(de)})}function nr(){return f(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(Zn,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield C(Me,t.privateKey),yield C(de,e)})}function $t(n){return Ot(sr(n))}function rr(n){return new TextEncoder().encode(n)}function Ot(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function sr(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function or(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),Ot(t)}var tt="ds",nt="ek",rt="iv",st="AES-GCM",ir=256;function te(){return f(this,null,function*(){let n=[];yield Qe((t,e,r)=>{e.startsWith(`${tt}_`)&&n.push(e)});for(let t of n)yield S(t)})}function _t(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let o=0;o<r;o++)t+=String.fromCharCode(e[o]);return window.btoa(t)}function kt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let o=0;o<e;o++)r[o]=t.charCodeAt(o);return r.buffer}function ar(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield R(rt);return t||n.getRandomValues(new Uint8Array(12))})}function cr(){return f(this,null,function*(){if(!ee()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield R(nt);return t||(yield n.generateKey({name:st,length:ir},!1,["encrypt","decrypt"]))})}function qt(n,t){return f(this,null,function*(){let e=yield ar(),r=yield cr();if(!e||!r||!n)return;let o=kt(n),{subtle:s}=window.crypto,i=yield s.encrypt({name:st,iv:e},r,o),a=_t(i);yield C(`${tt}_${t}`,a),yield C(nt,r),yield C(rt,e)})}function Dt(n){return f(this,null,function*(){let t=yield R(`${tt}_${n}`),e=yield R(rt),r=yield R(nt);if(!e||!t||!r||!ee())return;let{subtle:o}=window.crypto,s=yield o.decrypt({name:st,iv:e},r,kt(t));return _t(s)})}function xe(n,t){return t?new URL(n,t):new URL(n)}var Ce=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GetIdTokenTestMode:v.MagicPayloadMethod.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.GenerateIdTokenTestMode:v.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(r)}getInfo(){return f(this,null,function*(){let e=yield R(this.localForageKey),r=u(v.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return O((e,r)=>f(this,null,function*(){try{let o=!1;this.sdk.useStorageCache&&(o=(yield R(this.localForageIsLoggedInKey))==="true",o&&e(!0));let s=u(this.sdk.testMode?v.MagicPayloadMethod.IsLoggedInTestMode:v.MagicPayloadMethod.IsLoggedIn),i=yield this.request(s);this.sdk.useStorageCache&&(i?C(this.localForageIsLoggedInKey,!0):S(this.localForageIsLoggedInKey),o&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(o){r(o)}}))}logout(){return S(this.localForageKey),S(this.localForageIsLoggedInKey),te(),O((e,r)=>f(this,null,function*(){try{let o=u(this.sdk.testMode?v.MagicPayloadMethod.LogoutTestMode:v.MagicPayloadMethod.Logout),s=yield this.request(o);this.sdk.useStorageCache&&this.emitUserLoggedOut(s),e(s)}catch(o){r(o)}}))}requestInfoWithUI(e){let r=u(v.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.UserSettingsTestMode:v.MagicPayloadMethod.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?v.MagicPayloadMethod.RecoverAccountTestMode:v.MagicPayloadMethod.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(v.MagicPayloadMethod.RevealPK);return this.request(e)}getMetadata(){U({method:"user.getMetadata()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?v.MagicPayloadMethod.GetMetadataTestMode:v.MagicPayloadMethod.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(v.MagicPayloadMethod.EnableMFA);return this.request(e)}disableMFA(){let e=u(v.MagicPayloadMethod.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};var y=require("@magic-sdk/types");var Ne=class extends x{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=O((r,o)=>f(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled(y.Wallets.MetaMask))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled(y.Wallets.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser(y.Wallets.CoinbaseWallet);r(l);return}let s=this.getUserEnv(),i=u(y.MagicPayloadMethod.Login,[s]),a=this.request(i);a.on(y.Events.WalletSelected,l=>this.handleWalletSelected(H(V({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&o(c),r(c)}catch(s){o(s)}}));return e}showUI(e){return this.request(u(y.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(u(y.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(u(y.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(u(y.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(u(y.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(u(y.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(y.MagicPayloadMethod.SendGaslessTransaction,[e,r]))}getInfo(){return f(this,null,function*(){U({method:"wallet.getInfo()",removalVersions:B,useInstead:"user.getInfo()"}).log();let e=yield R(this.localForageKey),r=u(y.MagicPayloadMethod.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){U({method:"wallet.disconnect()",removalVersions:B,useInstead:"user.logout()"}).log(),S(this.localForageKey),te();let e=u(y.MagicPayloadMethod.Disconnect);return this.request(e)}requestUserInfoWithUI(e){U({method:"wallet.requestUserInfoWithUI()",removalVersions:B,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(y.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return f(this,null,function*(){switch(yield R(this.localForageKey)){case y.Wallets.MetaMask:return this.getMetaMaskProvider();case y.Wallets.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case y.Wallets.MetaMask:return this.connectToMetaMask();case y.Wallets.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return f(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield C(this.localForageKey,e.wallet),this.createIntermediaryEvent(y.Events.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(y.Events.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return f(this,null,function*(){let r;e===y.Wallets.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===y.Wallets.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield C(this.localForageKey,e);let o=u(y.MagicPayloadMethod.AutoConnect,[{wallet:e,address:r}]);return this.request(o)})}};var ue=require("@magic-sdk/types");var{createBoundEmitterMethod:Ae,createChainingEmitterMethod:ne}=le(),Se=class extends x{constructor(){super(...arguments);this.isMagic=!0;this.on=ne("on",this);this.once=ne("once",this);this.addListener=ne("addListener",this);this.off=ne("off",this);this.removeListener=ne("removeListener",this);this.removeAllListeners=ne("removeAllListeners",this);this.emit=Ae("emit");this.eventNames=Ae("eventNames");this.listeners=Ae("listeners");this.listenerCount=Ae("listenerCount")}sendAsync(e,r){if(!r)throw Be({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(o=>{let s=j(o);return this.prefixPayloadMethodForTestMode(s),s})).then(o=>{r(null,o.map(s=>H(V({},s.payload),{error:s.hasError?new L(s.payload.error):null})))});else{let o=j(e);this.prefixPayloadMethodForTestMode(o),this.overlay.post(ue.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,o).then(s=>{r(s.hasError?new L(s.payload.error):null,s.payload)})}}send(e,r){if(typeof e=="string"){let s=u(e,Array.isArray(r)?r:[]);return this.request(s)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let o=Ve();return o.log(),new F(e).applyError({code:-32603,message:o.rawMessage}).payload}enable(){let e=u(ue.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Ut=["request","overlay","sdk"];function lr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==x.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var $e=class extends x{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:O,isPromiEvent:ze,encodeJSON:ae,decodeJSON:De,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:j,storage:Z};let e=[this,...lr(this)];Ut.forEach(r=>{let o=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),s=o.findIndex(c=>!!c),i=s>0,a=o[s];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw Ke(r)}}))})}init(e){this.__is_initialized__||(Ut.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:o,isPrototypeField:s}=this.__sdk_access_field_descriptors__.get(r);s?delete this[r]:Object.defineProperty(this,r,o)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:o,useInstead:s}=e,i=s?` Use \`${s}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${o}\`.${i}`;return new Y(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new Y(this,e,r)}createError(e,r,o){return new K(this,e,r,o)}},ot=class extends $e{},_=class extends $e{};_.Internal=ot,_.Anonymous="anonymous extension";var Le=require("@magic-sdk/types");var Oe=class extends x{purchase(t){let e=u(Le.MagicPayloadMethod.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(Le.MagicPayloadMethod.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(Le.MagicPayloadMethod.NFTTransfer,[t]);return this.request(e)}};function Wt(n){return n.compat&&n.compat[m.sdkName]!=null?typeof n.compat[m.sdkName]=="string"?It(bt(m.version),n.compat[m.sdkName]):!!n.compat[m.sdkName]:!0}function dr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function ur(n){var o;let t=(o=n==null?void 0:n.extensions)!=null?o:[],e={},r=[];if(Array.isArray(t)?t.forEach(s=>{Wt(s)?(s.init(this),(s.name||s.name!==_.Anonymous)&&(this[s.name]=s),s instanceof _.Internal&&(z(s.config)||(e[s.name]=s.config))):r.push(s)}):Object.keys(t).forEach(s=>{if(Wt(t[s])){t[s].init(this);let i=t[s];this[s]=i,i instanceof _.Internal&&(z(i.config)||(e[t[s].name]=i.config))}else r.push(t[s])}),r.length)throw je(r);return e}var he=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw Fe();m.platform==="react-native"&&(e==null?void 0:e.endpoint)&&He().log();let{defaultEndpoint:r,version:o}=m;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=xe((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new we(this),this.user=new Ce(this),this.wallet=new Ne(this),this.nft=new Oe(this),this.rpcProvider=new Se(this);let s=ur.call(this,e);this.parameters=ae(H(V({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:xe(this.endpoint).host,sdk:Pt[m.sdkName],version:o,ext:z(s)?void 0:s,locale:(e==null?void 0:e.locale)||"en_US"},m.bundleId?{bundleId:m.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=dr(this.apiKey,e==null?void 0:e.network,z(s)?void 0:s),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!he.__overlays__.has(this.parameters)){let t=new m.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),he.__overlays__.set(this.parameters,t)}return he.__overlays__.get(this.parameters)}preload(){return f(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},pe=he;pe.__overlays__=new Map;var G=require("@magic-sdk/types");function pr(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function hr(n,t){var o;let e=(o=t.data.response)==null?void 0:o.id,r=pr(n,e);if(e&&r){let s=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:s}}return{}}function mr(n,t,e){return f(this,null,function*(){var a;let r=yield R("rt"),o;if(m.platform==="web")try{o=(a=yield R("jwt"))!=null?a:yield et()}catch(c){console.error("webcrypto error",c)}let s={msgType:n,payload:t};o&&(s.jwt=o),o&&r&&(s.rt=r);let i=yield Dt(e);return i&&(s.deviceShare=i),s})}function fr(n){return f(this,null,function*(){!n.data.rt||(yield C("rt",n.data.rt))})}var _e=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return f(this,null,function*(){return be((r,o)=>f(this,null,function*(){if(!this.isConnectedToInternet){let d=Je();o(d)}this.isReadyForRequest||(yield this.waitForReady());let s=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield mr(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>h=>{var it;let{id:N,response:I}=hr(e,h);if(fr(h),((it=I==null?void 0:I.payload.error)==null?void 0:it.message)==="User denied account access.")te();else if(h.data.deviceShare){let{deviceShare:Ft}=h.data;qt(Ft,this.networkHash)}N&&I&&Array.isArray(e)&&i.includes(N)?(s.push(I),s.length===e.length&&(d(),r(s))):N&&I&&!Array.isArray(e)&&N===e.id&&(d(),r(I))},l=this.on(G.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),o=s=>{s.data.msgType===`${t}-${this.parameters}`&&r(s)};return this.messageHandlers.add(o),()=>this.messageHandlers.delete(o)}waitForReady(){return new Promise(t=>{let e=this.on(G.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(G.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(G.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new D(G.SDKWarningCode.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};
//# sourceMappingURL=index.js.map

@@ -1,6 +0,6 @@

var Gt=Object.create;var ue=Object.defineProperty,Kt=Object.defineProperties,jt=Object.getOwnPropertyDescriptor,Bt=Object.getOwnPropertyDescriptors,Vt=Object.getOwnPropertyNames,He=Object.getOwnPropertySymbols,Ht=Object.getPrototypeOf,ze=Object.prototype.hasOwnProperty,Xt=Object.prototype.propertyIsEnumerable;var Xe=(n,t,e)=>t in n?ue(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,B=(n,t)=>{for(var e in t||(t={}))ze.call(t,e)&&Xe(n,e,t[e]);if(He)for(var e of He(t))Xt.call(t,e)&&Xe(n,e,t[e]);return n},V=(n,t)=>Kt(n,Bt(t));var zt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),Yt=(n,t)=>{for(var e in t)ue(n,e,{get:t[e],enumerable:!0})},Qt=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Vt(t))!ze.call(n,s)&&s!==e&&ue(n,s,{get:()=>t[s],enumerable:!(r=jt(t,s))||r.enumerable});return n};var Zt=(n,t,e)=>(e=n!=null?Gt(Ht(n)):{},Qt(t||!n||!n.__esModule?ue(e,"default",{value:n,enumerable:!0}):e,n));var m=(n,t,e)=>new Promise((r,s)=>{var o=c=>{try{a(e.next(c))}catch(l){s(l)}},i=c=>{try{a(e.throw(c))}catch(l){s(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(o,i);a((e=e.apply(n,t)).next())});var wt=zt((jr,Le)=>{"use strict";var Xn=Object.prototype.hasOwnProperty,w="~";function ie(){}Object.create&&(ie.prototype=Object.create(null),new ie().__proto__||(w=!1));function zn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function bt(n,t,e,r,s){if(typeof e!="function")throw new TypeError("The listener must be a function");var o=new zn(e,r||n,s),i=w?w+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],o]:n._events[i].push(o):(n._events[i]=o,n._eventsCount++),n}function ge(n,t){--n._eventsCount===0?n._events=new ie:delete n._events[t]}function I(){this._events=new ie,this._eventsCount=0}I.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)Xn.call(e,r)&&t.push(w?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};I.prototype.listeners=function(t){var e=w?w+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var s=0,o=r.length,i=new Array(o);s<o;s++)i[s]=r[s].fn;return i};I.prototype.listenerCount=function(t){var e=w?w+t:t,r=this._events[e];return r?r.fn?1:r.length:0};I.prototype.emit=function(t,e,r,s,o,i){var a=w?w+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,p;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,s),!0;case 5:return c.fn.call(c.context,e,r,s,o),!0;case 6:return c.fn.call(c.context,e,r,s,o,i),!0}for(p=1,d=new Array(l-1);p<l;p++)d[p-1]=arguments[p];c.fn.apply(c.context,d)}else{var x=c.length,v;for(p=0;p<x;p++)switch(c[p].once&&this.removeListener(t,c[p].fn,void 0,!0),l){case 1:c[p].fn.call(c[p].context);break;case 2:c[p].fn.call(c[p].context,e);break;case 3:c[p].fn.call(c[p].context,e,r);break;case 4:c[p].fn.call(c[p].context,e,r,s);break;default:if(!d)for(v=1,d=new Array(l-1);v<l;v++)d[v-1]=arguments[v];c[p].fn.apply(c[p].context,d)}}return!0};I.prototype.on=function(t,e,r){return bt(this,t,e,r,!1)};I.prototype.once=function(t,e,r){return bt(this,t,e,r,!0)};I.prototype.removeListener=function(t,e,r,s){var o=w?w+t:t;if(!this._events[o])return this;if(!e)return ge(this,o),this;var i=this._events[o];if(i.fn)i.fn===e&&(!s||i.once)&&(!r||i.context===r)&&ge(this,o);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||s&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:ge(this,o)}return this};I.prototype.removeAllListeners=function(t){var e;return t?(e=w?w+t:t,this._events[e]&&ge(this,e)):(this._events=new ie,this._eventsCount=0),this};I.prototype.off=I.prototype.removeListener;I.prototype.addListener=I.prototype.on;I.prefixed=w;I.EventEmitter=I;typeof Le<"u"&&(Le.exports=I)});function en(n){let t={exports:{}};return n(t,t.exports),t.exports}var tn=Number.MAX_SAFE_INTEGER||9007199254740991;var $e={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:tn,MAX_SAFE_COMPONENT_LENGTH:16},nn=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},f=nn,re=en(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=$e,r=(t=n.exports={}).re=[],s=t.src=[],o=t.t={},i=0,a=(c,l,d)=>{let p=i++;f(p,l),o[c]=p,s[p]=l,r[p]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})\\.(${s[o.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})\\.(${s[o.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${s[o.NUMERICIDENTIFIER]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${s[o.NUMERICIDENTIFIERLOOSE]}|${s[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${s[o.PRERELEASEIDENTIFIER]}(?:\\.${s[o.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${s[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${s[o.BUILDIDENTIFIER]}(?:\\.${s[o.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${s[o.MAINVERSION]}${s[o.PRERELEASE]}?${s[o.BUILD]}?`),a("FULL",`^${s[o.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${s[o.MAINVERSIONLOOSE]}${s[o.PRERELEASELOOSE]}?${s[o.BUILD]}?`),a("LOOSE",`^${s[o.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${s[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${s[o.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:\\.(${s[o.XRANGEIDENTIFIER]})(?:${s[o.PRERELEASE]})?${s[o.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[o.XRANGEIDENTIFIERLOOSE]})(?:${s[o.PRERELEASELOOSE]})?${s[o.BUILD]}?)?)?`),a("XRANGE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${s[o.GTLT]}\\s*${s[o.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",s[o.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${s[o.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${s[o.LONETILDE]}${s[o.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${s[o.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${s[o.LONECARET]}${s[o.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${s[o.LONECARET]}${s[o.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${s[o.GTLT]}\\s*(${s[o.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${s[o.GTLT]}\\s*(${s[o.LOOSEPLAIN]}|${s[o.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${s[o.XRANGEPLAIN]})\\s+-\\s+(${s[o.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${s[o.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[o.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),Ye=/^[0-9]+$/,it=(n,t)=>{let e=Ye.test(n),r=Ye.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},rn=(n,t)=>it(t,n),sn={compareIdentifiers:it,rcompareIdentifiers:rn},{MAX_LENGTH:Qe,MAX_SAFE_INTEGER:pe}=$e,{re:Ze,t:et}=re,{compareIdentifiers:te}=sn,E=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof E){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>Qe)throw new TypeError(`version is longer than ${Qe} characters`);f("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?Ze[et.LOOSE]:Ze[et.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>pe||this.major<0)throw new TypeError("Invalid major version");if(this.minor>pe||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>pe||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&o<pe)return o}return s}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(f("SemVer.compare",this.version,this.options,t),!(t instanceof E)){if(typeof t=="string"&&t===this.version)return 0;t=new E(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof E||(t=new E(t,this.options)),te(this.major,t.major)||te(this.minor,t.minor)||te(this.patch,t.patch)}comparePre(t){if(t instanceof E||(t=new E(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],s=t.prerelease[e];if(f("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return te(r,s)}while(++e)}compareBuild(t){t instanceof E||(t=new E(t,this.options));let e=0;do{let r=this.build[e],s=t.build[e];if(f("prerelease compare",e,r,s),r===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(r===void 0)return-1;if(r!==s)return te(r,s)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},on=(n,t,e)=>new E(n,e).compare(new E(t,e)),H=on,an=(n,t,e)=>H(n,t,e)===0,cn=an,ln=(n,t,e)=>H(n,t,e)!==0,dn=ln,un=(n,t,e)=>H(n,t,e)>0,pn=un,hn=(n,t,e)=>H(n,t,e)>=0,mn=hn,fn=(n,t,e)=>H(n,t,e)<0,En=fn,yn=(n,t,e)=>H(n,t,e)<=0,gn=yn,Rn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return cn(n,e,r);case"!=":return dn(n,e,r);case">":return pn(n,e,r);case">=":return mn(n,e,r);case"<":return En(n,e,r);case"<=":return gn(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},Ae=Rn,ne=Symbol("SemVer ANY"),D=class{static get ANY(){return ne}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof D){if(t.loose===!!e.loose)return t;t=t.value}f("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===ne?this.value="":this.value=this.operator+this.semver.version,f("comp",this)}parse(t){let e=this.options.loose?tt[nt.COMPARATORLOOSE]:tt[nt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new E(r[2],this.options.loose):this.semver=ne}toString(){return this.value}test(t){if(f("Comparator.test",t,this.options.loose),this.semver===ne||t===ne)return!0;if(typeof t=="string")try{t=new E(t,this.options)}catch(e){return!1}return Ae(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof D))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new L(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new L(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),s=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),o=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=Ae(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=Ae(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||s||o&&i||a||c}},{re:tt,t:nt}=re,L=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof L)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new L(t.raw,e);if(t instanceof D)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?T[R.HYPHENRANGELOOSE]:T[R.HYPHENRANGE];t=t.replace(r,Sn(this.options.includePrerelease)),f("hyphen replace",t),t=t.replace(T[R.COMPARATORTRIM],vn),f("comparator trim",t,T[R.COMPARATORTRIM]),t=(t=(t=t.replace(T[R.TILDETRIM],Tn)).replace(T[R.CARETTRIM],In)).split(/\s+/).join(" ");let s=e?T[R.COMPARATORLOOSE]:T[R.COMPARATOR];return t.split(" ").map(o=>bn(o,this.options)).join(" ").split(/\s+/).map(o=>$n(o,this.options)).filter(this.options.loose?o=>!!o.match(s):()=>!0).map(o=>new D(o,this.options))}intersects(t,e){if(!(t instanceof L))throw new TypeError("a Range is required");return this.set.some(r=>rt(r,e)&&t.set.some(s=>rt(s,e)&&r.every(o=>s.every(i=>o.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new E(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(Ln(this.set[e],t,this.options))return!0;return!1}},{re:T,t:R,comparatorTrimReplace:vn,tildeTrimReplace:Tn,caretTrimReplace:In}=re,rt=(n,t)=>{let e=!0,r=n.slice(),s=r.pop();for(;e&&r.length;)e=r.every(o=>s.intersects(o,t)),s=r.pop();return e},bn=(n,t)=>(f("comp",n,t),n=Mn(n,t),f("caret",n),n=wn(n,t),f("tildes",n),n=Nn(n,t),f("xrange",n),n=An(n,t),f("stars",n),n),b=n=>!n||n.toLowerCase()==="x"||n==="*",wn=(n,t)=>n.trim().split(/\s+/).map(e=>Pn(e,t)).join(" "),Pn=(n,t)=>{let e=t.loose?T[R.TILDELOOSE]:T[R.TILDE];return n.replace(e,(r,s,o,i,a)=>{let c;return f("tilde",n,r,s,o,i,a),b(s)?c="":b(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:b(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(f("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,f("tilde return",c),c})},Mn=(n,t)=>n.trim().split(/\s+/).map(e=>xn(e,t)).join(" "),xn=(n,t)=>{f("caret",n,t);let e=t.loose?T[R.CARETLOOSE]:T[R.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(s,o,i,a,c)=>{let l;return f("caret",n,s,o,i,a,c),b(o)?l="":b(i)?l=`>=${o}.0.0${r} <${+o+1}.0.0-0`:b(a)?l=o==="0"?`>=${o}.${i}.0${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${r} <${+o+1}.0.0-0`:c?(f("replaceCaret pr",c),l=o==="0"?i==="0"?`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(f("no pr"),l=o==="0"?i==="0"?`>=${o}.${i}.${a}${r} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${r} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),f("caret return",l),l})},Nn=(n,t)=>(f("replaceXRanges",n,t),n.split(/\s+/).map(e=>Cn(e,t)).join(" ")),Cn=(n,t)=>{n=n.trim();let e=t.loose?T[R.XRANGELOOSE]:T[R.XRANGE];return n.replace(e,(r,s,o,i,a,c)=>{f("xRange",n,r,s,o,i,a,c);let l=b(o),d=l||b(i),p=d||b(a),x=p;return s==="="&&x&&(s=""),c=t.includePrerelease?"-0":"",l?r=s===">"||s==="<"?"<0.0.0-0":"*":s&&x?(d&&(i=0),a=0,s===">"?(s=">=",d?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",d?o=+o+1:i=+i+1),s==="<"&&(c="-0"),r=`${s+o}.${i}.${a}${c}`):d?r=`>=${o}.0.0${c} <${+o+1}.0.0-0`:p&&(r=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),f("xRange return",r),r})},An=(n,t)=>(f("replaceStars",n,t),n.trim().replace(T[R.STAR],"")),$n=(n,t)=>(f("replaceGTE0",n,t),n.trim().replace(T[t.includePrerelease?R.GTE0PRE:R.GTE0],"")),Sn=n=>(t,e,r,s,o,i,a,c,l,d,p,x,v)=>`${e=b(r)?"":b(s)?`>=${r}.0.0${n?"-0":""}`:b(o)?`>=${r}.${s}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=b(l)?"":b(d)?`<${+l+1}.0.0-0`:b(p)?`<${l}.${+d+1}.0-0`:x?`<=${l}.${d}.${p}-${x}`:n?`<${l}.${d}.${+p+1}-0`:`<=${c}`}`.trim(),Ln=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(f(n[r].semver),n[r].semver!==D.ANY&&n[r].semver.prerelease.length>0){let s=n[r].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0},at=(n,t,e)=>{try{t=new L(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:On}=$e,{re:st,t:ot}=re,_n=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof E)return n;if(typeof n!="string"||n.length>On||!(t.loose?st[ot.LOOSE]:st[ot.FULL]).test(n))return null;try{return new E(n,t)}catch(e){return null}},kn=_n,{re:he,t:me}=re,ct=(n,t)=>{if(n instanceof E)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=he[me.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),he[me.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;he[me.COERCERTL].lastIndex=-1}else e=n.match(he[me.COERCE]);return e===null?null:kn(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function qn(n){return String.fromCharCode(parseInt(n.slice(1),16))}function Dn(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function Un(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,qn))}function Wn(n){return decodeURIComponent(Array.from(atob(n),Dn).join(""))}function fe(n){return Un(JSON.stringify(n))}function lt(n){return JSON.parse(Wn(n))}import{RPCErrorCode as jn,SDKErrorCode as z,SDKWarningCode as ye}from"@magic-sdk/types";import{MagicPayloadMethod as Fn,RPCErrorCode as Jn}from"@magic-sdk/types";function O(n){return typeof n=="undefined"}function Gn(n){return n===null}function Ee(n){return Gn(n)||O(n)}function $r(n){return Ee(n)?!1:!O(n.jsonrpc)&&!O(n.id)&&!O(n.method)&&!O(n.params)}function dt(n){return Ee(n)?!1:!O(n.jsonrpc)&&!O(n.id)&&(!O(n.result)||!O(n.error))}function Sr(n){return Ee(n)?!1:typeof n=="string"&&Object.values(Fn).includes(n)}function ut(n){return Ee(n)?!1:typeof n=="number"&&Object.values(Jn).includes(n)}function se(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var h={};function Kn(n,t){return Object.assign(h,t),n}var pt={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var $=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,$.prototype)}},_=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=ut(r)?r:jn.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,_.prototype)}},U=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},X=class extends Error{constructor(e,r,s,o){super(`Magic Extension Error (${e.name}): [${r}] ${s}`);this.code=r;this.rawMessage=s;this.data=o;this.__proto__=Error;Object.setPrototypeOf(this,X.prototype)}},oe=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function ht(){return new $(z.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function mt(){return new $(z.ModalNotReady,"Modal is not ready.")}function ft(){return new $(z.MalformedResponse,"Response from the Magic iframe is malformed.")}function Et(n){return new $(z.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function yt(n){let t=`Some extensions are incompatible with \`${h.sdkName}@${h.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[h.sdkName];typeof r=="string"?t+=`
var Kt=Object.create;var ue=Object.defineProperty,jt=Object.defineProperties,Bt=Object.getOwnPropertyDescriptor,Vt=Object.getOwnPropertyDescriptors,Ht=Object.getOwnPropertyNames,Xe=Object.getOwnPropertySymbols,Xt=Object.getPrototypeOf,Ye=Object.prototype.hasOwnProperty,zt=Object.prototype.propertyIsEnumerable;var ze=(n,t,e)=>t in n?ue(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,B=(n,t)=>{for(var e in t||(t={}))Ye.call(t,e)&&ze(n,e,t[e]);if(Xe)for(var e of Xe(t))zt.call(t,e)&&ze(n,e,t[e]);return n},V=(n,t)=>jt(n,Vt(t));var Yt=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),Qt=(n,t)=>{for(var e in t)ue(n,e,{get:t[e],enumerable:!0})},Zt=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ht(t))!Ye.call(n,o)&&o!==e&&ue(n,o,{get:()=>t[o],enumerable:!(r=Bt(t,o))||r.enumerable});return n};var en=(n,t,e)=>(e=n!=null?Kt(Xt(n)):{},Zt(t||!n||!n.__esModule?ue(e,"default",{value:n,enumerable:!0}):e,n));var m=(n,t,e)=>new Promise((r,o)=>{var s=c=>{try{a(e.next(c))}catch(l){o(l)}},i=c=>{try{a(e.throw(c))}catch(l){o(l)}},a=c=>c.done?r(c.value):Promise.resolve(c.value).then(s,i);a((e=e.apply(n,t)).next())});var Pt=Yt((Br,Oe)=>{"use strict";var zn=Object.prototype.hasOwnProperty,w="~";function ie(){}Object.create&&(ie.prototype=Object.create(null),new ie().__proto__||(w=!1));function Yn(n,t,e){this.fn=n,this.context=t,this.once=e||!1}function wt(n,t,e,r,o){if(typeof e!="function")throw new TypeError("The listener must be a function");var s=new Yn(e,r||n,o),i=w?w+t:t;return n._events[i]?n._events[i].fn?n._events[i]=[n._events[i],s]:n._events[i].push(s):(n._events[i]=s,n._eventsCount++),n}function ge(n,t){--n._eventsCount===0?n._events=new ie:delete n._events[t]}function I(){this._events=new ie,this._eventsCount=0}I.prototype.eventNames=function(){var t=[],e,r;if(this._eventsCount===0)return t;for(r in e=this._events)zn.call(e,r)&&t.push(w?r.slice(1):r);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};I.prototype.listeners=function(t){var e=w?w+t:t,r=this._events[e];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,s=r.length,i=new Array(s);o<s;o++)i[o]=r[o].fn;return i};I.prototype.listenerCount=function(t){var e=w?w+t:t,r=this._events[e];return r?r.fn?1:r.length:0};I.prototype.emit=function(t,e,r,o,s,i){var a=w?w+t:t;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,d,p;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,r),!0;case 4:return c.fn.call(c.context,e,r,o),!0;case 5:return c.fn.call(c.context,e,r,o,s),!0;case 6:return c.fn.call(c.context,e,r,o,s,i),!0}for(p=1,d=new Array(l-1);p<l;p++)d[p-1]=arguments[p];c.fn.apply(c.context,d)}else{var x=c.length,v;for(p=0;p<x;p++)switch(c[p].once&&this.removeListener(t,c[p].fn,void 0,!0),l){case 1:c[p].fn.call(c[p].context);break;case 2:c[p].fn.call(c[p].context,e);break;case 3:c[p].fn.call(c[p].context,e,r);break;case 4:c[p].fn.call(c[p].context,e,r,o);break;default:if(!d)for(v=1,d=new Array(l-1);v<l;v++)d[v-1]=arguments[v];c[p].fn.apply(c[p].context,d)}}return!0};I.prototype.on=function(t,e,r){return wt(this,t,e,r,!1)};I.prototype.once=function(t,e,r){return wt(this,t,e,r,!0)};I.prototype.removeListener=function(t,e,r,o){var s=w?w+t:t;if(!this._events[s])return this;if(!e)return ge(this,s),this;var i=this._events[s];if(i.fn)i.fn===e&&(!o||i.once)&&(!r||i.context===r)&&ge(this,s);else{for(var a=0,c=[],l=i.length;a<l;a++)(i[a].fn!==e||o&&!i[a].once||r&&i[a].context!==r)&&c.push(i[a]);c.length?this._events[s]=c.length===1?c[0]:c:ge(this,s)}return this};I.prototype.removeAllListeners=function(t){var e;return t?(e=w?w+t:t,this._events[e]&&ge(this,e)):(this._events=new ie,this._eventsCount=0),this};I.prototype.off=I.prototype.removeListener;I.prototype.addListener=I.prototype.on;I.prefixed=w;I.EventEmitter=I;typeof Oe<"u"&&(Oe.exports=I)});function tn(n){let t={exports:{}};return n(t,t.exports),t.exports}var nn=Number.MAX_SAFE_INTEGER||9007199254740991;var $e={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:nn,MAX_SAFE_COMPONENT_LENGTH:16},rn=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...n)=>console.error("SEMVER",...n):()=>{},f=rn,re=tn(function(n,t){let{MAX_SAFE_COMPONENT_LENGTH:e}=$e,r=(t=n.exports={}).re=[],o=t.src=[],s=t.t={},i=0,a=(c,l,d)=>{let p=i++;f(p,l),s[c]=p,o[p]=l,r[p]=new RegExp(l,d?"g":void 0)};a("NUMERICIDENTIFIER","0|[1-9]\\d*"),a("NUMERICIDENTIFIERLOOSE","[0-9]+"),a("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),a("MAINVERSION",`(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})\\.(${o[s.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})\\.(${o[s.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${o[s.NUMERICIDENTIFIER]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${o[s.NUMERICIDENTIFIERLOOSE]}|${o[s.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${o[s.PRERELEASEIDENTIFIER]}(?:\\.${o[s.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${o[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${o[s.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${o[s.BUILDIDENTIFIER]}(?:\\.${o[s.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${o[s.MAINVERSION]}${o[s.PRERELEASE]}?${o[s.BUILD]}?`),a("FULL",`^${o[s.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${o[s.MAINVERSIONLOOSE]}${o[s.PRERELEASELOOSE]}?${o[s.BUILD]}?`),a("LOOSE",`^${o[s.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${o[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${o[s.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:\\.(${o[s.XRANGEIDENTIFIER]})(?:${o[s.PRERELEASE]})?${o[s.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[s.XRANGEIDENTIFIERLOOSE]})(?:${o[s.PRERELEASELOOSE]})?${o[s.BUILD]}?)?)?`),a("XRANGE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${o[s.GTLT]}\\s*${o[s.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${e}})(?:\\.(\\d{1,${e}}))?(?:\\.(\\d{1,${e}}))?(?:$|[^\\d])`),a("COERCERTL",o[s.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${o[s.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",a("TILDE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${o[s.LONETILDE]}${o[s.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${o[s.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",a("CARET",`^${o[s.LONECARET]}${o[s.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${o[s.LONECARET]}${o[s.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${o[s.GTLT]}\\s*(${o[s.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${o[s.GTLT]}\\s*(${o[s.LOOSEPLAIN]}|${o[s.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${o[s.XRANGEPLAIN]})\\s+-\\s+(${o[s.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${o[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${o[s.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),Qe=/^[0-9]+$/,at=(n,t)=>{let e=Qe.test(n),r=Qe.test(t);return e&&r&&(n=+n,t=+t),n===t?0:e&&!r?-1:r&&!e?1:n<t?-1:1},sn=(n,t)=>at(t,n),on={compareIdentifiers:at,rcompareIdentifiers:sn},{MAX_LENGTH:Ze,MAX_SAFE_INTEGER:pe}=$e,{re:et,t:tt}=re,{compareIdentifiers:te}=on,E=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof E){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid Version: ${t}`);if(t.length>Ze)throw new TypeError(`version is longer than ${Ze} characters`);f("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;let r=t.trim().match(e.loose?et[tt.LOOSE]:et[tt.FULL]);if(!r)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>pe||this.major<0)throw new TypeError("Invalid major version");if(this.minor>pe||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>pe||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map(o=>{if(/^[0-9]+$/.test(o)){let s=+o;if(s>=0&&s<pe)return s}return o}):this.prerelease=[],this.build=r[5]?r[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(f("SemVer.compare",this.version,this.options,t),!(t instanceof E)){if(typeof t=="string"&&t===this.version)return 0;t=new E(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof E||(t=new E(t,this.options)),te(this.major,t.major)||te(this.minor,t.minor)||te(this.patch,t.patch)}comparePre(t){if(t instanceof E||(t=new E(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{let r=this.prerelease[e],o=t.prerelease[e];if(f("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return te(r,o)}while(++e)}compareBuild(t){t instanceof E||(t=new E(t,this.options));let e=0;do{let r=this.build[e],o=t.build[e];if(f("prerelease compare",e,r,o),r===void 0&&o===void 0)return 0;if(o===void 0)return 1;if(r===void 0)return-1;if(r!==o)return te(r,o)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",e),this.inc("pre",e);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]=="number"&&(this.prerelease[r]++,r=-2);r===-1&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}},an=(n,t,e)=>new E(n,e).compare(new E(t,e)),H=an,cn=(n,t,e)=>H(n,t,e)===0,ln=cn,dn=(n,t,e)=>H(n,t,e)!==0,un=dn,pn=(n,t,e)=>H(n,t,e)>0,hn=pn,mn=(n,t,e)=>H(n,t,e)>=0,fn=mn,En=(n,t,e)=>H(n,t,e)<0,yn=En,gn=(n,t,e)=>H(n,t,e)<=0,Rn=gn,vn=(n,t,e,r)=>{switch(t){case"===":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n===e;case"!==":return typeof n=="object"&&(n=n.version),typeof e=="object"&&(e=e.version),n!==e;case"":case"=":case"==":return ln(n,e,r);case"!=":return un(n,e,r);case">":return hn(n,e,r);case">=":return fn(n,e,r);case"<":return yn(n,e,r);case"<=":return Rn(n,e,r);default:throw new TypeError(`Invalid operator: ${t}`)}},Se=vn,ne=Symbol("SemVer ANY"),D=class{static get ANY(){return ne}constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof D){if(t.loose===!!e.loose)return t;t=t.value}f("comparator",t,e),this.options=e,this.loose=!!e.loose,this.parse(t),this.semver===ne?this.value="":this.value=this.operator+this.semver.version,f("comp",this)}parse(t){let e=this.options.loose?nt[rt.COMPARATORLOOSE]:nt[rt.COMPARATOR],r=t.match(e);if(!r)throw new TypeError(`Invalid comparator: ${t}`);this.operator=r[1]!==void 0?r[1]:"",this.operator==="="&&(this.operator=""),r[2]?this.semver=new E(r[2],this.options.loose):this.semver=ne}toString(){return this.value}test(t){if(f("Comparator.test",t,this.options.loose),this.semver===ne||t===ne)return!0;if(typeof t=="string")try{t=new E(t,this.options)}catch(e){return!1}return Se(t,this.operator,this.semver,this.options)}intersects(t,e){if(!(t instanceof D))throw new TypeError("a Comparator is required");if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),this.operator==="")return this.value===""||new L(t.value,e).test(this.value);if(t.operator==="")return t.value===""||new L(this.value,e).test(t.semver);let r=!(this.operator!==">="&&this.operator!==">"||t.operator!==">="&&t.operator!==">"),o=!(this.operator!=="<="&&this.operator!=="<"||t.operator!=="<="&&t.operator!=="<"),s=this.semver.version===t.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||t.operator!==">="&&t.operator!=="<="),a=Se(this.semver,"<",t.semver,e)&&(this.operator===">="||this.operator===">")&&(t.operator==="<="||t.operator==="<"),c=Se(this.semver,">",t.semver,e)&&(this.operator==="<="||this.operator==="<")&&(t.operator===">="||t.operator===">");return r||o||s&&i||a||c}},{re:nt,t:rt}=re,L=class{constructor(t,e){if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),t instanceof L)return t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease?t:new L(t.raw,e);if(t instanceof D)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease,this.raw=t,this.set=t.split(/\s*\|\|\s*/).map(r=>this.parseRange(r.trim())).filter(r=>r.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${t}`);this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let{loose:e}=this.options;t=t.trim();let r=e?T[R.HYPHENRANGELOOSE]:T[R.HYPHENRANGE];t=t.replace(r,Ln(this.options.includePrerelease)),f("hyphen replace",t),t=t.replace(T[R.COMPARATORTRIM],Tn),f("comparator trim",t,T[R.COMPARATORTRIM]),t=(t=(t=t.replace(T[R.TILDETRIM],In)).replace(T[R.CARETTRIM],bn)).split(/\s+/).join(" ");let o=e?T[R.COMPARATORLOOSE]:T[R.COMPARATOR];return t.split(" ").map(s=>wn(s,this.options)).join(" ").split(/\s+/).map(s=>$n(s,this.options)).filter(this.options.loose?s=>!!s.match(o):()=>!0).map(s=>new D(s,this.options))}intersects(t,e){if(!(t instanceof L))throw new TypeError("a Range is required");return this.set.some(r=>st(r,e)&&t.set.some(o=>st(o,e)&&r.every(s=>o.every(i=>s.intersects(i,e)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new E(t,this.options)}catch(e){return!1}for(let e=0;e<this.set.length;e++)if(On(this.set[e],t,this.options))return!0;return!1}},{re:T,t:R,comparatorTrimReplace:Tn,tildeTrimReplace:In,caretTrimReplace:bn}=re,st=(n,t)=>{let e=!0,r=n.slice(),o=r.pop();for(;e&&r.length;)e=r.every(s=>o.intersects(s,t)),o=r.pop();return e},wn=(n,t)=>(f("comp",n,t),n=xn(n,t),f("caret",n),n=Pn(n,t),f("tildes",n),n=Nn(n,t),f("xrange",n),n=Sn(n,t),f("stars",n),n),b=n=>!n||n.toLowerCase()==="x"||n==="*",Pn=(n,t)=>n.trim().split(/\s+/).map(e=>Mn(e,t)).join(" "),Mn=(n,t)=>{let e=t.loose?T[R.TILDELOOSE]:T[R.TILDE];return n.replace(e,(r,o,s,i,a)=>{let c;return f("tilde",n,r,o,s,i,a),b(o)?c="":b(s)?c=`>=${o}.0.0 <${+o+1}.0.0-0`:b(i)?c=`>=${o}.${s}.0 <${o}.${+s+1}.0-0`:a?(f("replaceTilde pr",a),c=`>=${o}.${s}.${i}-${a} <${o}.${+s+1}.0-0`):c=`>=${o}.${s}.${i} <${o}.${+s+1}.0-0`,f("tilde return",c),c})},xn=(n,t)=>n.trim().split(/\s+/).map(e=>Cn(e,t)).join(" "),Cn=(n,t)=>{f("caret",n,t);let e=t.loose?T[R.CARETLOOSE]:T[R.CARET],r=t.includePrerelease?"-0":"";return n.replace(e,(o,s,i,a,c)=>{let l;return f("caret",n,o,s,i,a,c),b(s)?l="":b(i)?l=`>=${s}.0.0${r} <${+s+1}.0.0-0`:b(a)?l=s==="0"?`>=${s}.${i}.0${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.0${r} <${+s+1}.0.0-0`:c?(f("replaceCaret pr",c),l=s==="0"?i==="0"?`>=${s}.${i}.${a}-${c} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}-${c} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a}-${c} <${+s+1}.0.0-0`):(f("no pr"),l=s==="0"?i==="0"?`>=${s}.${i}.${a}${r} <${s}.${i}.${+a+1}-0`:`>=${s}.${i}.${a}${r} <${s}.${+i+1}.0-0`:`>=${s}.${i}.${a} <${+s+1}.0.0-0`),f("caret return",l),l})},Nn=(n,t)=>(f("replaceXRanges",n,t),n.split(/\s+/).map(e=>An(e,t)).join(" ")),An=(n,t)=>{n=n.trim();let e=t.loose?T[R.XRANGELOOSE]:T[R.XRANGE];return n.replace(e,(r,o,s,i,a,c)=>{f("xRange",n,r,o,s,i,a,c);let l=b(s),d=l||b(i),p=d||b(a),x=p;return o==="="&&x&&(o=""),c=t.includePrerelease?"-0":"",l?r=o===">"||o==="<"?"<0.0.0-0":"*":o&&x?(d&&(i=0),a=0,o===">"?(o=">=",d?(s=+s+1,i=0,a=0):(i=+i+1,a=0)):o==="<="&&(o="<",d?s=+s+1:i=+i+1),o==="<"&&(c="-0"),r=`${o+s}.${i}.${a}${c}`):d?r=`>=${s}.0.0${c} <${+s+1}.0.0-0`:p&&(r=`>=${s}.${i}.0${c} <${s}.${+i+1}.0-0`),f("xRange return",r),r})},Sn=(n,t)=>(f("replaceStars",n,t),n.trim().replace(T[R.STAR],"")),$n=(n,t)=>(f("replaceGTE0",n,t),n.trim().replace(T[t.includePrerelease?R.GTE0PRE:R.GTE0],"")),Ln=n=>(t,e,r,o,s,i,a,c,l,d,p,x,v)=>`${e=b(r)?"":b(o)?`>=${r}.0.0${n?"-0":""}`:b(s)?`>=${r}.${o}.0${n?"-0":""}`:i?`>=${e}`:`>=${e}${n?"-0":""}`} ${c=b(l)?"":b(d)?`<${+l+1}.0.0-0`:b(p)?`<${l}.${+d+1}.0-0`:x?`<=${l}.${d}.${p}-${x}`:n?`<${l}.${d}.${+p+1}-0`:`<=${c}`}`.trim(),On=(n,t,e)=>{for(let r=0;r<n.length;r++)if(!n[r].test(t))return!1;if(t.prerelease.length&&!e.includePrerelease){for(let r=0;r<n.length;r++)if(f(n[r].semver),n[r].semver!==D.ANY&&n[r].semver.prerelease.length>0){let o=n[r].semver;if(o.major===t.major&&o.minor===t.minor&&o.patch===t.patch)return!0}return!1}return!0},ct=(n,t,e)=>{try{t=new L(t,e)}catch(r){return!1}return t.test(n)};var{MAX_LENGTH:_n}=$e,{re:ot,t:it}=re,kn=(n,t)=>{if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),n instanceof E)return n;if(typeof n!="string"||n.length>_n||!(t.loose?ot[it.LOOSE]:ot[it.FULL]).test(n))return null;try{return new E(n,t)}catch(e){return null}},qn=kn,{re:he,t:me}=re,lt=(n,t)=>{if(n instanceof E)return n;if(typeof n=="number"&&(n=String(n)),typeof n!="string")return null;let e=null;if((t=t||{}).rtl){let r;for(;(r=he[me.COERCERTL].exec(n))&&(!e||e.index+e[0].length!==n.length);)e&&r.index+r[0].length===e.index+e[0].length||(e=r),he[me.COERCERTL].lastIndex=r.index+r[1].length+r[2].length;he[me.COERCERTL].lastIndex=-1}else e=n.match(he[me.COERCE]);return e===null?null:qn(`${e[2]}.${e[3]||"0"}.${e[4]||"0"}`,t)};function Dn(n){return String.fromCharCode(parseInt(n.slice(1),16))}function Un(n){return`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`}function Wn(n){return btoa(encodeURIComponent(n).replace(/%[0-9A-F]{2}/g,Dn))}function Fn(n){return decodeURIComponent(Array.from(atob(n),Un).join(""))}function fe(n){return Wn(JSON.stringify(n))}function dt(n){return JSON.parse(Fn(n))}import{RPCErrorCode as Bn,SDKErrorCode as z,SDKWarningCode as ye}from"@magic-sdk/types";import{MagicPayloadMethod as Jn,RPCErrorCode as Gn}from"@magic-sdk/types";function O(n){return typeof n=="undefined"}function Kn(n){return n===null}function Ee(n){return Kn(n)||O(n)}function $r(n){return Ee(n)?!1:!O(n.jsonrpc)&&!O(n.id)&&!O(n.method)&&!O(n.params)}function ut(n){return Ee(n)?!1:!O(n.jsonrpc)&&!O(n.id)&&(!O(n.result)||!O(n.error))}function Lr(n){return Ee(n)?!1:typeof n=="string"&&Object.values(Jn).includes(n)}function pt(n){return Ee(n)?!1:typeof n=="number"&&Object.values(Gn).includes(n)}function se(n){if(!n)return!0;for(let t in n)if(Object.hasOwnProperty.call(n,t))return!1;return!0}var h={};function jn(n,t){return Object.assign(h,t),n}var ht={"magic-sdk":"magic-sdk","@magic-sdk/react-native":"magic-sdk-rn","@magic-sdk/react-native-bare":"magic-sdk-rn-bare","@magic-sdk/react-native-expo":"magic-sdk-rn-expo"};var S=class extends Error{constructor(e,r){super(`Magic SDK Error: [${e}] ${r}`);this.code=e;this.rawMessage=r;this.__proto__=Error;Object.setPrototypeOf(this,S.prototype)}},_=class extends Error{constructor(e){super();this.__proto__=Error;let r=Number(e==null?void 0:e.code);this.rawMessage=(e==null?void 0:e.message)||"Internal error",this.code=pt(r)?r:Bn.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=(e==null?void 0:e.data)||void 0,Object.setPrototypeOf(this,_.prototype)}},U=class{constructor(t,e){this.code=t;this.rawMessage=e;this.message=`Magic SDK Warning: [${t}] ${e}`}log(){console.warn(this.message)}},X=class extends Error{constructor(e,r,o,s){super(`Magic Extension Error (${e.name}): [${r}] ${o}`);this.code=r;this.rawMessage=o;this.data=s;this.__proto__=Error;Object.setPrototypeOf(this,X.prototype)}},oe=class{constructor(t,e,r){this.code=e;this.rawMessage=r;this.message=`Magic Extension Warning (${t.name}): [${e}] ${r}`}log(){console.warn(this.message)}};function mt(){return new S(z.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function ft(){return new S(z.ModalNotReady,"Modal is not ready.")}function Et(){return new S(z.MalformedResponse,"Response from the Magic iframe is malformed.")}function yt(n){return new S(z.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${n}\` can be accessed. Do not invoke \`Extension.${n}\` inside an extension constructor.`)}function gt(n){let t=`Some extensions are incompatible with \`${h.sdkName}@${h.version}\`:`;return n.filter(e=>typeof e.compat!="undefined"&&e.compat!==null).forEach(e=>{let r=e.compat[h.sdkName];typeof r=="string"?t+=`
- Extension \`${e.name}\` supports version(s) \`${r}\``:r||(t+=`
- Extension \`${e.name}\` does not support ${h.platform} environments.`)}),new $(z.IncompatibleExtensions,t)}function gt(n){let t=e=>{let r=e+1,s=r%10,o=r%100;return s===1&&o!==11?`${r}st`:s===2&&o!==12?`${r}nd`:s===3&&o!==13?`${r}rd`:`${r}th`};return new $(z.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
- Extension \`${e.name}\` does not support ${h.platform} environments.`)}),new S(z.IncompatibleExtensions,t)}function Rt(n){let t=e=>{let r=e+1,o=r%10,s=r%100;return o===1&&s!==11?`${r}st`:o===2&&s!==12?`${r}nd`:o===3&&s!==13?`${r}rd`:`${r}th`};return new S(z.InvalidArgument,`Invalid ${t(n.argument)} argument given to \`${n.procedure}\`.
Expected: \`${n.expected}\`
Received: \`${n.received}\``)}function Ur(){return new U(ye.DuplicateIframe,"Duplicate iframes found.")}function Rt(){return new U(ye.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function vt(){return new U(ye.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${h.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function W(n){let{method:t,removalVersions:e,useInstead:r}=n,s=e[h.sdkName],o=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${h.sdkName}\` in version \`${s}\`.${o}`;return new U(ye.DeprecationNotice,i)}import{MagicPayloadMethod as A,DeviceVerificationEventEmit as Ct,LoginWithEmailOTPEventEmit as Y,UpdateEmailEventEmit as Q,RecencyCheckEventEmit as J}from"@magic-sdk/types";import{MagicOutgoingWindowMessage as Zn,MagicIncomingWindowMessage as er,MagicPayloadMethod as tr}from"@magic-sdk/types";function*Bn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Vn=Bn();function Se(){return Vn.next().value}var Tt=Symbol("Payload pre-processed by Magic SDK");function It(n){return Object.defineProperty(n,Tt,{value:!0,enumerable:!1}),n}function Hn(n){return!!n[Tt]}function K(n){var t,e,r;return Hn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Se(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],It(n)),n}function u(n,t=[]){return It({params:t,method:n,jsonrpc:"2.0",id:Se()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):dt(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};import{UserEventsEmit as Yn,UserEventsOnReceived as Qn}from"@magic-sdk/types";var Pt=Zt(wt()),Oe=class extends Pt.default{};function Re(){let n=new Oe;return{emitter:n,createChainingEmitterMethod:(r,s)=>(...o)=>(n[r].apply(n,o),s),createBoundEmitterMethod:r=>(...s)=>n[r].apply(n,s)}}var Mt=Symbol("isPromiEvent");function xt(n){return!!n[Mt]}function k(n){let t=_e(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=Re(),s=Symbol("Promise.then"),o=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,p)=>(...x)=>{let v=p[d].apply(p,x);return c(v)},c=d=>Object.assign(d,{[Mt]:!0,[s]:d[s]||d.then,[o]:d[o]||d.catch,[i]:d[i]||d.finally,then:a(s,d),catch:a(o,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Qn.ClosedByUser,()=>{l.emit(Yn.ClosedByUser)}),l}function _e(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var P=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(Zn.MAGIC_HANDLE_REQUEST,K(t)),r=k((o,i)=>{e.then(a=>{if(s(),a.hasError)i(new _(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw ft()}).catch(a=>{s(),i(a)})}),s=this.overlay.on(er.MAGIC_HANDLE_EVENT,o=>{var a;let{response:i}=o.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return s=>{let o=u(tr.IntermediaryEvent,[{payloadId:e,eventType:t,args:s}]);this.request(o)}}};function Nt(n,t){let[e]=n.split(".").map(Number);return e>=t}var j={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},ve=class extends P{loginWithMagicLink(t){let e=h.sdkName==="@magic-sdk/react-native"||h.sdkName==="@magic-sdk/react-native-bare"||h.sdkName==="@magic-sdk/react-native-expo";if(e&&Nt(h.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&W({method:"auth.loginWithMagicLink()",removalVersions:j,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:s=!0,redirectURI:o,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?A.LoginWithMagicLinkTestMode:A.LoginWithMagicLink,[{email:r,showUI:s,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,lifespan:r}=t,s=u(this.sdk.testMode?A.LoginWithSmsTestMode:A.LoginWithSms,[{phoneNumber:e,showUI:!0,lifespan:r}]);return this.request(s)}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}=t,a=u(this.sdk.testMode?A.LoginWithEmailOTPTestMode:A.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:s,overrides:o,lifespan:i}]),c=this.request(a);return!s&&c&&c.on(Ct.Retry,()=>{this.createIntermediaryEvent(Ct.Retry,a.id)()}),!r&&c&&(c.on(Y.VerifyEmailOtp,l=>{this.createIntermediaryEvent(Y.VerifyEmailOtp,a.id)(l)}),c.on(Y.VerifyMFACode,l=>{this.createIntermediaryEvent(Y.VerifyMFACode,a.id)(l)}),c.on(Y.Cancel,()=>{this.createIntermediaryEvent(Y.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},s=e!=null?e:"";if(!e&&h.platform==="web"){s=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let o=u(this.sdk.testMode?A.LoginWithCredentialTestMode:A.LoginWithCredential,[s,r]);return this.request(o)}setAuthorizationToken(t){let e=u(A.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,s=u(this.sdk.testMode?A.UpdateEmailTestMode:A.UpdateEmail,[{email:e,showUI:r}]),o=this.request(s);return r||(o.on(J.Retry,()=>{this.createIntermediaryEvent(J.Retry,s.id)()}),o.on(J.Cancel,()=>{this.createIntermediaryEvent(J.Cancel,s.id)()}),o.on(J.VerifyEmailOtp,i=>{this.createIntermediaryEvent(J.VerifyEmailOtp,s.id)(i)}),o.on(J.VerifyMFACode,i=>{this.createIntermediaryEvent(J.VerifyMFACode,s.id)(i)}),o.on(Q.RetryWithNewEmail,i=>{this.createIntermediaryEvent(Q.RetryWithNewEmail,s.id)(i)}),o.on(Q.Cancel,()=>{this.createIntermediaryEvent(Q.Cancel,s.id)()}),o.on(Q.VerifyEmailOtp,i=>{this.createIntermediaryEvent(Q.VerifyEmailOtp,s.id)(i)})),o}};import{MagicPayloadMethod as g}from"@magic-sdk/types";var ae={};Yt(ae,{clear:()=>nr,getItem:()=>y,iterate:()=>ke,key:()=>sr,keys:()=>or,length:()=>rr,removeItem:()=>N,setItem:()=>M});var Te;function G(n){return(...t)=>m(this,null,function*(){return Te||(Te=yield h.configureStorage()),yield Te.ready(),Te[n](...t)})}var y=G("getItem"),M=G("setItem"),N=G("removeItem"),nr=G("clear"),rr=G("length"),sr=G("key"),or=G("keys"),ke=G("iterate");function At(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var qe="STORE_KEY_PRIVATE_KEY",Ie="STORE_KEY_PUBLIC_JWK",St="ECDSA",ir="P-256",ar={name:St,namedCurve:ir};function ce(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function Ps(){N(Ie),N(qe)}function Lt(){return m(this,null,function*(){let n=yield cr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield y(qe);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:At()},s={typ:"dpop+jwt",alg:"ES256",jwk:n},o={protected:$t(JSON.stringify(s)),claims:$t(JSON.stringify(r))},i=dr(`${o.protected}.${o.claims}`),a={name:St,hash:{name:"SHA-256"}},c=pr(new Uint8Array(yield t.sign(a,e,i)));return`${o.protected}.${o.claims}.${c}`})}function cr(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}return(yield y(Ie))||(yield lr()),y(Ie)})}function lr(){return m(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(ar,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield M(qe,t.privateKey),yield M(Ie,e)})}function $t(n){return Ot(ur(n))}function dr(n){return new TextEncoder().encode(n)}function Ot(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function ur(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function pr(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),Ot(t)}var De="ds",Ue="ek",We="iv",Fe="AES-GCM",hr=256;function Z(){return m(this,null,function*(){let n=[];yield ke((t,e,r)=>{e.startsWith(`${De}_`)&&n.push(e)});for(let t of n)yield N(t)})}function _t(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let s=0;s<r;s++)t+=String.fromCharCode(e[s]);return window.btoa(t)}function kt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let s=0;s<e;s++)r[s]=t.charCodeAt(s);return r.buffer}function mr(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield y(We);return t||n.getRandomValues(new Uint8Array(12))})}function fr(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield y(Ue);return t||(yield n.generateKey({name:Fe,length:hr},!1,["encrypt","decrypt"]))})}function qt(n,t){return m(this,null,function*(){let e=yield mr(),r=yield fr();if(!e||!r||!n)return;let s=kt(n),{subtle:o}=window.crypto,i=yield o.encrypt({name:Fe,iv:e},r,s),a=_t(i);yield M(`${De}_${t}`,a),yield M(Ue,r),yield M(We,e)})}function Dt(n){return m(this,null,function*(){let t=yield y(`${De}_${n}`),e=yield y(We),r=yield y(Ue);if(!e||!t||!r||!ce())return;let{subtle:s}=window.crypto,o=yield s.decrypt({name:Fe,iv:e},r,kt(t));return _t(o)})}function Je(n,t){return t?new URL(n,t):new URL(n)}var be=class extends P{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?g.GetIdTokenTestMode:g.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?g.GenerateIdTokenTestMode:g.GenerateIdToken,[e]);return this.request(r)}getInfo(){return m(this,null,function*(){let e=yield y(this.localForageKey),r=u(g.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return k((e,r)=>m(this,null,function*(){try{let s=!1;this.sdk.useStorageCache&&(s=(yield y(this.localForageIsLoggedInKey))==="true",s&&e(!0));let o=u(this.sdk.testMode?g.IsLoggedInTestMode:g.IsLoggedIn),i=yield this.request(o);this.sdk.useStorageCache&&(i?M(this.localForageIsLoggedInKey,!0):N(this.localForageIsLoggedInKey),s&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(s){r(s)}}))}logout(){return N(this.localForageKey),N(this.localForageIsLoggedInKey),Z(),k((e,r)=>m(this,null,function*(){try{let s=u(this.sdk.testMode?g.LogoutTestMode:g.Logout),o=yield this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(o),e(o)}catch(s){r(s)}}))}requestInfoWithUI(e){let r=u(g.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?g.UserSettingsTestMode:g.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?g.RecoverAccountTestMode:g.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(g.RevealPK);return this.request(e)}getMetadata(){W({method:"user.getMetadata()",removalVersions:j,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?g.GetMetadataTestMode:g.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(g.EnableMFA);return this.request(e)}disableMFA(){let e=u(g.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};import{Events as Ge,MagicPayloadMethod as C,Wallets as S}from"@magic-sdk/types";var we=class extends P{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=k((r,s)=>m(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled(S.MetaMask))){let l=yield this.autoConnectIfWalletBrowser(S.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled(S.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser(S.CoinbaseWallet);r(l);return}let o=this.getUserEnv(),i=u(C.Login,[o]),a=this.request(i);a.on(Ge.WalletSelected,l=>this.handleWalletSelected(V(B({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&s(c),r(c)}catch(o){s(o)}}));return e}showUI(e){return this.request(u(C.ShowUI,[e]))}showAddress(){return this.request(u(C.ShowAddress))}showSendTokensUI(){return this.request(u(C.ShowSendTokensUI))}showOnRamp(){return this.request(u(C.ShowOnRamp))}showNFTs(){return this.request(u(C.ShowNFTs))}showBalances(){return this.request(u(C.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(C.SendGaslessTransaction,[e,r]))}getInfo(){return m(this,null,function*(){W({method:"wallet.getInfo()",removalVersions:j,useInstead:"user.getInfo()"}).log();let e=yield y(this.localForageKey),r=u(C.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){W({method:"wallet.disconnect()",removalVersions:j,useInstead:"user.logout()"}).log(),N(this.localForageKey),Z();let e=u(C.Disconnect);return this.request(e)}requestUserInfoWithUI(e){W({method:"wallet.requestUserInfoWithUI()",removalVersions:j,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(C.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return m(this,null,function*(){switch(yield y(this.localForageKey)){case S.MetaMask:return this.getMetaMaskProvider();case S.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,s;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((s=(r=window.ethereum)==null?void 0:r.providers)!=null&&s.find(o=>o==null?void 0:o.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(s=>s==null?void 0:s.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case S.MetaMask:return this.connectToMetaMask();case S.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return m(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield M(this.localForageKey,e.wallet),this.createIntermediaryEvent(Ge.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(Ge.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return m(this,null,function*(){let r;e===S.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===S.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield M(this.localForageKey,e);let s=u(C.AutoConnect,[{wallet:e,address:r}]);return this.request(s)})}};import{MagicOutgoingWindowMessage as Ut,MagicPayloadMethod as Er}from"@magic-sdk/types";var{createBoundEmitterMethod:Pe,createChainingEmitterMethod:ee}=Re(),Me=class extends P{constructor(){super(...arguments);this.isMagic=!0;this.on=ee("on",this);this.once=ee("once",this);this.addListener=ee("addListener",this);this.off=ee("off",this);this.removeListener=ee("removeListener",this);this.removeAllListeners=ee("removeAllListeners",this);this.emit=Pe("emit");this.eventNames=Pe("eventNames");this.listeners=Pe("listeners");this.listenerCount=Pe("listenerCount")}sendAsync(e,r){if(!r)throw gt({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(Ut.MAGIC_HANDLE_REQUEST,e.map(s=>{let o=K(s);return this.prefixPayloadMethodForTestMode(o),o})).then(s=>{r(null,s.map(o=>V(B({},o.payload),{error:o.hasError?new _(o.payload.error):null})))});else{let s=K(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(Ut.MAGIC_HANDLE_REQUEST,s).then(o=>{r(o.hasError?new _(o.payload.error):null,o.payload)})}}send(e,r){if(typeof e=="string"){let o=u(e,Array.isArray(r)?r:[]);return this.request(o)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let s=Rt();return s.log(),new F(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=u(Er.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Wt=["request","overlay","sdk"];function yr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==P.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var xe=class extends P{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:k,isPromiEvent:xt,encodeJSON:fe,decodeJSON:lt,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:K,storage:ae};let e=[this,...yr(this)];Wt.forEach(r=>{let s=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),o=s.findIndex(c=>!!c),i=o>0,a=s[o];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw Et(r)}}))})}init(e){this.__is_initialized__||(Wt.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:s,isPrototypeField:o}=this.__sdk_access_field_descriptors__.get(r);o?delete this[r]:Object.defineProperty(this,r,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:s,useInstead:o}=e,i=o?` Use \`${o}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${s}\`.${i}`;return new oe(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new oe(this,e,r)}createError(e,r,s){return new X(this,e,r,s)}},Ke=class extends xe{},q=class extends xe{};q.Internal=Ke,q.Anonymous="anonymous extension";import{MagicPayloadMethod as je}from"@magic-sdk/types";var Ne=class extends P{purchase(t){let e=u(je.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(je.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(je.NFTTransfer,[t]);return this.request(e)}};function Ft(n){return n.compat&&n.compat[h.sdkName]!=null?typeof n.compat[h.sdkName]=="string"?at(ct(h.version),n.compat[h.sdkName]):!!n.compat[h.sdkName]:!0}function gr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function Rr(n){var s;let t=(s=n==null?void 0:n.extensions)!=null?s:[],e={},r=[];if(Array.isArray(t)?t.forEach(o=>{Ft(o)?(o.init(this),(o.name||o.name!==q.Anonymous)&&(this[o.name]=o),o instanceof q.Internal&&(se(o.config)||(e[o.name]=o.config))):r.push(o)}):Object.keys(t).forEach(o=>{if(Ft(t[o])){t[o].init(this);let i=t[o];this[o]=i,i instanceof q.Internal&&(se(i.config)||(e[t[o].name]=i.config))}else r.push(t[o])}),r.length)throw yt(r);return e}var le=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw ht();h.platform==="react-native"&&(e==null?void 0:e.endpoint)&&vt().log();let{defaultEndpoint:r,version:s}=h;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=Je((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new ve(this),this.user=new be(this),this.wallet=new we(this),this.nft=new Ne(this),this.rpcProvider=new Me(this);let o=Rr.call(this,e);this.parameters=fe(V(B({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:Je(this.endpoint).host,sdk:pt[h.sdkName],version:s,ext:se(o)?void 0:o,locale:(e==null?void 0:e.locale)||"en_US"},h.bundleId?{bundleId:h.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=gr(this.apiKey,e==null?void 0:e.network,se(o)?void 0:o),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!le.__overlays__.has(this.parameters)){let t=new h.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),le.__overlays__.set(this.parameters,t)}return le.__overlays__.get(this.parameters)}preload(){return m(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},Ce=le;Ce.__overlays__=new Map;import{MagicIncomingWindowMessage as de,SDKWarningCode as vr}from"@magic-sdk/types";function Tr(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function Ir(n,t){var s;let e=(s=t.data.response)==null?void 0:s.id,r=Tr(n,e);if(e&&r){let o=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:o}}return{}}function br(n,t,e){return m(this,null,function*(){var a;let r=yield y("rt"),s;if(h.platform==="web")try{s=(a=yield y("jwt"))!=null?a:yield Lt()}catch(c){console.error("webcrypto error",c)}let o={msgType:n,payload:t};s&&(o.jwt=s),s&&r&&(o.rt=r);let i=yield Dt(e);return i&&(o.deviceShare=i),o})}function wr(n){return m(this,null,function*(){!n.data.rt||(yield M("rt",n.data.rt))})}var Be=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return m(this,null,function*(){return _e((r,s)=>m(this,null,function*(){if(!this.isConnectedToInternet){let d=mt();s(d)}this.isReadyForRequest||(yield this.waitForReady());let o=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield br(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>p=>{var Ve;let{id:x,response:v}=Ir(e,p);if(wr(p),((Ve=v==null?void 0:v.payload.error)==null?void 0:Ve.message)==="User denied account access.")Z();else if(p.data.deviceShare){let{deviceShare:Jt}=p.data;qt(Jt,this.networkHash)}x&&v&&Array.isArray(e)&&i.includes(x)?(o.push(v),o.length===e.length&&(d(),r(o))):x&&v&&!Array.isArray(e)&&x===e.id&&(d(),r(v))},l=this.on(de.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),s=o=>{o.data.msgType===`${t}-${this.parameters}`&&r(o)};return this.messageHandlers.add(s),()=>this.messageHandlers.delete(s)}waitForReady(){return new Promise(t=>{let e=this.on(de.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(de.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(de.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(de.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new U(vr.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};export{q as Extension,X as MagicExtensionError,oe as MagicExtensionWarning,_ as MagicRPCError,$ as MagicSDKError,U as MagicSDKWarning,Ce as SDKBase,qe as STORE_KEY_PRIVATE_KEY,Ie as STORE_KEY_PUBLIC_JWK,Oe as TypedEmitter,Be as ViewController,Ps as clearKeys,W as createDeprecationWarning,Ur as createDuplicateIframeWarning,Et as createExtensionNotInitializedError,yt as createIncompatibleExtensionsError,gt as createInvalidArgumentError,Lt as createJwt,ft as createMalformedResponseError,ht as createMissingApiKeyError,mt as createModalNotReadyError,k as createPromiEvent,_e as createPromise,vt as createReactNativeEndpointConfigurationWarning,Kn as createSDK,Rt as createSynchronousWeb3MethodWarning,Re as createTypedEmitter,Je as createURL,lt as decodeJSON,fe as encodeJSON,Se as getPayloadId,se as isEmpty,ut as isJsonRpcErrorCode,$r as isJsonRpcRequestPayload,dt as isJsonRpcResponsePayload,Sr as isMagicPayloadMethod,Nt as isMajorVersionAtLeast,xt as isPromiEvent,ce as isWebCryptoSupported,ae as storage,At as uuid};
Received: \`${n.received}\``)}function Wr(){return new U(ye.DuplicateIframe,"Duplicate iframes found.")}function vt(){return new U(ye.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function Tt(){return new U(ye.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${h.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function W(n){let{method:t,removalVersions:e,useInstead:r}=n,o=e[h.sdkName],s=r?` Use \`${r}\` instead.`:"",i=`\`${t}\` will be removed from \`${h.sdkName}\` in version \`${o}\`.${s}`;return new U(ye.DeprecationNotice,i)}import{MagicPayloadMethod as A,DeviceVerificationEventEmit as At,LoginWithEmailOTPEventEmit as Y,UpdateEmailEventEmit as Q,RecencyCheckEventEmit as J,LoginWithSmsOTPEventEmit as ve}from"@magic-sdk/types";import{MagicOutgoingWindowMessage as er,MagicIncomingWindowMessage as tr,MagicPayloadMethod as nr}from"@magic-sdk/types";function*Vn(){let n=0;for(;;)n<Number.MAX_SAFE_INTEGER?yield++n:n=0}var Hn=Vn();function Le(){return Hn.next().value}var It=Symbol("Payload pre-processed by Magic SDK");function bt(n){return Object.defineProperty(n,It,{value:!0,enumerable:!1}),n}function Xn(n){return!!n[It]}function K(n){var t,e,r;return Xn(n)||(n.jsonrpc=(t=n.jsonrpc)!=null?t:"2.0",n.id=Le(),n.method=(e=n.method)!=null?e:"noop",n.params=(r=n.params)!=null?r:[],bt(n)),n}function u(n,t=[]){return bt({params:t,method:n,jsonrpc:"2.0",id:Le()})}var F=class{constructor(t){t instanceof F?(this._jsonrpc=t.payload.jsonrpc,this._id=t.payload.id,this._result=t.payload.result,this._error=t.payload.error):ut(t)?(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=t.result,this._error=t.error):(this._jsonrpc=t.jsonrpc,this._id=t.id,this._result=void 0,this._error=void 0)}applyError(t){return this._error=t,this}applyResult(t){return this._result=t,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};import{UserEventsEmit as Qn,UserEventsOnReceived as Zn}from"@magic-sdk/types";var Mt=en(Pt()),_e=class extends Mt.default{};function Re(){let n=new _e;return{emitter:n,createChainingEmitterMethod:(r,o)=>(...s)=>(n[r].apply(n,s),o),createBoundEmitterMethod:r=>(...o)=>n[r].apply(n,o)}}var xt=Symbol("isPromiEvent");function Ct(n){return!!n[xt]}function k(n){let t=ke(n),{createBoundEmitterMethod:e,createChainingEmitterMethod:r}=Re(),o=Symbol("Promise.then"),s=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,p)=>(...x)=>{let v=p[d].apply(p,x);return c(v)},c=d=>Object.assign(d,{[xt]:!0,[o]:d[o]||d.then,[s]:d[s]||d.catch,[i]:d[i]||d.finally,then:a(o,d),catch:a(s,d),finally:a(i,d),on:r("on",d),once:r("once",d),addListener:r("addListener",d),off:r("off",d),removeListener:r("removeListener",d),removeAllListeners:r("removeAllListeners",d),emit:e("emit"),eventNames:e("eventNames"),listeners:e("listeners"),listenerCount:e("listenerCount")}),l=c(t.then(d=>(l.emit("done",d),l.emit("settled"),d),d=>{throw l.emit("error",d),l.emit("settled"),d}));return l.on(Zn.ClosedByUser,()=>{l.emit(Qn.ClosedByUser)}),l}function ke(n){return new Promise((t,e)=>{let r=n(t,e);Promise.resolve(r).catch(e)})}var P=class{constructor(t){this.sdk=t}get overlay(){return this.sdk.overlay}request(t){let e=this.overlay.post(er.MAGIC_HANDLE_REQUEST,K(t)),r=k((s,i)=>{e.then(a=>{if(o(),a.hasError)i(new _(a.payload.error));else if(a.hasResult)s(a.payload.result);else throw Et()}).catch(a=>{o(),i(a)})}),o=this.overlay.on(tr.MAGIC_HANDLE_EVENT,s=>{var a;let{response:i}=s.data;if(i.id===t.id&&((a=i.result)==null?void 0:a.event)){let{event:c,params:l=[]}=i.result;r.emit(c,...l)}});return r}createIntermediaryEvent(t,e){return o=>{let s=u(nr.IntermediaryEvent,[{payloadId:e,eventType:t,args:o}]);this.request(s)}}};function Nt(n,t){let[e]=n.split(".").map(Number);return e>=t}var j={"magic-sdk":"v18.0.0","@magic-sdk/react-native":"v14.0.0","@magic-sdk/react-native-bare":"v19.0.0","@magic-sdk/react-native-expo":"v19.0.0"},Te=class extends P{loginWithMagicLink(t){let e=h.sdkName==="@magic-sdk/react-native"||h.sdkName==="@magic-sdk/react-native-bare"||h.sdkName==="@magic-sdk/react-native-expo";if(e&&Nt(h.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utlize a passcode method like loginWithSMS or loginWithEmailOTP instead.");e&&W({method:"auth.loginWithMagicLink()",removalVersions:j,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:r,showUI:o=!0,redirectURI:s,overrides:i,lifespan:a}=t,c=u(this.sdk.testMode?A.LoginWithMagicLinkTestMode:A.LoginWithMagicLink,[{email:r,showUI:o,redirectURI:s,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(t){let{phoneNumber:e,showUI:r=!0,lifespan:o}=t,s=u(this.sdk.testMode?A.LoginWithSmsTestMode:A.LoginWithSms,[{phoneNumber:e,showUI:r,lifespan:o}]),i=this.request(s);return!r&&i&&(i.on(ve.VerifySmsOtp,a=>{this.createIntermediaryEvent(ve.VerifySmsOtp,s.id)(a)}),i.on(ve.Cancel,()=>{this.createIntermediaryEvent(ve.Cancel,s.id)()})),i}loginWithEmailOTP(t){let{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}=t,a=u(this.sdk.testMode?A.LoginWithEmailOTPTestMode:A.LoginWithEmailOTP,[{email:e,showUI:r,deviceCheckUI:o,overrides:s,lifespan:i}]),c=this.request(a);return!o&&c&&c.on(At.Retry,()=>{this.createIntermediaryEvent(At.Retry,a.id)()}),!r&&c&&(c.on(Y.VerifyEmailOtp,l=>{this.createIntermediaryEvent(Y.VerifyEmailOtp,a.id)(l)}),c.on(Y.VerifyMFACode,l=>{this.createIntermediaryEvent(Y.VerifyMFACode,a.id)(l)}),c.on(Y.Cancel,()=>{this.createIntermediaryEvent(Y.Cancel,a.id)()})),c}loginWithCredential(t){let{credentialOrQueryString:e,lifespan:r}=t||{},o=e!=null?e:"";if(!e&&h.platform==="web"){o=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let s=u(this.sdk.testMode?A.LoginWithCredentialTestMode:A.LoginWithCredential,[o,r]);return this.request(s)}setAuthorizationToken(t){let e=u(A.SetAuthorizationToken,[{jwt:t}]);return this.request(e)}updateEmailWithUI(t){let{email:e,showUI:r=!0}=t,o=u(this.sdk.testMode?A.UpdateEmailTestMode:A.UpdateEmail,[{email:e,showUI:r}]),s=this.request(o);return r||(s.on(J.Retry,()=>{this.createIntermediaryEvent(J.Retry,o.id)()}),s.on(J.Cancel,()=>{this.createIntermediaryEvent(J.Cancel,o.id)()}),s.on(J.VerifyEmailOtp,i=>{this.createIntermediaryEvent(J.VerifyEmailOtp,o.id)(i)}),s.on(J.VerifyMFACode,i=>{this.createIntermediaryEvent(J.VerifyMFACode,o.id)(i)}),s.on(Q.RetryWithNewEmail,i=>{this.createIntermediaryEvent(Q.RetryWithNewEmail,o.id)(i)}),s.on(Q.Cancel,()=>{this.createIntermediaryEvent(Q.Cancel,o.id)()}),s.on(Q.VerifyEmailOtp,i=>{this.createIntermediaryEvent(Q.VerifyEmailOtp,o.id)(i)})),s}};import{MagicPayloadMethod as g}from"@magic-sdk/types";var ae={};Qt(ae,{clear:()=>rr,getItem:()=>y,iterate:()=>qe,key:()=>or,keys:()=>ir,length:()=>sr,removeItem:()=>C,setItem:()=>M});var Ie;function G(n){return(...t)=>m(this,null,function*(){return Ie||(Ie=yield h.configureStorage()),yield Ie.ready(),Ie[n](...t)})}var y=G("getItem"),M=G("setItem"),C=G("removeItem"),rr=G("clear"),sr=G("length"),or=G("key"),ir=G("keys"),qe=G("iterate");function St(){let n=window.crypto.getRandomValues(new Uint8Array(16));n[6]=n[6]&15|64,n[8]=n[8]&191|128;let t="";return t+=n[0].toString(16),t+=n[1].toString(16),t+=n[2].toString(16),t+=n[3].toString(16),t+="-",t+=n[4].toString(16),t+=n[5].toString(16),t+="-",t+=n[6].toString(16),t+=n[7].toString(16),t+="-",t+=n[8].toString(16),t+=n[9].toString(16),t+="-",t+=n[10].toString(16),t+=n[11].toString(16),t+=n[12].toString(16),t+=n[13].toString(16),t+=n[14].toString(16),t+=n[15].toString(16),t}var De="STORE_KEY_PRIVATE_KEY",be="STORE_KEY_PUBLIC_JWK",Lt="ECDSA",ar="P-256",cr={name:Lt,namedCurve:ar};function ce(){let n=typeof window!="undefined"&&!!window.crypto,t=n&&!!window.crypto.subtle;return n&&t}function xs(){C(be),C(De)}function Ot(){return m(this,null,function*(){let n=yield lr();if(!n){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,e=yield y(De);if(!e||!t){console.info("unable to find private key or webcrypto unsupported");return}let r={iat:Math.floor(new Date().getTime()/1e3),jti:St()},o={typ:"dpop+jwt",alg:"ES256",jwk:n},s={protected:$t(JSON.stringify(o)),claims:$t(JSON.stringify(r))},i=ur(`${s.protected}.${s.claims}`),a={name:Lt,hash:{name:"SHA-256"}},c=hr(new Uint8Array(yield t.sign(a,e,i)));return`${s.protected}.${s.claims}.${c}`})}function lr(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}return(yield y(be))||(yield dr()),y(be)})}function dr(){return m(this,null,function*(){let{subtle:n}=window.crypto,t=yield n.generateKey(cr,!1,["sign"]),e=yield n.exportKey("jwk",t.publicKey);yield M(De,t.privateKey),yield M(be,e)})}function $t(n){return _t(pr(n))}function ur(n){return new TextEncoder().encode(n)}function _t(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function pr(n){return encodeURIComponent(n).replace(/%([0-9A-F]{2})/g,(e,r)=>String.fromCharCode(parseInt(r,16)))}function hr(n){let t="";return n.forEach(e=>{t+=String.fromCharCode(e)}),_t(t)}var Ue="ds",We="ek",Fe="iv",Je="AES-GCM",mr=256;function Z(){return m(this,null,function*(){let n=[];yield qe((t,e,r)=>{e.startsWith(`${Ue}_`)&&n.push(e)});for(let t of n)yield C(t)})}function kt(n){let t="",e=new Uint8Array(n),r=e.byteLength;for(let o=0;o<r;o++)t+=String.fromCharCode(e[o]);return window.btoa(t)}function qt(n){let t=window.atob(n),e=t.length,r=new Uint8Array(e);for(let o=0;o<e;o++)r[o]=t.charCodeAt(o);return r.buffer}function fr(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}let{crypto:n}=window,t=yield y(Fe);return t||n.getRandomValues(new Uint8Array(12))})}function Er(){return m(this,null,function*(){if(!ce()){console.info("webcrypto is not supported");return}let{subtle:n}=window.crypto,t=yield y(We);return t||(yield n.generateKey({name:Je,length:mr},!1,["encrypt","decrypt"]))})}function Dt(n,t){return m(this,null,function*(){let e=yield fr(),r=yield Er();if(!e||!r||!n)return;let o=qt(n),{subtle:s}=window.crypto,i=yield s.encrypt({name:Je,iv:e},r,o),a=kt(i);yield M(`${Ue}_${t}`,a),yield M(We,r),yield M(Fe,e)})}function Ut(n){return m(this,null,function*(){let t=yield y(`${Ue}_${n}`),e=yield y(Fe),r=yield y(We);if(!e||!t||!r||!ce())return;let{subtle:o}=window.crypto,s=yield o.decrypt({name:Je,iv:e},r,qt(t));return kt(s)})}function Ge(n,t){return t?new URL(n,t):new URL(n)}var we=class extends P{constructor(){super(...arguments);this.localForageKey="mc_active_wallet";this.localForageIsLoggedInKey="magic_auth_is_logged_in";this.userLoggedOutCallbacks=[]}getIdToken(e){let r=u(this.sdk.testMode?g.GetIdTokenTestMode:g.GetIdToken,[e]);return this.request(r)}generateIdToken(e){let r=u(this.sdk.testMode?g.GenerateIdTokenTestMode:g.GenerateIdToken,[e]);return this.request(r)}getInfo(){return m(this,null,function*(){let e=yield y(this.localForageKey),r=u(g.GetInfo,[{walletType:e}]);return this.request(r)})}isLoggedIn(){return k((e,r)=>m(this,null,function*(){try{let o=!1;this.sdk.useStorageCache&&(o=(yield y(this.localForageIsLoggedInKey))==="true",o&&e(!0));let s=u(this.sdk.testMode?g.IsLoggedInTestMode:g.IsLoggedIn),i=yield this.request(s);this.sdk.useStorageCache&&(i?M(this.localForageIsLoggedInKey,!0):C(this.localForageIsLoggedInKey),o&&!i&&this.emitUserLoggedOut(!0)),e(i)}catch(o){r(o)}}))}logout(){return C(this.localForageKey),C(this.localForageIsLoggedInKey),Z(),k((e,r)=>m(this,null,function*(){try{let o=u(this.sdk.testMode?g.LogoutTestMode:g.Logout),s=yield this.request(o);this.sdk.useStorageCache&&this.emitUserLoggedOut(s),e(s)}catch(o){r(o)}}))}requestInfoWithUI(e){let r=u(g.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}showSettings(e){let r=u(this.sdk.testMode?g.UserSettingsTestMode:g.UserSettings,[e]);return this.request(r)}recoverAccount(e){let r=u(this.sdk.testMode?g.RecoverAccountTestMode:g.RecoverAccount,[e]);return this.request(r)}revealPrivateKey(){let e=u(g.RevealPK);return this.request(e)}getMetadata(){W({method:"user.getMetadata()",removalVersions:j,useInstead:"user.getInfo()"}).log();let e=u(this.sdk.testMode?g.GetMetadataTestMode:g.GetMetadata);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(){let e=u(g.EnableMFA);return this.request(e)}disableMFA(){let e=u(g.DisableMFA);return this.request(e)}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(r=>{r(e)})}};import{Events as Ke,MagicPayloadMethod as N,Wallets as $}from"@magic-sdk/types";var Pe=class extends P{constructor(){super(...arguments);this.localForageKey="mc_active_wallet"}connectWithUI(){let e=k((r,o)=>m(this,null,function*(){try{if(this.isMetaMaskBrowser()&&(yield this.isWalletEnabled($.MetaMask))){let l=yield this.autoConnectIfWalletBrowser($.MetaMask);r(l);return}if(this.isCoinbaseWalletBrowser()&&(yield this.isWalletEnabled($.CoinbaseWallet))){let l=yield this.autoConnectIfWalletBrowser($.CoinbaseWallet);r(l);return}let s=this.getUserEnv(),i=u(N.Login,[s]),a=this.request(i);a.on(Ke.WalletSelected,l=>this.handleWalletSelected(V(B({},l),{payloadId:i.id}))),a.on("id-token-created",l=>{e.emit("id-token-created",l)});let c=yield a;c.error&&o(c),r(c)}catch(s){o(s)}}));return e}showUI(e){return this.request(u(N.ShowUI,[e]))}showAddress(){return this.request(u(N.ShowAddress))}showSendTokensUI(){return this.request(u(N.ShowSendTokensUI))}showOnRamp(){return this.request(u(N.ShowOnRamp))}showNFTs(){return this.request(u(N.ShowNFTs))}showBalances(){return this.request(u(N.ShowBalances))}sendGaslessTransaction(e,r){return this.request(u(N.SendGaslessTransaction,[e,r]))}getInfo(){return m(this,null,function*(){W({method:"wallet.getInfo()",removalVersions:j,useInstead:"user.getInfo()"}).log();let e=yield y(this.localForageKey),r=u(N.GetInfo,[{walletType:e}]);return this.request(r)})}disconnect(){W({method:"wallet.disconnect()",removalVersions:j,useInstead:"user.logout()"}).log(),C(this.localForageKey),Z();let e=u(N.Disconnect);return this.request(e)}requestUserInfoWithUI(e){W({method:"wallet.requestUserInfoWithUI()",removalVersions:j,useInstead:"user.requestUserInfoWithUI()"}).log();let r=u(N.RequestUserInfoWithUI,e?[e]:[]);return this.request(r)}getProvider(){return m(this,null,function*(){switch(yield y(this.localForageKey)){case $.MetaMask:return this.getMetaMaskProvider();case $.CoinbaseWallet:return this.getCoinbaseProvider();default:return this.sdk.rpcProvider}})}isMetaMaskInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isMetaMask)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isMetaMask))}isMetaMaskBrowser(){return this.isMobile()&&this.isMetaMaskInstalled()}getMetaMaskProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isMetaMask))||window.ethereum}connectToMetaMask(){if(this.isMobile()&&!this.isMetaMaskInstalled()){let e=`https://metamask.app.link/dapp/${window.location.href.replace(/(^\w+:|^)\/\//,"")}`;window.location.href=e}return this.getMetaMaskProvider().request({method:"eth_requestAccounts"})}isCoinbaseWalletInstalled(){var e,r,o;return((e=window.ethereum)==null?void 0:e.isCoinbaseWallet)||!!((o=(r=window.ethereum)==null?void 0:r.providers)!=null&&o.find(s=>s==null?void 0:s.isCoinbaseWallet))}isCoinbaseWalletBrowser(){var e;return!!((e=window.ethereum)!=null&&e.isCoinbaseBrowser)}getCoinbaseProvider(){var e,r;return((r=(e=window.ethereum)==null?void 0:e.providers)==null?void 0:r.find(o=>o==null?void 0:o.isCoinbaseWallet))||window.ethereum}connectToCoinbaseWallet(){if(this.isMobile()&&!this.isCoinbaseWalletBrowser()){let r=`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(window.location.href)}`;window.location.href=r}return this.getCoinbaseProvider().request({method:"eth_requestAccounts"})}isMobile(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Silk|Opera Mini/i.test(navigator.userAgent)}getUserEnv(){return{env:{isMetaMaskInstalled:this.isMetaMaskInstalled(),isCoinbaseWalletInstalled:this.isCoinbaseWalletInstalled()}}}connectToThirdPartyWallet(e){switch(e){case $.MetaMask:return this.connectToMetaMask();case $.CoinbaseWallet:return this.connectToCoinbaseWallet();default:throw new Error(`Invalid provider: ${e}. Must be one of "metamask" or "coinbase_wallet".`)}}isWalletEnabled(e){let r=u("mc_is_wallet_enabled",[{wallet:e}]);return this.request(r)}handleWalletSelected(e){return m(this,null,function*(){try{let r=yield this.connectToThirdPartyWallet(e.wallet);yield M(this.localForageKey,e.wallet),this.createIntermediaryEvent(Ke.WalletConnected,e.payloadId)(r)}catch(r){console.error(r),this.createIntermediaryEvent(Ke.WalletRejected,e.payloadId)()}})}autoConnectIfWalletBrowser(e){return m(this,null,function*(){let r;e===$.MetaMask&&(r=yield this.getMetaMaskProvider().request({method:"eth_requestAccounts"})),e===$.CoinbaseWallet&&(r=yield this.getCoinbaseProvider().request({method:"eth_requestAccounts"})),yield M(this.localForageKey,e);let o=u(N.AutoConnect,[{wallet:e,address:r}]);return this.request(o)})}};import{MagicOutgoingWindowMessage as Wt,MagicPayloadMethod as yr}from"@magic-sdk/types";var{createBoundEmitterMethod:Me,createChainingEmitterMethod:ee}=Re(),xe=class extends P{constructor(){super(...arguments);this.isMagic=!0;this.on=ee("on",this);this.once=ee("once",this);this.addListener=ee("addListener",this);this.off=ee("off",this);this.removeListener=ee("removeListener",this);this.removeAllListeners=ee("removeAllListeners",this);this.emit=Me("emit");this.eventNames=Me("eventNames");this.listeners=Me("listeners");this.listenerCount=Me("listenerCount")}sendAsync(e,r){if(!r)throw Rt({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:r===null?"null":typeof r});if(Array.isArray(e))this.overlay.post(Wt.MAGIC_HANDLE_REQUEST,e.map(o=>{let s=K(o);return this.prefixPayloadMethodForTestMode(s),s})).then(o=>{r(null,o.map(s=>V(B({},s.payload),{error:s.hasError?new _(s.payload.error):null})))});else{let o=K(e);this.prefixPayloadMethodForTestMode(o),this.overlay.post(Wt.MAGIC_HANDLE_REQUEST,o).then(s=>{r(s.hasError?new _(s.payload.error):null,s.payload)})}}send(e,r){if(typeof e=="string"){let s=u(e,Array.isArray(r)?r:[]);return this.request(s)}if(Array.isArray(e)||!!r){this.sendAsync(e,r);return}let o=vt();return o.log(),new F(e).applyError({code:-32603,message:o.rawMessage}).payload}enable(){let e=u(yr.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let r="testMode/eth/";this.sdk.testMode&&(e.method=`${r}${e.method}`)}};var Ft=["request","overlay","sdk"];function gr(n){let t=Object.getPrototypeOf(n),e=[t];for(;t!==P.prototype;)t=Object.getPrototypeOf(t),e.push(t);return e}var Ce=class extends P{constructor(){super(void 0);this.__sdk_access_field_descriptors__=new Map;this.__is_initialized__=!1;this.utils={createPromiEvent:k,isPromiEvent:Ct,encodeJSON:fe,decodeJSON:dt,createJsonRpcRequestPayload:u,standardizeJsonRpcRequestPayload:K,storage:ae};let e=[this,...gr(this)];Ft.forEach(r=>{let o=e.map(c=>Object.getOwnPropertyDescriptor(c,r)),s=o.findIndex(c=>!!c),i=s>0,a=o[s];a&&(this.__sdk_access_field_descriptors__.set(r,{descriptor:a,isPrototypeField:i}),Object.defineProperty(this,r,{configurable:!0,get:()=>{throw yt(r)}}))})}init(e){this.__is_initialized__||(Ft.forEach(r=>{if(this.__sdk_access_field_descriptors__.has(r)){let{descriptor:o,isPrototypeField:s}=this.__sdk_access_field_descriptors__.get(r);s?delete this[r]:Object.defineProperty(this,r,o)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:r,removalVersion:o,useInstead:s}=e,i=s?` Use \`${s}\` instead.`:"",a=`\`${r}\` will be removed from this Extension in version \`${o}\`.${i}`;return new oe(this,"DEPRECATION_NOTICE",a)}createWarning(e,r){return new oe(this,e,r)}createError(e,r,o){return new X(this,e,r,o)}},je=class extends Ce{},q=class extends Ce{};q.Internal=je,q.Anonymous="anonymous extension";import{MagicPayloadMethod as Be}from"@magic-sdk/types";var Ne=class extends P{purchase(t){let e=u(Be.NFTPurchase,[t]);return this.request(e)}checkout(t){let e=u(Be.NFTCheckout,[t]);return this.request(e)}transfer(t){let e=u(Be.NFTTransfer,[t]);return this.request(e)}};function Jt(n){return n.compat&&n.compat[h.sdkName]!=null?typeof n.compat[h.sdkName]=="string"?ct(lt(h.version),n.compat[h.sdkName]):!!n.compat[h.sdkName]:!0}function Rr(n,t,e){return!t&&!e?`${n}_eth_mainnet`:e?`${n}_${JSON.stringify(e)}`:t?typeof t=="string"?`${n}_eth_${t}`:`${n}_${t.rpcUrl}_${t.chainId}_${t.chainType}`:`${n}_unknown`}function vr(n){var o;let t=(o=n==null?void 0:n.extensions)!=null?o:[],e={},r=[];if(Array.isArray(t)?t.forEach(s=>{Jt(s)?(s.init(this),(s.name||s.name!==q.Anonymous)&&(this[s.name]=s),s instanceof q.Internal&&(se(s.config)||(e[s.name]=s.config))):r.push(s)}):Object.keys(t).forEach(s=>{if(Jt(t[s])){t[s].init(this);let i=t[s];this[s]=i,i instanceof q.Internal&&(se(i.config)||(e[t[s].name]=i.config))}else r.push(t[s])}),r.length)throw gt(r);return e}var le=class{constructor(t,e){this.apiKey=t;var i;if(!t)throw mt();h.platform==="react-native"&&(e==null?void 0:e.endpoint)&&Tt().log();let{defaultEndpoint:r,version:o}=h;this.testMode=!!(e!=null&&e.testMode),this.useStorageCache=!!(e!=null&&e.useStorageCache),this.endpoint=Ge((i=e==null?void 0:e.endpoint)!=null?i:r).origin,this.auth=new Te(this),this.user=new we(this),this.wallet=new Pe(this),this.nft=new Ne(this),this.rpcProvider=new xe(this);let s=vr.call(this,e);this.parameters=fe(V(B({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:e==null?void 0:e.network,host:Ge(this.endpoint).host,sdk:ht[h.sdkName],version:o,ext:se(s)?void 0:s,locale:(e==null?void 0:e.locale)||"en_US"},h.bundleId?{bundleId:h.bundleId}:{}),{meta:e==null?void 0:e.meta})),this.networkHash=Rr(this.apiKey,e==null?void 0:e.network,se(s)?void 0:s),e!=null&&e.deferPreload||this.preload()}get overlay(){if(!le.__overlays__.has(this.parameters)){let t=new h.ViewController(this.endpoint,this.parameters,this.networkHash);t.init(),le.__overlays__.set(this.parameters,t)}return le.__overlays__.get(this.parameters)}preload(){return m(this,null,function*(){yield this.overlay.checkIsReadyForRequest})}},Ae=le;Ae.__overlays__=new Map;import{MagicIncomingWindowMessage as de,SDKWarningCode as Tr}from"@magic-sdk/types";function Ir(n,t){return t&&Array.isArray(n)?n.find(e=>e.id===t):n}function br(n,t){var o;let e=(o=t.data.response)==null?void 0:o.id,r=Ir(n,e);if(e&&r){let s=new F(r).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:e,response:s}}return{}}function wr(n,t,e){return m(this,null,function*(){var a;let r=yield y("rt"),o;if(h.platform==="web")try{o=(a=yield y("jwt"))!=null?a:yield Ot()}catch(c){console.error("webcrypto error",c)}let s={msgType:n,payload:t};o&&(s.jwt=o),o&&r&&(s.rt=r);let i=yield Ut(e);return i&&(s.deviceShare=i),s})}function Pr(n){return m(this,null,function*(){!n.data.rt||(yield M("rt",n.data.rt))})}var Ve=class{constructor(t,e,r){this.endpoint=t;this.parameters=e;this.networkHash=r;this.messageHandlers=new Set;this.isConnectedToInternet=!0;this.checkIsReadyForRequest=this.waitForReady(),this.isReadyForRequest=!1,this.listen()}post(t,e){return m(this,null,function*(){return ke((r,o)=>m(this,null,function*(){if(!this.isConnectedToInternet){let d=ft();o(d)}this.isReadyForRequest||(yield this.waitForReady());let s=[],i=Array.isArray(e)?e.map(d=>d.id):[],a=yield wr(`${t}-${this.parameters}`,e,this.networkHash);yield this._post(a);let c=d=>p=>{var He;let{id:x,response:v}=br(e,p);if(Pr(p),((He=v==null?void 0:v.payload.error)==null?void 0:He.message)==="User denied account access.")Z();else if(p.data.deviceShare){let{deviceShare:Gt}=p.data;Dt(Gt,this.networkHash)}x&&v&&Array.isArray(e)&&i.includes(x)?(s.push(v),s.length===e.length&&(d(),r(s))):x&&v&&!Array.isArray(e)&&x===e.id&&(d(),r(v))},l=this.on(de.MAGIC_HANDLE_RESPONSE,c(()=>l()))}))})}on(t,e){let r=e.bind(window),o=s=>{s.data.msgType===`${t}-${this.parameters}`&&r(s)};return this.messageHandlers.add(o),()=>this.messageHandlers.delete(o)}waitForReady(){return new Promise(t=>{let e=this.on(de.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,t(),e()});setTimeout(()=>{this.isReadyForRequest=!0,t(),e()},15e3)})}listen(){this.on(de.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(de.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(de.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,t=>{t.data.response.result.product_announcement&&new U(Tr.ProductAnnouncement,t.data.response.result.product_announcement).log()})}};export{q as Extension,X as MagicExtensionError,oe as MagicExtensionWarning,_ as MagicRPCError,S as MagicSDKError,U as MagicSDKWarning,Ae as SDKBase,De as STORE_KEY_PRIVATE_KEY,be as STORE_KEY_PUBLIC_JWK,_e as TypedEmitter,Ve as ViewController,xs as clearKeys,W as createDeprecationWarning,Wr as createDuplicateIframeWarning,yt as createExtensionNotInitializedError,gt as createIncompatibleExtensionsError,Rt as createInvalidArgumentError,Ot as createJwt,Et as createMalformedResponseError,mt as createMissingApiKeyError,ft as createModalNotReadyError,k as createPromiEvent,ke as createPromise,Tt as createReactNativeEndpointConfigurationWarning,jn as createSDK,vt as createSynchronousWeb3MethodWarning,Re as createTypedEmitter,Ge as createURL,dt as decodeJSON,fe as encodeJSON,Le as getPayloadId,se as isEmpty,pt as isJsonRpcErrorCode,$r as isJsonRpcRequestPayload,ut as isJsonRpcResponsePayload,Lr as isMagicPayloadMethod,Nt as isMajorVersionAtLeast,Ct as isPromiEvent,ce as isWebCryptoSupported,ae as storage,St as uuid};
//# sourceMappingURL=index.js.map

@@ -37,2 +37,15 @@ import { LoginWithMagicLinkConfiguration, LoginWithSmsConfiguration, LoginWithEmailOTPConfiguration, UpdateEmailConfiguration, LoginWithCredentialConfiguration } from '@magic-sdk/types';

loginWithSMS(configuration: LoginWithSmsConfiguration): import("..").PromiEvent<string | null, {
"verify-sms-otp": (otp: string) => void;
cancel: () => void;
retry: () => void;
"sms-otp-sent": () => void;
"invalid-sms-otp": () => void;
"expired-sms-otp": () => void;
} & {
"device-needs-approval": () => void;
"device-verification-email-sent": () => void;
"device-verification-link-expired": () => void;
"device-approved": () => void;
"device-retry": () => void;
} & {
done: (result: string | null) => void;

@@ -39,0 +52,0 @@ error: (reason: any) => void;

{
"name": "@magic-sdk/provider",
"version": "28.5.0",
"version": "28.6.0-canary.768.10579617213.0",
"description": "Core business logic for Magic SDK packages.",

@@ -38,3 +38,3 @@ "author": "Magic Labs <team@magic.link> (https://magic.link/)",

"dependencies": {
"@magic-sdk/types": "^24.3.0",
"@magic-sdk/types": "24.4.0-canary.768.10579617213.0",
"eventemitter3": "^4.0.4",

@@ -46,3 +46,3 @@ "web3-core": "1.5.2"

},
"gitHead": "3a05cd31f74f75b4febe0e2c0711a6e5ef8f4934"
"gitHead": "09db17ee33f89972d62e280def7ac59b8c0166ab"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc