@magic-sdk/provider 31.0.0-canary.915.18139698235.0 → 31.0.0-canary.915.18208881768.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";var jt=Object.create;var ie=Object.defineProperty;var Vt=Object.getOwnPropertyDescriptor;var Bt=Object.getOwnPropertyNames;var Ht=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty;var zt=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),it=(r,e)=>{for(var t in e)ie(r,t,{get:e[t],enumerable:!0})},at=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Bt(e))!Xt.call(r,n)&&n!==t&&ie(r,n,{get:()=>e[n],enumerable:!(s=Vt(e,n))||s.enumerable});return r};var Yt=(r,e,t)=>(t=r!=null?jt(Ht(r)):{},at(e||!r||!r.__esModule?ie(t,"default",{value:r,enumerable:!0}):t,r)),Qt=r=>at(ie({},"__esModule",{value:!0}),r);var Ct=zt((Wn,Ye)=>{"use strict";var nn=Object.prototype.hasOwnProperty,P="~";function ne(){}Object.create&&(ne.prototype=Object.create(null),new ne().__proto__||(P=!1));function sn(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Mt(r,e,t,s,n){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new sn(t,s||r,n),i=P?P+e:e;return r._events[i]?r._events[i].fn?r._events[i]=[r._events[i],o]:r._events[i].push(o):(r._events[i]=o,r._eventsCount++),r}function Ee(r,e){--r._eventsCount===0?r._events=new ne:delete r._events[e]}function T(){this._events=new ne,this._eventsCount=0}T.prototype.eventNames=function(){var e=[],t,s;if(this._eventsCount===0)return e;for(s in t=this._events)nn.call(t,s)&&e.push(P?s.slice(1):s);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};T.prototype.listeners=function(e){var t=P?P+e:e,s=this._events[t];if(!s)return[];if(s.fn)return[s.fn];for(var n=0,o=s.length,i=new Array(o);n<o;n++)i[n]=s[n].fn;return i};T.prototype.listenerCount=function(e){var t=P?P+e:e,s=this._events[t];return s?s.fn?1:s.length:0};T.prototype.emit=function(e,t,s,n,o,i){var a=P?P+e:e;if(!this._events[a])return!1;var c=this._events[a],u=arguments.length,d,h;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,s),!0;case 4:return c.fn.call(c.context,t,s,n),!0;case 5:return c.fn.call(c.context,t,s,n,o),!0;case 6:return c.fn.call(c.context,t,s,n,o,i),!0}for(h=1,d=new Array(u-1);h<u;h++)d[h-1]=arguments[h];c.fn.apply(c.context,d)}else{var w=c.length,x;for(h=0;h<w;h++)switch(c[h].once&&this.removeListener(e,c[h].fn,void 0,!0),u){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,t);break;case 3:c[h].fn.call(c[h].context,t,s);break;case 4:c[h].fn.call(c[h].context,t,s,n);break;default:if(!d)for(x=1,d=new Array(u-1);x<u;x++)d[x-1]=arguments[x];c[h].fn.apply(c[h].context,d)}}return!0};T.prototype.on=function(e,t,s){return Mt(this,e,t,s,!1)};T.prototype.once=function(e,t,s){return Mt(this,e,t,s,!0)};T.prototype.removeListener=function(e,t,s,n){var o=P?P+e:e;if(!this._events[o])return this;if(!t)return Ee(this,o),this;var i=this._events[o];if(i.fn)i.fn===t&&(!n||i.once)&&(!s||i.context===s)&&Ee(this,o);else{for(var a=0,c=[],u=i.length;a<u;a++)(i[a].fn!==t||n&&!i[a].once||s&&i[a].context!==s)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:Ee(this,o)}return this};T.prototype.removeAllListeners=function(e){var t;return e?(t=P?P+e:e,this._events[t]&&Ee(this,t)):(this._events=new ne,this._eventsCount=0),this};T.prototype.off=T.prototype.removeListener;T.prototype.addListener=T.prototype.on;T.prefixed=P;T.EventEmitter=T;typeof Ye<"u"&&(Ye.exports=T)});var fn={};it(fn,{Extension:()=>Ae,MagicExtensionError:()=>ee,MagicExtensionWarning:()=>K,MagicRPCError:()=>q,MagicSDKError:()=>L,MagicSDKWarning:()=>O,MultichainExtension:()=>$e,SDKBase:()=>Me,STORE_KEY_PRIVATE_KEY:()=>me,STORE_KEY_PUBLIC_JWK:()=>re,TypedEmitter:()=>fe,ViewController:()=>Ce,clearKeys:()=>Xe,createDeprecationWarning:()=>Ve,createDuplicateIframeWarning:()=>Jr,createExtensionNotInitializedError:()=>We,createIncompatibleExtensionsError:()=>Je,createInvalidArgumentError:()=>Ge,createJwt:()=>ze,createMalformedResponseError:()=>Fe,createMissingApiKeyError:()=>qe,createModalNotReadyError:()=>Ue,createPromiEvent:()=>I,createPromise:()=>ye,createReactNativeEndpointConfigurationWarning:()=>je,createSDK:()=>vt,createSynchronousWeb3MethodWarning:()=>Ke,createTypedEmitter:()=>se,createURL:()=>Te,decodeJSON:()=>_e,encodeJSON:()=>Z,getPayloadId:()=>pe,isEmpty:()=>G,isJsonRpcErrorCode:()=>De,isJsonRpcRequestPayload:()=>Fr,isJsonRpcResponsePayload:()=>ke,isMagicPayloadMethod:()=>Wr,isMajorVersionAtLeast:()=>Ze,isPromiEvent:()=>Qe,isWebCryptoSupported:()=>j,storage:()=>te,uuid:()=>He});module.exports=Qt(fn);function Zt(r){let e={exports:{}};return r(e,e.exports),e.exports}var er=Number.MAX_SAFE_INTEGER||9007199254740991;var Oe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:er,MAX_SAFE_COMPONENT_LENGTH:16},tr=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{},f=tr,Q=Zt(function(r,e){let{MAX_SAFE_COMPONENT_LENGTH:t}=Oe,s=(e=r.exports={}).re=[],n=e.src=[],o=e.t={},i=0,a=(c,u,d)=>{let h=i++;f(h,u),o[c]=h,n[h]=u,s[h]=new RegExp(u,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",`(${n[o.NUMERICIDENTIFIER]})\\.(${n[o.NUMERICIDENTIFIER]})\\.(${n[o.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${n[o.NUMERICIDENTIFIERLOOSE]})\\.(${n[o.NUMERICIDENTIFIERLOOSE]})\\.(${n[o.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${n[o.NUMERICIDENTIFIER]}|${n[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${n[o.NUMERICIDENTIFIERLOOSE]}|${n[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${n[o.PRERELEASEIDENTIFIER]}(?:\\.${n[o.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${n[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${n[o.BUILDIDENTIFIER]}(?:\\.${n[o.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${n[o.MAINVERSION]}${n[o.PRERELEASE]}?${n[o.BUILD]}?`),a("FULL",`^${n[o.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${n[o.MAINVERSIONLOOSE]}${n[o.PRERELEASELOOSE]}?${n[o.BUILD]}?`),a("LOOSE",`^${n[o.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${n[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${n[o.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${n[o.XRANGEIDENTIFIER]})(?:\\.(${n[o.XRANGEIDENTIFIER]})(?:\\.(${n[o.XRANGEIDENTIFIER]})(?:${n[o.PRERELEASE]})?${n[o.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:${n[o.PRERELEASELOOSE]})?${n[o.BUILD]}?)?)?`),a("XRANGE",`^${n[o.GTLT]}\\s*${n[o.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${n[o.GTLT]}\\s*${n[o.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?(?:$|[^\\d])`),a("COERCERTL",n[o.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${n[o.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",a("TILDE",`^${n[o.LONETILDE]}${n[o.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${n[o.LONETILDE]}${n[o.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${n[o.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",a("CARET",`^${n[o.LONECARET]}${n[o.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${n[o.LONECARET]}${n[o.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${n[o.GTLT]}\\s*(${n[o.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${n[o.GTLT]}\\s*(${n[o.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${n[o.GTLT]}\\s*(${n[o.LOOSEPLAIN]}|${n[o.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${n[o.XRANGEPLAIN]})\\s+-\\s+(${n[o.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${n[o.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[o.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),ct=/^[0-9]+$/,gt=(r,e)=>{let t=ct.test(r),s=ct.test(e);return t&&s&&(r=+r,e=+e),r===e?0:t&&!s?-1:s&&!t?1:r<e?-1:1},rr=(r,e)=>gt(e,r),nr={compareIdentifiers:gt,rcompareIdentifiers:rr},{MAX_LENGTH:lt,MAX_SAFE_INTEGER:ae}=Oe,{re:dt,t:ut}=Q,{compareIdentifiers:H}=nr,N=class r{constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>lt)throw new TypeError(`version is longer than ${lt} characters`);f("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let s=e.trim().match(t.loose?dt[ut.LOOSE]:dt[ut.FULL]);if(!s)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>ae||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ae||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ae||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let o=+n;if(o>=0&&o<ae)return o}return n}):this.prerelease=[],this.build=s[5]?s[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(e){if(f("SemVer.compare",this.version,this.options,e),!(e instanceof r)){if(typeof e=="string"&&e===this.version)return 0;e=new r(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof r||(e=new r(e,this.options)),H(this.major,e.major)||H(this.minor,e.minor)||H(this.patch,e.patch)}comparePre(e){if(e instanceof r||(e=new r(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let s=this.prerelease[t],n=e.prerelease[t];if(f("prerelease compare",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return H(s,n)}while(++t)}compareBuild(e){e instanceof r||(e=new r(e,this.options));let t=0;do{let s=this.build[t],n=e.build[t];if(f("prerelease compare",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return H(s,n)}while(++t)}inc(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",t),this.inc("pre",t);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 s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]=="number"&&(this.prerelease[s]++,s=-2);s===-1&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}},sr=(r,e,t)=>new N(r,t).compare(new N(e,t)),J=sr,or=(r,e,t)=>J(r,e,t)===0,ir=or,ar=(r,e,t)=>J(r,e,t)!==0,cr=ar,lr=(r,e,t)=>J(r,e,t)>0,dr=lr,ur=(r,e,t)=>J(r,e,t)>=0,pr=ur,hr=(r,e,t)=>J(r,e,t)<0,mr=hr,Er=(r,e,t)=>J(r,e,t)<=0,fr=Er,gr=(r,e,t,s)=>{switch(e){case"===":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r===t;case"!==":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r!==t;case"":case"=":case"==":return ir(r,t,s);case"!=":return cr(r,t,s);case">":return dr(r,t,s);case">=":return pr(r,t,s);case"<":return mr(r,t,s);case"<=":return fr(r,t,s);default:throw new TypeError(`Invalid operator: ${e}`)}},Le=gr,X=Symbol("SemVer ANY"),z=class r{static get ANY(){return X}constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose)return e;e=e.value}f("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===X?this.value="":this.value=this.operator+this.semver.version,f("comp",this)}parse(e){let t=this.options.loose?pt[ht.COMPARATORLOOSE]:pt[ht.COMPARATOR],s=e.match(t);if(!s)throw new TypeError(`Invalid comparator: ${e}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new N(s[2],this.options.loose):this.semver=X}toString(){return this.value}test(e){if(f("Comparator.test",e,this.options.loose),this.semver===X||e===X)return!0;if(typeof e=="string")try{e=new N(e,this.options)}catch{return!1}return Le(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Comparator is required");if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),this.operator==="")return this.value===""||new Y(e.value,t).test(this.value);if(e.operator==="")return e.value===""||new Y(this.value,t).test(e.semver);let s=!(this.operator!==">="&&this.operator!==">"||e.operator!==">="&&e.operator!==">"),n=!(this.operator!=="<="&&this.operator!=="<"||e.operator!=="<="&&e.operator!=="<"),o=this.semver.version===e.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||e.operator!==">="&&e.operator!=="<="),a=Le(this.semver,"<",e.semver,t)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),c=Le(this.semver,">",e.semver,t)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return s||n||o&&i||a||c}},{re:pt,t:ht}=Q,Y=class r{constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof z)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){let{loose:t}=this.options;e=e.trim();let s=t?R[g.HYPHENRANGELOOSE]:R[g.HYPHENRANGE];e=e.replace(s,Nr(this.options.includePrerelease)),f("hyphen replace",e),e=e.replace(R[g.COMPARATORTRIM],yr),f("comparator trim",e,R[g.COMPARATORTRIM]),e=(e=(e=e.replace(R[g.TILDETRIM],Rr)).replace(R[g.CARETTRIM],vr)).split(/\s+/).join(" ");let n=t?R[g.COMPARATORLOOSE]:R[g.COMPARATOR];return e.split(" ").map(o=>Tr(o,this.options)).join(" ").split(/\s+/).map(o=>Cr(o,this.options)).filter(this.options.loose?o=>!!o.match(n):()=>!0).map(o=>new z(o,this.options))}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Range is required");return this.set.some(s=>mt(s,t)&&e.set.some(n=>mt(n,t)&&s.every(o=>n.every(i=>o.intersects(i,t)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new N(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(Ar(this.set[t],e,this.options))return!0;return!1}},{re:R,t:g,comparatorTrimReplace:yr,tildeTrimReplace:Rr,caretTrimReplace:vr}=Q,mt=(r,e)=>{let t=!0,s=r.slice(),n=s.pop();for(;t&&s.length;)t=s.every(o=>n.intersects(o,e)),n=s.pop();return t},Tr=(r,e)=>(f("comp",r,e),r=Pr(r,e),f("caret",r),r=Ir(r,e),f("tildes",r),r=xr(r,e),f("xrange",r),r=Mr(r,e),f("stars",r),r),b=r=>!r||r.toLowerCase()==="x"||r==="*",Ir=(r,e)=>r.trim().split(/\s+/).map(t=>br(t,e)).join(" "),br=(r,e)=>{let t=e.loose?R[g.TILDELOOSE]:R[g.TILDE];return r.replace(t,(s,n,o,i,a)=>{let c;return f("tilde",r,s,n,o,i,a),b(n)?c="":b(o)?c=`>=${n}.0.0 <${+n+1}.0.0-0`:b(i)?c=`>=${n}.${o}.0 <${n}.${+o+1}.0-0`:a?(f("replaceTilde pr",a),c=`>=${n}.${o}.${i}-${a} <${n}.${+o+1}.0-0`):c=`>=${n}.${o}.${i} <${n}.${+o+1}.0-0`,f("tilde return",c),c})},Pr=(r,e)=>r.trim().split(/\s+/).map(t=>wr(t,e)).join(" "),wr=(r,e)=>{f("caret",r,e);let t=e.loose?R[g.CARETLOOSE]:R[g.CARET],s=e.includePrerelease?"-0":"";return r.replace(t,(n,o,i,a,c)=>{let u;return f("caret",r,n,o,i,a,c),b(o)?u="":b(i)?u=`>=${o}.0.0${s} <${+o+1}.0.0-0`:b(a)?u=o==="0"?`>=${o}.${i}.0${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${s} <${+o+1}.0.0-0`:c?(f("replaceCaret pr",c),u=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"),u=o==="0"?i==="0"?`>=${o}.${i}.${a}${s} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),f("caret return",u),u})},xr=(r,e)=>(f("replaceXRanges",r,e),r.split(/\s+/).map(t=>Sr(t,e)).join(" ")),Sr=(r,e)=>{r=r.trim();let t=e.loose?R[g.XRANGELOOSE]:R[g.XRANGE];return r.replace(t,(s,n,o,i,a,c)=>{f("xRange",r,s,n,o,i,a,c);let u=b(o),d=u||b(i),h=d||b(a),w=h;return n==="="&&w&&(n=""),c=e.includePrerelease?"-0":"",u?s=n===">"||n==="<"?"<0.0.0-0":"*":n&&w?(d&&(i=0),a=0,n===">"?(n=">=",d?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):n==="<="&&(n="<",d?o=+o+1:i=+i+1),n==="<"&&(c="-0"),s=`${n+o}.${i}.${a}${c}`):d?s=`>=${o}.0.0${c} <${+o+1}.0.0-0`:h&&(s=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),f("xRange return",s),s})},Mr=(r,e)=>(f("replaceStars",r,e),r.trim().replace(R[g.STAR],"")),Cr=(r,e)=>(f("replaceGTE0",r,e),r.trim().replace(R[e.includePrerelease?g.GTE0PRE:g.GTE0],"")),Nr=r=>(e,t,s,n,o,i,a,c,u,d,h,w,x)=>`${t=b(s)?"":b(n)?`>=${s}.0.0${r?"-0":""}`:b(o)?`>=${s}.${n}.0${r?"-0":""}`:i?`>=${t}`:`>=${t}${r?"-0":""}`} ${c=b(u)?"":b(d)?`<${+u+1}.0.0-0`:b(h)?`<${u}.${+d+1}.0-0`:w?`<=${u}.${d}.${h}-${w}`:r?`<${u}.${d}.${+h+1}-0`:`<=${c}`}`.trim(),Ar=(r,e,t)=>{for(let s=0;s<r.length;s++)if(!r[s].test(e))return!1;if(e.prerelease.length&&!t.includePrerelease){for(let s=0;s<r.length;s++)if(f(r[s].semver),r[s].semver!==z.ANY&&r[s].semver.prerelease.length>0){let n=r[s].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0},yt=(r,e,t)=>{try{e=new Y(e,t)}catch{return!1}return e.test(r)};var{MAX_LENGTH:$r}=Oe,{re:Et,t:ft}=Q,Lr=(r,e)=>{if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),r instanceof N)return r;if(typeof r!="string"||r.length>$r||!(e.loose?Et[ft.LOOSE]:Et[ft.FULL]).test(r))return null;try{return new N(r,e)}catch{return null}},Or=Lr,{re:ce,t:le}=Q,Rt=(r,e)=>{if(r instanceof N)return r;if(typeof r=="number"&&(r=String(r)),typeof r!="string")return null;let t=null;if((e=e||{}).rtl){let s;for(;(s=ce[le.COERCERTL].exec(r))&&(!t||t.index+t[0].length!==r.length);)t&&s.index+s[0].length===t.index+t[0].length||(t=s),ce[le.COERCERTL].lastIndex=s.index+s[1].length+s[2].length;ce[le.COERCERTL].lastIndex=-1}else t=r.match(ce[le.COERCE]);return t===null?null:Or(`${t[2]}.${t[3]||"0"}.${t[4]||"0"}`,e)};function _r(r){return String.fromCharCode(parseInt(r.slice(1),16))}function kr(r){return`%${`00${r.charCodeAt(0).toString(16)}`.slice(-2)}`}function Dr(r){return btoa(encodeURIComponent(r).replace(/%[0-9A-F]{2}/g,_r))}function qr(r){return decodeURIComponent(Array.from(atob(r),kr).join(""))}function Z(r){return Dr(JSON.stringify(r))}function _e(r){return JSON.parse(qr(r))}var S=require("@magic-sdk/types");var de=require("@magic-sdk/types");function $(r){return typeof r>"u"}function Ur(r){return r===null}function ue(r){return Ur(r)||$(r)}function Fr(r){return ue(r)?!1:!$(r.jsonrpc)&&!$(r.id)&&!$(r.method)&&!$(r.params)}function ke(r){return ue(r)?!1:!$(r.jsonrpc)&&!$(r.id)&&(!$(r.result)||!$(r.error))}function Wr(r){return ue(r)?!1:typeof r=="string"&&Object.values(de.MagicPayloadMethod).includes(r)}function De(r){return ue(r)?!1:typeof r=="number"&&Object.values(de.RPCErrorCode).includes(r)}function G(r){if(!r)return!0;for(let e in r)if(Object.hasOwnProperty.call(r,e))return!1;return!0}var E={};function vt(r,e){return Object.assign(E,e),r}var Tt={"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 L=class r extends Error{constructor(t,s){super(`Magic SDK Error: [${t}] ${s}`);this.code=t;this.rawMessage=s;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},q=class r extends Error{__proto__=Error;code;rawMessage;data;constructor(e){super();let t=Number(e?.code);this.rawMessage=e?.message||"Internal error",this.code=De(t)?t:S.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=e?.data||void 0,Object.setPrototypeOf(this,r.prototype)}},O=class{constructor(e,t){this.code=e;this.rawMessage=t;this.message=`Magic SDK Warning: [${e}] ${t}`}message;log(){console.warn(this.message)}},ee=class r extends Error{constructor(t,s,n,o){super(`Magic Extension Error (${t.name}): [${s}] ${n}`);this.code=s;this.rawMessage=n;this.data=o;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},K=class{constructor(e,t,s){this.code=t;this.rawMessage=s;this.message=`Magic Extension Warning (${e.name}): [${t}] ${s}`}message;log(){console.warn(this.message)}};function qe(){return new L(S.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Ue(){return new L(S.SDKErrorCode.ModalNotReady,"Modal is not ready")}function Fe(){return new L(S.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function We(r){return new L(S.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${r}\` can be accessed. Do not invoke \`Extension.${r}\` inside an extension constructor.`)}function Je(r){let e=`Some extensions are incompatible with \`${E.sdkName}@${E.version}\`:`;return r.filter(t=>typeof t.compat<"u"&&t.compat!==null).forEach(t=>{let s=t.compat[E.sdkName];typeof s=="string"?e+=`
1
+ "use strict";var Vt=Object.create;var ie=Object.defineProperty;var jt=Object.getOwnPropertyDescriptor;var Bt=Object.getOwnPropertyNames;var Ht=Object.getPrototypeOf,Xt=Object.prototype.hasOwnProperty;var zt=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),it=(r,e)=>{for(var t in e)ie(r,t,{get:e[t],enumerable:!0})},at=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Bt(e))!Xt.call(r,n)&&n!==t&&ie(r,n,{get:()=>e[n],enumerable:!(s=jt(e,n))||s.enumerable});return r};var Yt=(r,e,t)=>(t=r!=null?Vt(Ht(r)):{},at(e||!r||!r.__esModule?ie(t,"default",{value:r,enumerable:!0}):t,r)),Qt=r=>at(ie({},"__esModule",{value:!0}),r);var Ct=zt((Wn,Ye)=>{"use strict";var nn=Object.prototype.hasOwnProperty,P="~";function ne(){}Object.create&&(ne.prototype=Object.create(null),new ne().__proto__||(P=!1));function sn(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Mt(r,e,t,s,n){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new sn(t,s||r,n),i=P?P+e:e;return r._events[i]?r._events[i].fn?r._events[i]=[r._events[i],o]:r._events[i].push(o):(r._events[i]=o,r._eventsCount++),r}function Ee(r,e){--r._eventsCount===0?r._events=new ne:delete r._events[e]}function T(){this._events=new ne,this._eventsCount=0}T.prototype.eventNames=function(){var e=[],t,s;if(this._eventsCount===0)return e;for(s in t=this._events)nn.call(t,s)&&e.push(P?s.slice(1):s);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};T.prototype.listeners=function(e){var t=P?P+e:e,s=this._events[t];if(!s)return[];if(s.fn)return[s.fn];for(var n=0,o=s.length,i=new Array(o);n<o;n++)i[n]=s[n].fn;return i};T.prototype.listenerCount=function(e){var t=P?P+e:e,s=this._events[t];return s?s.fn?1:s.length:0};T.prototype.emit=function(e,t,s,n,o,i){var a=P?P+e:e;if(!this._events[a])return!1;var c=this._events[a],u=arguments.length,d,h;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,s),!0;case 4:return c.fn.call(c.context,t,s,n),!0;case 5:return c.fn.call(c.context,t,s,n,o),!0;case 6:return c.fn.call(c.context,t,s,n,o,i),!0}for(h=1,d=new Array(u-1);h<u;h++)d[h-1]=arguments[h];c.fn.apply(c.context,d)}else{var w=c.length,x;for(h=0;h<w;h++)switch(c[h].once&&this.removeListener(e,c[h].fn,void 0,!0),u){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,t);break;case 3:c[h].fn.call(c[h].context,t,s);break;case 4:c[h].fn.call(c[h].context,t,s,n);break;default:if(!d)for(x=1,d=new Array(u-1);x<u;x++)d[x-1]=arguments[x];c[h].fn.apply(c[h].context,d)}}return!0};T.prototype.on=function(e,t,s){return Mt(this,e,t,s,!1)};T.prototype.once=function(e,t,s){return Mt(this,e,t,s,!0)};T.prototype.removeListener=function(e,t,s,n){var o=P?P+e:e;if(!this._events[o])return this;if(!t)return Ee(this,o),this;var i=this._events[o];if(i.fn)i.fn===t&&(!n||i.once)&&(!s||i.context===s)&&Ee(this,o);else{for(var a=0,c=[],u=i.length;a<u;a++)(i[a].fn!==t||n&&!i[a].once||s&&i[a].context!==s)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:Ee(this,o)}return this};T.prototype.removeAllListeners=function(e){var t;return e?(t=P?P+e:e,this._events[t]&&Ee(this,t)):(this._events=new ne,this._eventsCount=0),this};T.prototype.off=T.prototype.removeListener;T.prototype.addListener=T.prototype.on;T.prefixed=P;T.EventEmitter=T;typeof Ye<"u"&&(Ye.exports=T)});var fn={};it(fn,{Extension:()=>Ae,MagicExtensionError:()=>ee,MagicExtensionWarning:()=>K,MagicRPCError:()=>q,MagicSDKError:()=>L,MagicSDKWarning:()=>O,MultichainExtension:()=>$e,SDKBase:()=>Me,STORE_KEY_PRIVATE_KEY:()=>me,STORE_KEY_PUBLIC_JWK:()=>re,TypedEmitter:()=>fe,ViewController:()=>Ce,clearKeys:()=>Xe,createDeprecationWarning:()=>je,createDuplicateIframeWarning:()=>Jr,createExtensionNotInitializedError:()=>We,createIncompatibleExtensionsError:()=>Je,createInvalidArgumentError:()=>Ge,createJwt:()=>ze,createMalformedResponseError:()=>Fe,createMissingApiKeyError:()=>qe,createModalNotReadyError:()=>Ue,createPromiEvent:()=>I,createPromise:()=>ye,createReactNativeEndpointConfigurationWarning:()=>Ve,createSDK:()=>vt,createSynchronousWeb3MethodWarning:()=>Ke,createTypedEmitter:()=>se,createURL:()=>Te,decodeJSON:()=>_e,encodeJSON:()=>Z,getPayloadId:()=>pe,isEmpty:()=>G,isJsonRpcErrorCode:()=>De,isJsonRpcRequestPayload:()=>Fr,isJsonRpcResponsePayload:()=>ke,isMagicPayloadMethod:()=>Wr,isMajorVersionAtLeast:()=>Ze,isPromiEvent:()=>Qe,isWebCryptoSupported:()=>V,storage:()=>te,uuid:()=>He});module.exports=Qt(fn);function Zt(r){let e={exports:{}};return r(e,e.exports),e.exports}var er=Number.MAX_SAFE_INTEGER||9007199254740991;var Oe={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:er,MAX_SAFE_COMPONENT_LENGTH:16},tr=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{},f=tr,Q=Zt(function(r,e){let{MAX_SAFE_COMPONENT_LENGTH:t}=Oe,s=(e=r.exports={}).re=[],n=e.src=[],o=e.t={},i=0,a=(c,u,d)=>{let h=i++;f(h,u),o[c]=h,n[h]=u,s[h]=new RegExp(u,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",`(${n[o.NUMERICIDENTIFIER]})\\.(${n[o.NUMERICIDENTIFIER]})\\.(${n[o.NUMERICIDENTIFIER]})`),a("MAINVERSIONLOOSE",`(${n[o.NUMERICIDENTIFIERLOOSE]})\\.(${n[o.NUMERICIDENTIFIERLOOSE]})\\.(${n[o.NUMERICIDENTIFIERLOOSE]})`),a("PRERELEASEIDENTIFIER",`(?:${n[o.NUMERICIDENTIFIER]}|${n[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASEIDENTIFIERLOOSE",`(?:${n[o.NUMERICIDENTIFIERLOOSE]}|${n[o.NONNUMERICIDENTIFIER]})`),a("PRERELEASE",`(?:-(${n[o.PRERELEASEIDENTIFIER]}(?:\\.${n[o.PRERELEASEIDENTIFIER]})*))`),a("PRERELEASELOOSE",`(?:-?(${n[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a("BUILDIDENTIFIER","[0-9A-Za-z-]+"),a("BUILD",`(?:\\+(${n[o.BUILDIDENTIFIER]}(?:\\.${n[o.BUILDIDENTIFIER]})*))`),a("FULLPLAIN",`v?${n[o.MAINVERSION]}${n[o.PRERELEASE]}?${n[o.BUILD]}?`),a("FULL",`^${n[o.FULLPLAIN]}$`),a("LOOSEPLAIN",`[v=\\s]*${n[o.MAINVERSIONLOOSE]}${n[o.PRERELEASELOOSE]}?${n[o.BUILD]}?`),a("LOOSE",`^${n[o.LOOSEPLAIN]}$`),a("GTLT","((?:<|>)?=?)"),a("XRANGEIDENTIFIERLOOSE",`${n[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),a("XRANGEIDENTIFIER",`${n[o.NUMERICIDENTIFIER]}|x|X|\\*`),a("XRANGEPLAIN",`[v=\\s]*(${n[o.XRANGEIDENTIFIER]})(?:\\.(${n[o.XRANGEIDENTIFIER]})(?:\\.(${n[o.XRANGEIDENTIFIER]})(?:${n[o.PRERELEASE]})?${n[o.BUILD]}?)?)?`),a("XRANGEPLAINLOOSE",`[v=\\s]*(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:${n[o.PRERELEASELOOSE]})?${n[o.BUILD]}?)?)?`),a("XRANGE",`^${n[o.GTLT]}\\s*${n[o.XRANGEPLAIN]}$`),a("XRANGELOOSE",`^${n[o.GTLT]}\\s*${n[o.XRANGEPLAINLOOSE]}$`),a("COERCE",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?(?:$|[^\\d])`),a("COERCERTL",n[o.COERCE],!0),a("LONETILDE","(?:~>?)"),a("TILDETRIM",`(\\s*)${n[o.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",a("TILDE",`^${n[o.LONETILDE]}${n[o.XRANGEPLAIN]}$`),a("TILDELOOSE",`^${n[o.LONETILDE]}${n[o.XRANGEPLAINLOOSE]}$`),a("LONECARET","(?:\\^)"),a("CARETTRIM",`(\\s*)${n[o.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",a("CARET",`^${n[o.LONECARET]}${n[o.XRANGEPLAIN]}$`),a("CARETLOOSE",`^${n[o.LONECARET]}${n[o.XRANGEPLAINLOOSE]}$`),a("COMPARATORLOOSE",`^${n[o.GTLT]}\\s*(${n[o.LOOSEPLAIN]})$|^$`),a("COMPARATOR",`^${n[o.GTLT]}\\s*(${n[o.FULLPLAIN]})$|^$`),a("COMPARATORTRIM",`(\\s*)${n[o.GTLT]}\\s*(${n[o.LOOSEPLAIN]}|${n[o.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",a("HYPHENRANGE",`^\\s*(${n[o.XRANGEPLAIN]})\\s+-\\s+(${n[o.XRANGEPLAIN]})\\s*$`),a("HYPHENRANGELOOSE",`^\\s*(${n[o.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[o.XRANGEPLAINLOOSE]})\\s*$`),a("STAR","(<|>)?=?\\s*\\*"),a("GTE0","^\\s*>=\\s*0.0.0\\s*$"),a("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")}),ct=/^[0-9]+$/,gt=(r,e)=>{let t=ct.test(r),s=ct.test(e);return t&&s&&(r=+r,e=+e),r===e?0:t&&!s?-1:s&&!t?1:r<e?-1:1},rr=(r,e)=>gt(e,r),nr={compareIdentifiers:gt,rcompareIdentifiers:rr},{MAX_LENGTH:lt,MAX_SAFE_INTEGER:ae}=Oe,{re:dt,t:ut}=Q,{compareIdentifiers:H}=nr,N=class r{constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>lt)throw new TypeError(`version is longer than ${lt} characters`);f("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let s=e.trim().match(t.loose?dt[ut.LOOSE]:dt[ut.FULL]);if(!s)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>ae||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ae||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ae||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let o=+n;if(o>=0&&o<ae)return o}return n}):this.prerelease=[],this.build=s[5]?s[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(e){if(f("SemVer.compare",this.version,this.options,e),!(e instanceof r)){if(typeof e=="string"&&e===this.version)return 0;e=new r(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof r||(e=new r(e,this.options)),H(this.major,e.major)||H(this.minor,e.minor)||H(this.patch,e.patch)}comparePre(e){if(e instanceof r||(e=new r(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let s=this.prerelease[t],n=e.prerelease[t];if(f("prerelease compare",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return H(s,n)}while(++t)}compareBuild(e){e instanceof r||(e=new r(e,this.options));let t=0;do{let s=this.build[t],n=e.build[t];if(f("prerelease compare",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return H(s,n)}while(++t)}inc(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",t),this.inc("pre",t);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 s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]=="number"&&(this.prerelease[s]++,s=-2);s===-1&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}},sr=(r,e,t)=>new N(r,t).compare(new N(e,t)),J=sr,or=(r,e,t)=>J(r,e,t)===0,ir=or,ar=(r,e,t)=>J(r,e,t)!==0,cr=ar,lr=(r,e,t)=>J(r,e,t)>0,dr=lr,ur=(r,e,t)=>J(r,e,t)>=0,pr=ur,hr=(r,e,t)=>J(r,e,t)<0,mr=hr,Er=(r,e,t)=>J(r,e,t)<=0,fr=Er,gr=(r,e,t,s)=>{switch(e){case"===":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r===t;case"!==":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r!==t;case"":case"=":case"==":return ir(r,t,s);case"!=":return cr(r,t,s);case">":return dr(r,t,s);case">=":return pr(r,t,s);case"<":return mr(r,t,s);case"<=":return fr(r,t,s);default:throw new TypeError(`Invalid operator: ${e}`)}},Le=gr,X=Symbol("SemVer ANY"),z=class r{static get ANY(){return X}constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose)return e;e=e.value}f("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===X?this.value="":this.value=this.operator+this.semver.version,f("comp",this)}parse(e){let t=this.options.loose?pt[ht.COMPARATORLOOSE]:pt[ht.COMPARATOR],s=e.match(t);if(!s)throw new TypeError(`Invalid comparator: ${e}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new N(s[2],this.options.loose):this.semver=X}toString(){return this.value}test(e){if(f("Comparator.test",e,this.options.loose),this.semver===X||e===X)return!0;if(typeof e=="string")try{e=new N(e,this.options)}catch{return!1}return Le(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Comparator is required");if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),this.operator==="")return this.value===""||new Y(e.value,t).test(this.value);if(e.operator==="")return e.value===""||new Y(this.value,t).test(e.semver);let s=!(this.operator!==">="&&this.operator!==">"||e.operator!==">="&&e.operator!==">"),n=!(this.operator!=="<="&&this.operator!=="<"||e.operator!=="<="&&e.operator!=="<"),o=this.semver.version===e.semver.version,i=!(this.operator!==">="&&this.operator!=="<="||e.operator!==">="&&e.operator!=="<="),a=Le(this.semver,"<",e.semver,t)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),c=Le(this.semver,">",e.semver,t)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return s||n||o&&i||a||c}},{re:pt,t:ht}=Q,Y=class r{constructor(e,t){if(t&&typeof t=="object"||(t={loose:!!t,includePrerelease:!1}),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof z)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){let{loose:t}=this.options;e=e.trim();let s=t?R[g.HYPHENRANGELOOSE]:R[g.HYPHENRANGE];e=e.replace(s,Nr(this.options.includePrerelease)),f("hyphen replace",e),e=e.replace(R[g.COMPARATORTRIM],yr),f("comparator trim",e,R[g.COMPARATORTRIM]),e=(e=(e=e.replace(R[g.TILDETRIM],Rr)).replace(R[g.CARETTRIM],vr)).split(/\s+/).join(" ");let n=t?R[g.COMPARATORLOOSE]:R[g.COMPARATOR];return e.split(" ").map(o=>Tr(o,this.options)).join(" ").split(/\s+/).map(o=>Cr(o,this.options)).filter(this.options.loose?o=>!!o.match(n):()=>!0).map(o=>new z(o,this.options))}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Range is required");return this.set.some(s=>mt(s,t)&&e.set.some(n=>mt(n,t)&&s.every(o=>n.every(i=>o.intersects(i,t)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new N(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(Ar(this.set[t],e,this.options))return!0;return!1}},{re:R,t:g,comparatorTrimReplace:yr,tildeTrimReplace:Rr,caretTrimReplace:vr}=Q,mt=(r,e)=>{let t=!0,s=r.slice(),n=s.pop();for(;t&&s.length;)t=s.every(o=>n.intersects(o,e)),n=s.pop();return t},Tr=(r,e)=>(f("comp",r,e),r=Pr(r,e),f("caret",r),r=Ir(r,e),f("tildes",r),r=xr(r,e),f("xrange",r),r=Mr(r,e),f("stars",r),r),b=r=>!r||r.toLowerCase()==="x"||r==="*",Ir=(r,e)=>r.trim().split(/\s+/).map(t=>br(t,e)).join(" "),br=(r,e)=>{let t=e.loose?R[g.TILDELOOSE]:R[g.TILDE];return r.replace(t,(s,n,o,i,a)=>{let c;return f("tilde",r,s,n,o,i,a),b(n)?c="":b(o)?c=`>=${n}.0.0 <${+n+1}.0.0-0`:b(i)?c=`>=${n}.${o}.0 <${n}.${+o+1}.0-0`:a?(f("replaceTilde pr",a),c=`>=${n}.${o}.${i}-${a} <${n}.${+o+1}.0-0`):c=`>=${n}.${o}.${i} <${n}.${+o+1}.0-0`,f("tilde return",c),c})},Pr=(r,e)=>r.trim().split(/\s+/).map(t=>wr(t,e)).join(" "),wr=(r,e)=>{f("caret",r,e);let t=e.loose?R[g.CARETLOOSE]:R[g.CARET],s=e.includePrerelease?"-0":"";return r.replace(t,(n,o,i,a,c)=>{let u;return f("caret",r,n,o,i,a,c),b(o)?u="":b(i)?u=`>=${o}.0.0${s} <${+o+1}.0.0-0`:b(a)?u=o==="0"?`>=${o}.${i}.0${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${s} <${+o+1}.0.0-0`:c?(f("replaceCaret pr",c),u=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"),u=o==="0"?i==="0"?`>=${o}.${i}.${a}${s} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),f("caret return",u),u})},xr=(r,e)=>(f("replaceXRanges",r,e),r.split(/\s+/).map(t=>Sr(t,e)).join(" ")),Sr=(r,e)=>{r=r.trim();let t=e.loose?R[g.XRANGELOOSE]:R[g.XRANGE];return r.replace(t,(s,n,o,i,a,c)=>{f("xRange",r,s,n,o,i,a,c);let u=b(o),d=u||b(i),h=d||b(a),w=h;return n==="="&&w&&(n=""),c=e.includePrerelease?"-0":"",u?s=n===">"||n==="<"?"<0.0.0-0":"*":n&&w?(d&&(i=0),a=0,n===">"?(n=">=",d?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):n==="<="&&(n="<",d?o=+o+1:i=+i+1),n==="<"&&(c="-0"),s=`${n+o}.${i}.${a}${c}`):d?s=`>=${o}.0.0${c} <${+o+1}.0.0-0`:h&&(s=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),f("xRange return",s),s})},Mr=(r,e)=>(f("replaceStars",r,e),r.trim().replace(R[g.STAR],"")),Cr=(r,e)=>(f("replaceGTE0",r,e),r.trim().replace(R[e.includePrerelease?g.GTE0PRE:g.GTE0],"")),Nr=r=>(e,t,s,n,o,i,a,c,u,d,h,w,x)=>`${t=b(s)?"":b(n)?`>=${s}.0.0${r?"-0":""}`:b(o)?`>=${s}.${n}.0${r?"-0":""}`:i?`>=${t}`:`>=${t}${r?"-0":""}`} ${c=b(u)?"":b(d)?`<${+u+1}.0.0-0`:b(h)?`<${u}.${+d+1}.0-0`:w?`<=${u}.${d}.${h}-${w}`:r?`<${u}.${d}.${+h+1}-0`:`<=${c}`}`.trim(),Ar=(r,e,t)=>{for(let s=0;s<r.length;s++)if(!r[s].test(e))return!1;if(e.prerelease.length&&!t.includePrerelease){for(let s=0;s<r.length;s++)if(f(r[s].semver),r[s].semver!==z.ANY&&r[s].semver.prerelease.length>0){let n=r[s].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0},yt=(r,e,t)=>{try{e=new Y(e,t)}catch{return!1}return e.test(r)};var{MAX_LENGTH:$r}=Oe,{re:Et,t:ft}=Q,Lr=(r,e)=>{if(e&&typeof e=="object"||(e={loose:!!e,includePrerelease:!1}),r instanceof N)return r;if(typeof r!="string"||r.length>$r||!(e.loose?Et[ft.LOOSE]:Et[ft.FULL]).test(r))return null;try{return new N(r,e)}catch{return null}},Or=Lr,{re:ce,t:le}=Q,Rt=(r,e)=>{if(r instanceof N)return r;if(typeof r=="number"&&(r=String(r)),typeof r!="string")return null;let t=null;if((e=e||{}).rtl){let s;for(;(s=ce[le.COERCERTL].exec(r))&&(!t||t.index+t[0].length!==r.length);)t&&s.index+s[0].length===t.index+t[0].length||(t=s),ce[le.COERCERTL].lastIndex=s.index+s[1].length+s[2].length;ce[le.COERCERTL].lastIndex=-1}else t=r.match(ce[le.COERCE]);return t===null?null:Or(`${t[2]}.${t[3]||"0"}.${t[4]||"0"}`,e)};function _r(r){return String.fromCharCode(parseInt(r.slice(1),16))}function kr(r){return`%${`00${r.charCodeAt(0).toString(16)}`.slice(-2)}`}function Dr(r){return btoa(encodeURIComponent(r).replace(/%[0-9A-F]{2}/g,_r))}function qr(r){return decodeURIComponent(Array.from(atob(r),kr).join(""))}function Z(r){return Dr(JSON.stringify(r))}function _e(r){return JSON.parse(qr(r))}var S=require("@magic-sdk/types");var de=require("@magic-sdk/types");function $(r){return typeof r>"u"}function Ur(r){return r===null}function ue(r){return Ur(r)||$(r)}function Fr(r){return ue(r)?!1:!$(r.jsonrpc)&&!$(r.id)&&!$(r.method)&&!$(r.params)}function ke(r){return ue(r)?!1:!$(r.jsonrpc)&&!$(r.id)&&(!$(r.result)||!$(r.error))}function Wr(r){return ue(r)?!1:typeof r=="string"&&Object.values(de.MagicPayloadMethod).includes(r)}function De(r){return ue(r)?!1:typeof r=="number"&&Object.values(de.RPCErrorCode).includes(r)}function G(r){if(!r)return!0;for(let e in r)if(Object.hasOwnProperty.call(r,e))return!1;return!0}var E={};function vt(r,e){return Object.assign(E,e),r}var Tt={"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 L=class r extends Error{constructor(t,s){super(`Magic SDK Error: [${t}] ${s}`);this.code=t;this.rawMessage=s;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},q=class r extends Error{__proto__=Error;code;rawMessage;data;constructor(e){super();let t=Number(e?.code);this.rawMessage=e?.message||"Internal error",this.code=De(t)?t:S.RPCErrorCode.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=e?.data||void 0,Object.setPrototypeOf(this,r.prototype)}},O=class{constructor(e,t){this.code=e;this.rawMessage=t;this.message=`Magic SDK Warning: [${e}] ${t}`}message;log(){console.warn(this.message)}},ee=class r extends Error{constructor(t,s,n,o){super(`Magic Extension Error (${t.name}): [${s}] ${n}`);this.code=s;this.rawMessage=n;this.data=o;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},K=class{constructor(e,t,s){this.code=t;this.rawMessage=s;this.message=`Magic Extension Warning (${e.name}): [${t}] ${s}`}message;log(){console.warn(this.message)}};function qe(){return new L(S.SDKErrorCode.MissingApiKey,"Please provide an API key that you acquired from the Magic developer dashboard.")}function Ue(){return new L(S.SDKErrorCode.ModalNotReady,"Modal is not ready")}function Fe(){return new L(S.SDKErrorCode.MalformedResponse,"Response from the Magic iframe is malformed.")}function We(r){return new L(S.SDKErrorCode.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \`Extension.${r}\` can be accessed. Do not invoke \`Extension.${r}\` inside an extension constructor.`)}function Je(r){let e=`Some extensions are incompatible with \`${E.sdkName}@${E.version}\`:`;return r.filter(t=>typeof t.compat<"u"&&t.compat!==null).forEach(t=>{let s=t.compat[E.sdkName];typeof s=="string"?e+=`
2
2
  - Extension \`${t.name}\` supports version(s) \`${s}\``:s||(e+=`
3
3
  - Extension \`${t.name}\` does not support ${E.platform} environments.`)}),new L(S.SDKErrorCode.IncompatibleExtensions,e)}function Ge(r){let e=t=>{let s=t+1,n=s%10,o=s%100;return n===1&&o!==11?`${s}st`:n===2&&o!==12?`${s}nd`:n===3&&o!==13?`${s}rd`:`${s}th`};return new L(S.SDKErrorCode.InvalidArgument,`Invalid ${e(r.argument)} argument given to \`${r.procedure}\`.
4
4
  Expected: \`${r.expected}\`
5
- Received: \`${r.received}\``)}function Jr(){return new O(S.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ke(){return new O(S.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 je(){return new O(S.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 \`${E.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function Ve(r){let{method:e,removalVersions:t,useInstead:s}=r,n=t[E.sdkName],o=s?` Use \`${s}\` instead.`:"",i=`\`${e}\` will be removed from \`${E.sdkName}\` in version \`${n}\`.${o}`;return new O(S.SDKWarningCode.DeprecationNotice,i)}var p=require("@magic-sdk/types");var F=require("@magic-sdk/types");var wt=require("@magic-sdk/types");function*Gr(){let r=0;for(;;)r<Number.MAX_SAFE_INTEGER?yield++r:r=0}var Kr=Gr();function pe(){return Kr.next().value}var te={};it(te,{clear:()=>jr,getItem:()=>v,iterate:()=>Be,key:()=>Br,keys:()=>Hr,length:()=>Vr,removeItem:()=>_,setItem:()=>C});var he;function U(r){return async(...e)=>(he||(he=await E.configureStorage()),await he.ready(),he[r](...e))}var v=U("getItem"),C=U("setItem"),_=U("removeItem"),jr=U("clear"),Vr=U("length"),Br=U("key"),Hr=U("keys"),Be=U("iterate");function He(){let r=window.crypto.getRandomValues(new Uint8Array(16));r[6]=r[6]&15|64,r[8]=r[8]&191|128;let e="";return e+=r[0].toString(16),e+=r[1].toString(16),e+=r[2].toString(16),e+=r[3].toString(16),e+="-",e+=r[4].toString(16),e+=r[5].toString(16),e+="-",e+=r[6].toString(16),e+=r[7].toString(16),e+="-",e+=r[8].toString(16),e+=r[9].toString(16),e+="-",e+=r[10].toString(16),e+=r[11].toString(16),e+=r[12].toString(16),e+=r[13].toString(16),e+=r[14].toString(16),e+=r[15].toString(16),e}var me="STORE_KEY_PRIVATE_KEY",re="STORE_KEY_PUBLIC_JWK",bt="ECDSA",Xr="P-256",zr={name:bt,namedCurve:Xr};function j(){let r=typeof window<"u"&&!!window.crypto,e=r&&!!window.crypto.subtle;return r&&e}function Xe(){_(re),_(me)}async function ze(){let r=await Yr();if(!r){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:e}=window.crypto,t=await v(me);if(!t||!e){console.info("unable to find private key or webcrypto unsupported");return}let s={iat:Math.floor(new Date().getTime()/1e3),jti:He()},o={protected:It(JSON.stringify({typ:"dpop+jwt",alg:"ES256",jwk:r})),claims:It(JSON.stringify(s))},i=Zr(`${o.protected}.${o.claims}`),a={name:bt,hash:{name:"SHA-256"}},c=tn(new Uint8Array(await e.sign(a,t,i)));return`${o.protected}.${o.claims}.${c}`}async function Yr(){if(!j()){console.info("webcrypto is not supported");return}return await v(re)||await Qr(),v(re)}async function Qr(){let{subtle:r}=window.crypto,e=await r.generateKey(zr,!1,["sign"]),t=await r.exportKey("jwk",e.publicKey);await C(me,e.privateKey),await C(re,t)}function It(r){return Pt(en(r))}function Zr(r){return new TextEncoder().encode(r)}function Pt(r){return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function en(r){return encodeURIComponent(r).replace(/%([0-9A-F]{2})/g,(t,s)=>String.fromCharCode(parseInt(s,16)))}function tn(r){let e="";return r.forEach(t=>{e+=String.fromCharCode(t)}),Pt(e)}var xt=Symbol("Payload pre-processed by Magic SDK");function St(r){return Object.defineProperty(r,xt,{value:!0,enumerable:!1}),r}function rn(r){return!!r[xt]}function W(r){return rn(r)||(r.jsonrpc=r.jsonrpc??"2.0",r.id=pe(),r.method=r.method??"noop",r.params=r.params??[],St(r)),r}function m(r,e=[]){return St({params:e,method:r,jsonrpc:"2.0",id:pe()})}var V=class r{_jsonrpc;_id;_result;_error;constructor(e){e instanceof r?(this._jsonrpc=e.payload.jsonrpc,this._id=e.payload.id,this._result=e.payload.result,this._error=e.payload.error):ke(e)?(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=e.result,this._error=e.error):(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=void 0,this._error=void 0)}applyError(e){return this._error=e,this}applyResult(e){return this._result=e,this}get hasError(){return this._error?.code===wt.RPCErrorCode.DpopInvalidated&&Xe(),typeof this._error<"u"&&this._error!==null}get hasResult(){return typeof this._result<"u"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var ge=require("@magic-sdk/types");var Nt=Yt(Ct()),fe=class extends Nt.default{};function se(){let r=new fe;return{emitter:r,createChainingEmitterMethod:(s,n)=>(...o)=>(r[s].apply(r,o),n),createBoundEmitterMethod:s=>(...n)=>r[s].apply(r,n)}}var At=Symbol("isPromiEvent");function Qe(r){return!!r[At]}function I(r){let e=ye(r),{createBoundEmitterMethod:t,createChainingEmitterMethod:s}=se(),n=Symbol("Promise.then"),o=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,h)=>(...w)=>{let x=h[d].apply(h,w);return c(x)},c=d=>Object.assign(d,{[At]:!0,[n]:d[n]||d.then,[o]:d[o]||d.catch,[i]:d[i]||d.finally,then:a(n,d),catch:a(o,d),finally:a(i,d),on:s("on",d),once:s("once",d),addListener:s("addListener",d),off:s("off",d),removeListener:s("removeListener",d),removeAllListeners:s("removeAllListeners",d),emit:t("emit"),eventNames:t("eventNames"),listeners:t("listeners"),listenerCount:t("listenerCount")}),u=c(e.then(d=>(u.emit("done",d),u.emit("settled"),d),d=>{throw u.emit("error",d),u.emit("settled"),d}));return u.on(ge.UserEventsOnReceived.ClosedByUser,()=>{u.emit(ge.UserEventsEmit.ClosedByUser)}),u}function ye(r){return new Promise((e,t)=>{let s=r(e,t);Promise.resolve(s).catch(t)})}var y=class{constructor(e){this.sdk=e}get overlay(){return this.sdk.overlay}request(e){if(this.sdk.thirdPartyWallets.isConnected&&!F.routeToMagicMethods.includes(e.method))return I((i,a)=>{this.sdk.thirdPartyWallets.requestOverride(e).then(i).catch(a)});let t=this.overlay.post(F.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,W(e)),s=I((o,i)=>{t.then(a=>{if(n(),a.hasError)i(new q(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw Fe()}).catch(a=>{n(),i(a)})}),n=this.overlay.on(F.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,o=>{let{response:i}=o.data;if(i.id===e.id&&i.result?.event){let{event:a,params:c=[]}=i.result;s.emit(a,...c)}});return s}createIntermediaryEvent(e,t){return n=>{let o=m(F.MagicPayloadMethod.IntermediaryEvent,[{payloadId:t,eventType:e,args:n}]);this.request(o)}}};function Ze(r,e){let[t]=r.split(".").map(Number);return t>=e}var on={"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"},Re=class extends y{loginWithMagicLink(e){let t=E.sdkName==="@magic-sdk/react-native"||E.sdkName==="@magic-sdk/react-native-bare"||E.sdkName==="@magic-sdk/react-native-expo";if(t&&Ze(E.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utilize a passcode method like loginWithSMS or loginWithEmailOTP instead.");t&&Ve({method:"auth.loginWithMagicLink()",removalVersions:on,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:s,showUI:n=!0,redirectURI:o,overrides:i,lifespan:a}=e,c=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithMagicLinkTestMode:p.MagicPayloadMethod.LoginWithMagicLink,[{email:s,showUI:n,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(e){let{phoneNumber:t,showUI:s=!0,lifespan:n}=e,o=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithSmsTestMode:p.MagicPayloadMethod.LoginWithSms,[{phoneNumber:t,showUI:s,lifespan:n}]),i=this.request(o);return!s&&i&&(i.on(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,a=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,o.id)(a)}),i.on(p.LoginWithSmsOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.Cancel,o.id)()})),i}loginWithEmailOTP(e){let{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}=e,a=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithEmailOTPTestMode:p.MagicPayloadMethod.LoginWithEmailOTP,[{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}]),c=this.request(a);return!n&&c&&c.on(p.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(p.DeviceVerificationEventEmit.Retry,a.id)()}),!s&&c&&(c.on(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.VerifyMFACode,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.LostDevice,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.LostDevice,a.id)()}),c.on(p.LoginWithEmailOTPEventEmit.VerifyRecoveryCode,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyRecoveryCode,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(e){let{credentialOrQueryString:t,lifespan:s}=e||{},n=t??"";if(!t&&E.platform==="web"){n=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let o=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithCredentialTestMode:p.MagicPayloadMethod.LoginWithCredential,[n,s]);return this.request(o)}setAuthorizationToken(e){let t=m(p.MagicPayloadMethod.SetAuthorizationToken,[{jwt:e}]);return this.request(t)}updateEmailWithUI(e){let{email:t,showUI:s=!0}=e,n=m(this.sdk.testMode?p.MagicPayloadMethod.UpdateEmailTestMode:p.MagicPayloadMethod.UpdateEmail,[{email:t,showUI:s}]),o=this.request(n);return s||(o.on(p.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Retry,n.id)()}),o.on(p.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Cancel,n.id)()}),o.on(p.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyEmailOtp,n.id)(i)}),o.on(p.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyMFACode,n.id)(i)}),o.on(p.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.RetryWithNewEmail,n.id)(i)}),o.on(p.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.Cancel,n.id)()}),o.on(p.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.VerifyEmailOtp,n.id)(i)})),o}};var l=require("@magic-sdk/types");var et="ds",tt="ek",rt="iv",nt="AES-GCM",an=256;async function ve(){let r=[];await Be((e,t,s)=>{t.startsWith(`${et}_`)&&r.push(t)});for(let e of r)await _(e)}function $t(r){let e="",t=new Uint8Array(r),s=t.byteLength;for(let n=0;n<s;n++)e+=String.fromCharCode(t[n]);return window.btoa(e)}function Lt(r){let e=window.atob(r),t=e.length,s=new Uint8Array(t);for(let n=0;n<t;n++)s[n]=e.charCodeAt(n);return s.buffer}async function cn(){if(!j()){console.info("webcrypto is not supported");return}let{crypto:r}=window,e=await v(rt);return e||r.getRandomValues(new Uint8Array(12))}async function ln(){if(!j()){console.info("webcrypto is not supported");return}let{subtle:r}=window.crypto,e=await v(tt);return e||await r.generateKey({name:nt,length:an},!1,["encrypt","decrypt"])}async function Ot(r,e){let t=await cn(),s=await ln();if(!t||!s||!r)return;let n=Lt(r),{subtle:o}=window.crypto,i=await o.encrypt({name:nt,iv:t},s,n),a=$t(i);await C(`${et}_${e}`,a),await C(tt,s),await C(rt,t)}async function _t(r){let e=await v(`${et}_${r}`),t=await v(rt),s=await v(tt);if(!t||!e||!s||!j())return;let{subtle:n}=window.crypto,o=await n.decrypt({name:nt,iv:t},s,Lt(e));return $t(o)}function Te(r,e){return e?new URL(r,e):new URL(r)}var Ie=class extends y{getIdToken(e){let t=m(this.sdk.testMode?l.MagicPayloadMethod.GetIdTokenTestMode:l.MagicPayloadMethod.GetIdToken,[e]);return this.request(t)}generateIdToken(e){let t=m(this.sdk.testMode?l.MagicPayloadMethod.GenerateIdTokenTestMode:l.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(t)}getInfo(){let e=m(l.MagicPayloadMethod.GetInfo,[]);return this.request(e)}isLoggedIn(){return I(async(e,t)=>{try{let s=!1;this.sdk.useStorageCache&&(s=await v(this.localForageIsLoggedInKey)==="true",s&&e(!0));let n=m(this.sdk.testMode?l.MagicPayloadMethod.IsLoggedInTestMode:l.MagicPayloadMethod.IsLoggedIn),o=await this.request(n);this.sdk.useStorageCache&&(o?C(this.localForageIsLoggedInKey,!0):_(this.localForageIsLoggedInKey),s&&!o&&this.emitUserLoggedOut(!0)),e(o)}catch(s){t(s)}})}logout(){return _(this.localForageIsLoggedInKey),ve(),I(async(e,t)=>{try{let s=m(this.sdk.testMode?l.MagicPayloadMethod.LogoutTestMode:l.MagicPayloadMethod.Logout),n=await this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(n),e(n)}catch(s){t(s)}})}requestInfoWithUI(e){let t=m(l.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(t)}showSettings(e){let{showUI:t=!0}=e||{},s=m(this.sdk.testMode?l.MagicPayloadMethod.UserSettingsTestMode:l.MagicPayloadMethod.UserSettings,[e]),n=this.request(s);return!t&&n&&(n.on(l.RecoveryFactorEventEmit.SendNewPhoneNumber,o=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.SendNewPhoneNumber,s.id)(o)}),n.on(l.RecoveryFactorEventEmit.SendOtpCode,o=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.SendOtpCode,s.id)(o)}),n.on(l.RecoveryFactorEventEmit.StartEditPhoneNumber,()=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.StartEditPhoneNumber,s.id)()}),n.on(l.RecoveryFactorEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.Cancel,s.id)()}),n.on(l.RecencyCheckEventEmit.VerifyEmailOtp,o=>{this.createIntermediaryEvent(l.RecencyCheckEventEmit.VerifyEmailOtp,s.id)(o)})),n}recoverAccount(e){let{email:t,showUI:s}=e,n=m(this.sdk.testMode?l.MagicPayloadMethod.RecoverAccountTestMode:l.MagicPayloadMethod.RecoverAccount,[{email:t,showUI:s}]),o=this.request(n);return!s&&o&&(o.on(l.RecoverAccountEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.Cancel,n.id)()}),o.on(l.RecoverAccountEventEmit.ResendSms,()=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.ResendSms,n.id)()}),o.on(l.RecoverAccountEventEmit.VerifyOtp,i=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.VerifyOtp,n.id)(i)}),o.on(l.RecoverAccountEventEmit.UpdateEmail,i=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.UpdateEmail,n.id)(i)}),o.on(l.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.Cancel,n.id)()}),o.on(l.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.RetryWithNewEmail,n.id)(i)}),o.on(l.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.VerifyEmailOtp,n.id)(i)})),o}revealPrivateKey(){let e=m(l.MagicPayloadMethod.RevealPK,[{chain:"ETH"}]);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(e){let{showUI:t=!0}=e,s=m(l.MagicPayloadMethod.EnableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(l.EnableMFAEventEmit.VerifyMFACode,o=>{this.createIntermediaryEvent(l.EnableMFAEventEmit.VerifyMFACode,s.id)(o)}),n.on(l.EnableMFAEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.EnableMFAEventEmit.Cancel,s.id)()})),n}disableMFA(e){let{showUI:t=!0}=e,s=m(l.MagicPayloadMethod.DisableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(l.DisableMFAEventEmit.VerifyMFACode,o=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.VerifyMFACode,s.id)(o)}),n.on(l.DisableMFAEventEmit.LostDevice,o=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.LostDevice,s.id)(o)}),n.on(l.DisableMFAEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.Cancel,s.id)()})),n}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(t=>{t(e)})}localForageIsLoggedInKey="magic_auth_is_logged_in";userLoggedOutCallbacks=[]};var k=require("@magic-sdk/types");var be=class extends y{connectWithUI(e){let t=I(async(s,n)=>{try{let o=m(k.MagicPayloadMethod.Login,[{enabledWallets:this.sdk.thirdPartyWallets.enabledWallets,...e}]),i=this.request(o);this.sdk.thirdPartyWallets.eventListeners.forEach(({event:c,callback:u})=>{i.on(c,()=>u(o.id))}),i.on("id-token-created",c=>{t.emit("id-token-created",c)});let a=await i;a.error&&n(a),s(a)}catch(o){n(o)}});return t}showUI(e){return this.request(m(k.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(m(k.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(m(k.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(m(k.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(m(k.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(m(k.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,t){return this.request(m(k.MagicPayloadMethod.SendGaslessTransaction,[e,t]))}};var M=require("@magic-sdk/types");var Pe=class extends y{eventListeners=[];enabledWallets={};isConnected=!1;resetThirdPartyWalletState(){localStorage.removeItem(M.LocalStorageKeys.PROVIDER),localStorage.removeItem(M.LocalStorageKeys.ADDRESS),localStorage.removeItem(M.LocalStorageKeys.CHAIN_ID),this.isConnected=!1}requestOverride(e){if(e.method===M.MagicPayloadMethod.Login)return this.resetThirdPartyWalletState(),super.request(e);if(e.method===M.MagicPayloadMethod.GetInfo)return this.getInfo(e);if(e.method===M.MagicPayloadMethod.IsLoggedIn)return this.isLoggedIn(e);if(e.method===M.MagicPayloadMethod.Logout)return this.logout(e);switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalRequest(e);default:return this.resetThirdPartyWalletState(),super.request(e)}}isLoggedIn(e){switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalIsLoggedIn();default:return this.resetThirdPartyWalletState(),super.request(e)}}getInfo(e){switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalGetInfo();default:return this.resetThirdPartyWalletState(),super.request(e)}}logout(e){let t=localStorage.getItem(M.LocalStorageKeys.PROVIDER);switch(this.resetThirdPartyWalletState(),t){case"web3modal":return this.web3modalLogout();default:return super.request(e)}}web3modalRequest(e){return I((t,s)=>{this.sdk.web3modal.modal.getWalletProvider().request(e).then(t).catch(s)})}web3modalIsLoggedIn(){return I(e=>{let t=this.sdk.web3modal.modal.getStatus();if(t==="connected"&&e(!0),t==="disconnected"&&(this.resetThirdPartyWalletState(),e(!1)),t==="reconnecting"){let s=this.sdk.web3modal.modal.subscribeProvider(({status:n})=>{n==="connected"&&(s(),e(!0)),n==="disconnected"&&(s(),this.resetThirdPartyWalletState(),e(!1))})}})}formatWeb3modalGetInfoResponse(){let e=this.sdk.web3modal.modal.getWalletInfo()?.name,t=this.sdk.web3modal.modal.getAddress();return{publicAddress:t,email:null,issuer:`did:ethr:${t}`,phoneNumber:null,isMfaEnabled:!1,recoveryFactors:[],walletType:e||"web3modal",firstLoginAt:null}}web3modalGetInfo(){return I((e,t)=>{let s=this.sdk.web3modal.modal.getStatus();if(s==="connected"&&e(this.formatWeb3modalGetInfoResponse()),s==="disconnected"&&(this.resetThirdPartyWalletState(),t("Magic RPC Error: [-32603] Internal error: User denied account access.")),s==="reconnecting"){let n=this.sdk.web3modal.modal.subscribeProvider(({status:o})=>{o==="connected"&&(n(),e(this.formatWeb3modalGetInfoResponse())),o==="disconnected"&&(n(),this.resetThirdPartyWalletState(),t("Magic RPC Error: [-32603] Internal error: User denied account access."))})}})}web3modalLogout(){return I(async e=>{try{await this.sdk.web3modal.modal.disconnect()}catch(t){console.error(t)}e(!0)})}};var oe=require("@magic-sdk/types");var{createBoundEmitterMethod:we,createChainingEmitterMethod:B}=se(),xe=class extends y{isMagic=!0;sendAsync(e,t){if(!t)throw Ge({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:t===null?"null":typeof t});if(Array.isArray(e))this.overlay.post(oe.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(s=>{let n=W(s);return this.prefixPayloadMethodForTestMode(n),n})).then(s=>{t(null,s.map(n=>({...n.payload,error:n.hasError?new q(n.payload.error):null})))});else{let s=W(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(oe.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,s).then(n=>{t(n.hasError?new q(n.payload.error):null,n.payload)})}}send(e,t){if(typeof e=="string"){let n=m(e,Array.isArray(t)?t:[]);return this.request(n)}if(Array.isArray(e)||t){this.sendAsync(e,t);return}let s=Ke();return s.log(),new V(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=m(oe.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let t="testMode/eth/";this.sdk.testMode&&(e.method=`${t}${e.method}`)}on=B("on",this);once=B("once",this);addListener=B("addListener",this);off=B("off",this);removeListener=B("removeListener",this);removeAllListeners=B("removeAllListeners",this);emit=we("emit");eventNames=we("eventNames");listeners=we("listeners");listenerCount=we("listenerCount")};var D=require("@magic-sdk/types");var Se=class extends y{purchase(e){let t=m(D.MagicPayloadMethod.NFTPurchase,[e]);return this.request(t)}checkout(e){let t=this.sdk.thirdPartyWallets.isConnected,s=m(D.MagicPayloadMethod.NFTCheckout,[{...e,walletProvider:t?"web3modal":"magic"}]),n=this.request(s);return t&&(n.on(D.NftCheckoutIntermediaryEvents.Initiated,async o=>{try{let i=await this.request({method:"eth_sendTransaction",params:[o]});this.createIntermediaryEvent(D.NftCheckoutIntermediaryEvents.Success,s.id)(i)}catch{this.createIntermediaryEvent(D.NftCheckoutIntermediaryEvents.Failure,s.id)()}}),n.on(D.NftCheckoutIntermediaryEvents.Disconnect,()=>{this.sdk.thirdPartyWallets.resetThirdPartyWalletState(),n.emit("disconnect")})),n}transfer(e){let t=m(D.MagicPayloadMethod.NFTTransfer,[e]);return this.request(t)}};function kt(r){return r.compat&&r.compat[E.sdkName]!=null?typeof r.compat[E.sdkName]=="string"?yt(Rt(E.version),r.compat[E.sdkName]):!!r.compat[E.sdkName]:!0}function dn(r,e,t){return!e&&!t?`${r}_eth_mainnet`:t?`${r}_${JSON.stringify(t)}`:e?typeof e=="string"?`${r}_eth_${e}`:`${r}_${e.rpcUrl}_${e.chainId}_${e.chainType}`:`${r}_unknown`}function un(r){let e=r?.extensions??[],t={},s=[];if(Array.isArray(e)?e.forEach(n=>{kt(n)?(n.init(this),n.name&&(this[n.name]=n),G(n.config)||(t[n.name]=n.config)):s.push(n)}):Object.keys(e).forEach(n=>{if(kt(e[n])){e[n].init(this);let o=e[n];this[n]=o,G(o.config)||(t[e[n].name]=o.config)}else s.push(e[n])}),s.length)throw Je(s);return t}var Me=class r{constructor(e,t){this.apiKey=e;if(!e)throw qe();E.platform==="react-native"&&t?.endpoint&&je().log();let{defaultEndpoint:s,version:n}=E;this.testMode=!!t?.testMode,this.useStorageCache=!!t?.useStorageCache,this.endpoint=Te(t?.endpoint??s).origin,this.auth=new Re(this),this.user=new Ie(this),this.wallet=new be(this),this.nft=new Se(this),this.thirdPartyWallets=new Pe(this),this.rpcProvider=new xe(this);let o=un.call(this,t);this.parameters=Z({API_KEY:this.apiKey,DOMAIN_ORIGIN:typeof window<"u"&&window?.location?window?.location.origin:"",ETH_NETWORK:t?.network,host:Te(this.endpoint).host,sdk:Tt[E.sdkName],version:n,ext:G(o)?void 0:o,locale:t?.locale||"en_US",authConfig:t?.authConfig?{...t.authConfig}:void 0,...E.bundleId?{bundleId:E.bundleId}:{},meta:t?.meta}),this.networkHash=dn(this.apiKey,t?.network,G(o)?void 0:o),t?.deferPreload||this.preload()}static __overlays__=new Map;endpoint;parameters;networkHash;testMode;useStorageCache;auth;user;wallet;nft;thirdPartyWallets;rpcProvider;get overlay(){if(!r.__overlays__.has(this.parameters)){let e=new E.ViewController(this.endpoint,this.parameters,this.networkHash);e.init(),r.__overlays__.set(this.parameters,e)}return r.__overlays__.get(this.parameters)}async preload(){await this.overlay.waitForReady()}};var A=require("@magic-sdk/types");function pn(r,e){return e&&Array.isArray(r)?r.find(t=>t.id===e):r}function Dt(r,e){let t=e.data.response?.id,s=pn(r,t);if(t&&s){let n=new V(s).applyResult(e.data.response.result).applyError(e.data.response.error);return{id:t,response:n}}return{}}async function qt(r,e,t){let s=await v("rt"),n;if(E.platform==="web")try{n=await v("jwt")??await ze()}catch(a){console.error("webcrypto error",a)}let o={msgType:r,payload:e};n&&(o.jwt=n),n&&s&&(o.rt=s);let i=await _t(t);return i&&(o.deviceShare=i),o}async function Ut(r){r.data.rt&&await C("rt",r.data.rt)}function Ft(r,e){let t=null;return function(...s){t&&clearTimeout(t),t=setTimeout(()=>{r(...s)},e)}}var hn=1e3,Jt=60*hn,Wt=5*Jt,mn=60*Jt,Ce=class{constructor(e,t,s){this.endpoint=e;this.parameters=t;this.networkHash=s;this.listen()}isReadyForRequest=!1;messageHandlers=new Set;isConnectedToInternet=!0;lastPongTime=null;heartbeatIntervalTimer=null;heartbeatDebounce=Ft(()=>{this.endpoint==="https://auth.magic.link/"&&this.heartBeatCheck()},mn);async post(e,t){return ye(async(s,n)=>{if(!this.isConnectedToInternet){let d=Ue();n(d)}await this.checkRelayerExistsInDOM()||(this.isReadyForRequest=!1,await this.reloadRelayer()),this.isReadyForRequest||await this.waitForReady();let o=[],i=Array.isArray(t)?t.map(d=>d.id):[],a=await qt(`${e}-${this.parameters}`,t,this.networkHash);await this._post(a);let c=d=>h=>{let{id:w,response:x}=Dt(t,h);if(Ut(h),x?.payload.error?.message==="User denied account access.")ve();else if(h.data.deviceShare){let{deviceShare:Kt}=h.data;Ot(Kt,this.networkHash)}w&&x&&Array.isArray(t)&&i.includes(w)?(o.push(x),o.length===t.length&&(d(),s(o))):w&&x&&!Array.isArray(t)&&w===t.id&&(d(),s(x))},u=this.on(A.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>u()))})}on(e,t){let s=t.bind(window),n=o=>{o.data.msgType===`${e}-${this.parameters}`&&s(o)};return this.messageHandlers.add(n),()=>this.messageHandlers.delete(n)}waitForReady(){return new Promise(e=>{let t=this.on(A.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,e(),t()})})}listen(){this.on(A.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(A.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(A.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,e=>{e.data.response.result.product_announcement&&new O(A.SDKWarningCode.ProductAnnouncement,e.data.response.result.product_announcement).log()})}heartBeatCheck(){let e=!0,t=async()=>{let s={msgType:`${A.MagicOutgoingWindowMessage.MAGIC_PING}-${this.parameters}`,payload:[]};await this._post(s)};this.heartbeatIntervalTimer=setInterval(async()=>{if(this.lastPongTime){if(Date.now()-this.lastPongTime>Wt*2){this.reloadRelayer(),e=!0;return}}else if(!e){this.reloadRelayer(),e=!0;return}await t(),e=!1},Wt)}stopHeartBeat(){this.heartbeatDebounce(),this.lastPongTime=null,this.heartbeatIntervalTimer&&(clearInterval(this.heartbeatIntervalTimer),this.heartbeatIntervalTimer=null)}};var st=require("@magic-sdk/types"),Gt=["request","overlay","sdk"];function En(r){let e=Object.getPrototypeOf(r),t=[e];for(;e!==y.prototype;)e=Object.getPrototypeOf(e),t.push(e);return t}var ot=class extends y{compat;__sdk_access_field_descriptors__=new Map;__is_initialized__=!1;utils={createPromiEvent:I,isPromiEvent:Qe,encodeJSON:Z,decodeJSON:_e,createJsonRpcRequestPayload:m,standardizeJsonRpcRequestPayload:W,storage:te};constructor(){super(void 0);let e=[this,...En(this)];Gt.forEach(t=>{let s=e.map(a=>Object.getOwnPropertyDescriptor(a,t)),n=s.findIndex(a=>!!a),o=n>0,i=s[n];i&&(this.__sdk_access_field_descriptors__.set(t,{descriptor:i,isPrototypeField:o}),Object.defineProperty(this,t,{configurable:!0,get:()=>{throw We(t)}}))})}init(e){this.__is_initialized__||(Gt.forEach(t=>{if(this.__sdk_access_field_descriptors__.has(t)){let{descriptor:s,isPrototypeField:n}=this.__sdk_access_field_descriptors__.get(t);n?delete this[t]:Object.defineProperty(this,t,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:t,removalVersion:s,useInstead:n}=e,o=n?` Use \`${n}\` instead.`:"",i=`\`${t}\` will be removed from this Extension in version \`${s}\`.${o}`;return new K(this,"DEPRECATION_NOTICE",i)}createWarning(e,t){return new K(this,e,t)}createError(e,t,s){return new ee(this,e,t,s)}},Ne=class extends ot{},Ae=class{static Internal=Ne},$e=class extends Ne{constructor(t){super();this.config=t;this.chain=t.chainType}chain;getPublicAddress(){return this.request(this.utils.createJsonRpcRequestPayload(st.MagicPayloadMethod.GetMultichainPublicAddress,[{chain:this.chain}]))}revealPrivateKey(){return this.request(this.utils.createJsonRpcRequestPayload(st.MagicPayloadMethod.RevealPK,[{chain:this.chain}]))}};
5
+ Received: \`${r.received}\``)}function Jr(){return new O(S.SDKWarningCode.DuplicateIframe,"Duplicate iframes found.")}function Ke(){return new O(S.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 Ve(){return new O(S.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 \`${E.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function je(r){let{method:e,removalVersions:t,useInstead:s}=r,n=t[E.sdkName],o=s?` Use \`${s}\` instead.`:"",i=`\`${e}\` will be removed from \`${E.sdkName}\` in version \`${n}\`.${o}`;return new O(S.SDKWarningCode.DeprecationNotice,i)}var p=require("@magic-sdk/types");var F=require("@magic-sdk/types");var wt=require("@magic-sdk/types");function*Gr(){let r=0;for(;;)r<Number.MAX_SAFE_INTEGER?yield++r:r=0}var Kr=Gr();function pe(){return Kr.next().value}var te={};it(te,{clear:()=>Vr,getItem:()=>v,iterate:()=>Be,key:()=>Br,keys:()=>Hr,length:()=>jr,removeItem:()=>_,setItem:()=>C});var he;function U(r){return async(...e)=>(he||(he=await E.configureStorage()),await he.ready(),he[r](...e))}var v=U("getItem"),C=U("setItem"),_=U("removeItem"),Vr=U("clear"),jr=U("length"),Br=U("key"),Hr=U("keys"),Be=U("iterate");function He(){let r=window.crypto.getRandomValues(new Uint8Array(16));r[6]=r[6]&15|64,r[8]=r[8]&191|128;let e="";return e+=r[0].toString(16),e+=r[1].toString(16),e+=r[2].toString(16),e+=r[3].toString(16),e+="-",e+=r[4].toString(16),e+=r[5].toString(16),e+="-",e+=r[6].toString(16),e+=r[7].toString(16),e+="-",e+=r[8].toString(16),e+=r[9].toString(16),e+="-",e+=r[10].toString(16),e+=r[11].toString(16),e+=r[12].toString(16),e+=r[13].toString(16),e+=r[14].toString(16),e+=r[15].toString(16),e}var me="STORE_KEY_PRIVATE_KEY",re="STORE_KEY_PUBLIC_JWK",bt="ECDSA",Xr="P-256",zr={name:bt,namedCurve:Xr};function V(){let r=typeof window<"u"&&!!window.crypto,e=r&&!!window.crypto.subtle;return r&&e}function Xe(){_(re),_(me)}async function ze(){let r=await Yr();if(!r){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:e}=window.crypto,t=await v(me);if(!t||!e){console.info("unable to find private key or webcrypto unsupported");return}let s={iat:Math.floor(new Date().getTime()/1e3),jti:He()},o={protected:It(JSON.stringify({typ:"dpop+jwt",alg:"ES256",jwk:r})),claims:It(JSON.stringify(s))},i=Zr(`${o.protected}.${o.claims}`),a={name:bt,hash:{name:"SHA-256"}},c=tn(new Uint8Array(await e.sign(a,t,i)));return`${o.protected}.${o.claims}.${c}`}async function Yr(){if(!V()){console.info("webcrypto is not supported");return}return await v(re)||await Qr(),v(re)}async function Qr(){let{subtle:r}=window.crypto,e=await r.generateKey(zr,!1,["sign"]),t=await r.exportKey("jwk",e.publicKey);await C(me,e.privateKey),await C(re,t)}function It(r){return Pt(en(r))}function Zr(r){return new TextEncoder().encode(r)}function Pt(r){return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function en(r){return encodeURIComponent(r).replace(/%([0-9A-F]{2})/g,(t,s)=>String.fromCharCode(parseInt(s,16)))}function tn(r){let e="";return r.forEach(t=>{e+=String.fromCharCode(t)}),Pt(e)}var xt=Symbol("Payload pre-processed by Magic SDK");function St(r){return Object.defineProperty(r,xt,{value:!0,enumerable:!1}),r}function rn(r){return!!r[xt]}function W(r){return rn(r)||(r.jsonrpc=r.jsonrpc??"2.0",r.id=pe(),r.method=r.method??"noop",r.params=r.params??[],St(r)),r}function m(r,e=[]){return St({params:e,method:r,jsonrpc:"2.0",id:pe()})}var j=class r{_jsonrpc;_id;_result;_error;constructor(e){e instanceof r?(this._jsonrpc=e.payload.jsonrpc,this._id=e.payload.id,this._result=e.payload.result,this._error=e.payload.error):ke(e)?(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=e.result,this._error=e.error):(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=void 0,this._error=void 0)}applyError(e){return this._error=e,this}applyResult(e){return this._result=e,this}get hasError(){return this._error?.code===wt.RPCErrorCode.DpopInvalidated&&Xe(),typeof this._error<"u"&&this._error!==null}get hasResult(){return typeof this._result<"u"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};var ge=require("@magic-sdk/types");var Nt=Yt(Ct()),fe=class extends Nt.default{};function se(){let r=new fe;return{emitter:r,createChainingEmitterMethod:(s,n)=>(...o)=>(r[s].apply(r,o),n),createBoundEmitterMethod:s=>(...n)=>r[s].apply(r,n)}}var At=Symbol("isPromiEvent");function Qe(r){return!!r[At]}function I(r){let e=ye(r),{createBoundEmitterMethod:t,createChainingEmitterMethod:s}=se(),n=Symbol("Promise.then"),o=Symbol("Promise.catch"),i=Symbol("Promise.finally"),a=(d,h)=>(...w)=>{let x=h[d].apply(h,w);return c(x)},c=d=>Object.assign(d,{[At]:!0,[n]:d[n]||d.then,[o]:d[o]||d.catch,[i]:d[i]||d.finally,then:a(n,d),catch:a(o,d),finally:a(i,d),on:s("on",d),once:s("once",d),addListener:s("addListener",d),off:s("off",d),removeListener:s("removeListener",d),removeAllListeners:s("removeAllListeners",d),emit:t("emit"),eventNames:t("eventNames"),listeners:t("listeners"),listenerCount:t("listenerCount")}),u=c(e.then(d=>(u.emit("done",d),u.emit("settled"),d),d=>{throw u.emit("error",d),u.emit("settled"),d}));return u.on(ge.UserEventsOnReceived.ClosedByUser,()=>{u.emit(ge.UserEventsEmit.ClosedByUser)}),u}function ye(r){return new Promise((e,t)=>{let s=r(e,t);Promise.resolve(s).catch(t)})}var y=class{constructor(e){this.sdk=e}get overlay(){return this.sdk.overlay}request(e){if(this.sdk.thirdPartyWallets.isConnected&&!F.routeToMagicMethods.includes(e.method))return I((i,a)=>{this.sdk.thirdPartyWallets.requestOverride(e).then(i).catch(a)});let t=this.overlay.post(F.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,W(e)),s=I((o,i)=>{t.then(a=>{if(n(),a.hasError)i(new q(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw Fe()}).catch(a=>{n(),i(a)})}),n=this.overlay.on(F.MagicIncomingWindowMessage.MAGIC_HANDLE_EVENT,o=>{let{response:i}=o.data;if(i.id===e.id&&i.result?.event){let{event:a,params:c=[]}=i.result;s.emit(a,...c)}});return s}createIntermediaryEvent(e,t){return n=>{let o=m(F.MagicPayloadMethod.IntermediaryEvent,[{payloadId:t,eventType:e,args:n}]);this.request(o)}}};function Ze(r,e){let[t]=r.split(".").map(Number);return t>=e}var on={"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"},Re=class extends y{loginWithMagicLink(e){let t=E.sdkName==="@magic-sdk/react-native"||E.sdkName==="@magic-sdk/react-native-bare"||E.sdkName==="@magic-sdk/react-native-expo";if(t&&Ze(E.version,19))throw new Error("loginWithMagicLink() is deprecated for this package, please utilize a passcode method like loginWithSMS or loginWithEmailOTP instead.");t&&je({method:"auth.loginWithMagicLink()",removalVersions:on,useInstead:"auth.loginWithEmailOTP()"}).log();let{email:s,showUI:n=!0,redirectURI:o,overrides:i,lifespan:a}=e,c=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithMagicLinkTestMode:p.MagicPayloadMethod.LoginWithMagicLink,[{email:s,showUI:n,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(e){let{phoneNumber:t,showUI:s=!0,lifespan:n}=e,o=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithSmsTestMode:p.MagicPayloadMethod.LoginWithSms,[{phoneNumber:t,showUI:s,lifespan:n}]),i=this.request(o);return!s&&i&&(i.on(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,a=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.VerifySmsOtp,o.id)(a)}),i.on(p.LoginWithSmsOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithSmsOTPEventEmit.Cancel,o.id)()})),i}loginWithEmailOTP(e){let{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}=e,a=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithEmailOTPTestMode:p.MagicPayloadMethod.LoginWithEmailOTP,[{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}]),c=this.request(a);return!n&&c&&c.on(p.DeviceVerificationEventEmit.Retry,()=>{this.createIntermediaryEvent(p.DeviceVerificationEventEmit.Retry,a.id)()}),!s&&c&&(c.on(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyEmailOtp,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.VerifyMFACode,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyMFACode,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.LostDevice,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.LostDevice,a.id)()}),c.on(p.LoginWithEmailOTPEventEmit.VerifyRecoveryCode,u=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.VerifyRecoveryCode,a.id)(u)}),c.on(p.LoginWithEmailOTPEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.LoginWithEmailOTPEventEmit.Cancel,a.id)()})),c}loginWithCredential(e){let{credentialOrQueryString:t,lifespan:s}=e||{},n=t??"";if(!t&&E.platform==="web"){n=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,"",i)}let o=m(this.sdk.testMode?p.MagicPayloadMethod.LoginWithCredentialTestMode:p.MagicPayloadMethod.LoginWithCredential,[n,s]);return this.request(o)}setAuthorizationToken(e){let t=m(p.MagicPayloadMethod.SetAuthorizationToken,[{jwt:e}]);return this.request(t)}updateEmailWithUI(e){let{email:t,showUI:s=!0}=e,n=m(this.sdk.testMode?p.MagicPayloadMethod.UpdateEmailTestMode:p.MagicPayloadMethod.UpdateEmail,[{email:t,showUI:s}]),o=this.request(n);return s||(o.on(p.RecencyCheckEventEmit.Retry,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Retry,n.id)()}),o.on(p.RecencyCheckEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.Cancel,n.id)()}),o.on(p.RecencyCheckEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyEmailOtp,n.id)(i)}),o.on(p.RecencyCheckEventEmit.VerifyMFACode,i=>{this.createIntermediaryEvent(p.RecencyCheckEventEmit.VerifyMFACode,n.id)(i)}),o.on(p.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.RetryWithNewEmail,n.id)(i)}),o.on(p.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.Cancel,n.id)()}),o.on(p.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(p.UpdateEmailEventEmit.VerifyEmailOtp,n.id)(i)})),o}};var l=require("@magic-sdk/types");var et="ds",tt="ek",rt="iv",nt="AES-GCM",an=256;async function ve(){let r=[];await Be((e,t,s)=>{t.startsWith(`${et}_`)&&r.push(t)});for(let e of r)await _(e)}function $t(r){let e="",t=new Uint8Array(r),s=t.byteLength;for(let n=0;n<s;n++)e+=String.fromCharCode(t[n]);return window.btoa(e)}function Lt(r){let e=window.atob(r),t=e.length,s=new Uint8Array(t);for(let n=0;n<t;n++)s[n]=e.charCodeAt(n);return s.buffer}async function cn(){if(!V()){console.info("webcrypto is not supported");return}let{crypto:r}=window,e=await v(rt);return e||r.getRandomValues(new Uint8Array(12))}async function ln(){if(!V()){console.info("webcrypto is not supported");return}let{subtle:r}=window.crypto,e=await v(tt);return e||await r.generateKey({name:nt,length:an},!1,["encrypt","decrypt"])}async function Ot(r,e){let t=await cn(),s=await ln();if(!t||!s||!r)return;let n=Lt(r),{subtle:o}=window.crypto,i=await o.encrypt({name:nt,iv:t},s,n),a=$t(i);await C(`${et}_${e}`,a),await C(tt,s),await C(rt,t)}async function _t(r){let e=await v(`${et}_${r}`),t=await v(rt),s=await v(tt);if(!t||!e||!s||!V())return;let{subtle:n}=window.crypto,o=await n.decrypt({name:nt,iv:t},s,Lt(e));return $t(o)}function Te(r,e){return e?new URL(r,e):new URL(r)}var Ie=class extends y{getIdToken(e){let t=m(this.sdk.testMode?l.MagicPayloadMethod.GetIdTokenTestMode:l.MagicPayloadMethod.GetIdToken,[e]);return this.request(t)}generateIdToken(e){let t=m(this.sdk.testMode?l.MagicPayloadMethod.GenerateIdTokenTestMode:l.MagicPayloadMethod.GenerateIdToken,[e]);return this.request(t)}getInfo(){let e=m(l.MagicPayloadMethod.GetInfo,[]);return this.request(e)}isLoggedIn(){return I(async(e,t)=>{try{let s=!1;this.sdk.useStorageCache&&(s=await v(this.localForageIsLoggedInKey)==="true",s&&e(!0));let n=m(this.sdk.testMode?l.MagicPayloadMethod.IsLoggedInTestMode:l.MagicPayloadMethod.IsLoggedIn),o=await this.request(n);this.sdk.useStorageCache&&(o?C(this.localForageIsLoggedInKey,!0):_(this.localForageIsLoggedInKey),s&&!o&&this.emitUserLoggedOut(!0)),e(o)}catch(s){t(s)}})}logout(){return _(this.localForageIsLoggedInKey),ve(),I(async(e,t)=>{try{let s=m(this.sdk.testMode?l.MagicPayloadMethod.LogoutTestMode:l.MagicPayloadMethod.Logout),n=await this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(n),e(n)}catch(s){t(s)}})}requestInfoWithUI(e){let t=m(l.MagicPayloadMethod.RequestUserInfoWithUI,e?[e]:[]);return this.request(t)}showSettings(e){let{showUI:t=!0}=e||{},s=m(this.sdk.testMode?l.MagicPayloadMethod.UserSettingsTestMode:l.MagicPayloadMethod.UserSettings,[e]),n=this.request(s);return!t&&n&&(n.on(l.RecoveryFactorEventEmit.SendNewPhoneNumber,o=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.SendNewPhoneNumber,s.id)(o)}),n.on(l.RecoveryFactorEventEmit.SendOtpCode,o=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.SendOtpCode,s.id)(o)}),n.on(l.RecoveryFactorEventEmit.StartEditPhoneNumber,()=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.StartEditPhoneNumber,s.id)()}),n.on(l.RecoveryFactorEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.RecoveryFactorEventEmit.Cancel,s.id)()}),n.on(l.RecencyCheckEventEmit.VerifyEmailOtp,o=>{this.createIntermediaryEvent(l.RecencyCheckEventEmit.VerifyEmailOtp,s.id)(o)})),n}recoverAccount(e){let{email:t,showUI:s}=e,n=m(this.sdk.testMode?l.MagicPayloadMethod.RecoverAccountTestMode:l.MagicPayloadMethod.RecoverAccount,[{email:t,showUI:s}]),o=this.request(n);return!s&&o&&(o.on(l.RecoverAccountEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.Cancel,n.id)()}),o.on(l.RecoverAccountEventEmit.ResendSms,()=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.ResendSms,n.id)()}),o.on(l.RecoverAccountEventEmit.VerifyOtp,i=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.VerifyOtp,n.id)(i)}),o.on(l.RecoverAccountEventEmit.UpdateEmail,i=>{this.createIntermediaryEvent(l.RecoverAccountEventEmit.UpdateEmail,n.id)(i)}),o.on(l.UpdateEmailEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.Cancel,n.id)()}),o.on(l.UpdateEmailEventEmit.RetryWithNewEmail,i=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.RetryWithNewEmail,n.id)(i)}),o.on(l.UpdateEmailEventEmit.VerifyEmailOtp,i=>{this.createIntermediaryEvent(l.UpdateEmailEventEmit.VerifyEmailOtp,n.id)(i)})),o}revealEVMPrivateKey(){let e=m(l.MagicPayloadMethod.RevealPK,[{chain:"ETH"}]);return this.request(e)}revealPrivateKey(){throw new Error("revealPrivateKey() has been decommissioned. For EVM chains, use `user.revealEVMPrivateKey()` instead. For non-EVM chains, use `[extension].revealPrivateKey()` instead.")}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(e){let{showUI:t=!0}=e,s=m(l.MagicPayloadMethod.EnableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(l.EnableMFAEventEmit.VerifyMFACode,o=>{this.createIntermediaryEvent(l.EnableMFAEventEmit.VerifyMFACode,s.id)(o)}),n.on(l.EnableMFAEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.EnableMFAEventEmit.Cancel,s.id)()})),n}disableMFA(e){let{showUI:t=!0}=e,s=m(l.MagicPayloadMethod.DisableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(l.DisableMFAEventEmit.VerifyMFACode,o=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.VerifyMFACode,s.id)(o)}),n.on(l.DisableMFAEventEmit.LostDevice,o=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.LostDevice,s.id)(o)}),n.on(l.DisableMFAEventEmit.Cancel,()=>{this.createIntermediaryEvent(l.DisableMFAEventEmit.Cancel,s.id)()})),n}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(t=>{t(e)})}localForageIsLoggedInKey="magic_auth_is_logged_in";userLoggedOutCallbacks=[]};var k=require("@magic-sdk/types");var be=class extends y{connectWithUI(e){let t=I(async(s,n)=>{try{let o=m(k.MagicPayloadMethod.Login,[{enabledWallets:this.sdk.thirdPartyWallets.enabledWallets,...e}]),i=this.request(o);this.sdk.thirdPartyWallets.eventListeners.forEach(({event:c,callback:u})=>{i.on(c,()=>u(o.id))}),i.on("id-token-created",c=>{t.emit("id-token-created",c)});let a=await i;a.error&&n(a),s(a)}catch(o){n(o)}});return t}showUI(e){return this.request(m(k.MagicPayloadMethod.ShowUI,[e]))}showAddress(){return this.request(m(k.MagicPayloadMethod.ShowAddress))}showSendTokensUI(){return this.request(m(k.MagicPayloadMethod.ShowSendTokensUI))}showOnRamp(){return this.request(m(k.MagicPayloadMethod.ShowOnRamp))}showNFTs(){return this.request(m(k.MagicPayloadMethod.ShowNFTs))}showBalances(){return this.request(m(k.MagicPayloadMethod.ShowBalances))}sendGaslessTransaction(e,t){return this.request(m(k.MagicPayloadMethod.SendGaslessTransaction,[e,t]))}};var M=require("@magic-sdk/types");var Pe=class extends y{eventListeners=[];enabledWallets={};isConnected=!1;resetThirdPartyWalletState(){localStorage.removeItem(M.LocalStorageKeys.PROVIDER),localStorage.removeItem(M.LocalStorageKeys.ADDRESS),localStorage.removeItem(M.LocalStorageKeys.CHAIN_ID),this.isConnected=!1}requestOverride(e){if(e.method===M.MagicPayloadMethod.Login)return this.resetThirdPartyWalletState(),super.request(e);if(e.method===M.MagicPayloadMethod.GetInfo)return this.getInfo(e);if(e.method===M.MagicPayloadMethod.IsLoggedIn)return this.isLoggedIn(e);if(e.method===M.MagicPayloadMethod.Logout)return this.logout(e);switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalRequest(e);default:return this.resetThirdPartyWalletState(),super.request(e)}}isLoggedIn(e){switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalIsLoggedIn();default:return this.resetThirdPartyWalletState(),super.request(e)}}getInfo(e){switch(localStorage.getItem(M.LocalStorageKeys.PROVIDER)){case"web3modal":return this.web3modalGetInfo();default:return this.resetThirdPartyWalletState(),super.request(e)}}logout(e){let t=localStorage.getItem(M.LocalStorageKeys.PROVIDER);switch(this.resetThirdPartyWalletState(),t){case"web3modal":return this.web3modalLogout();default:return super.request(e)}}web3modalRequest(e){return I((t,s)=>{this.sdk.web3modal.modal.getWalletProvider().request(e).then(t).catch(s)})}web3modalIsLoggedIn(){return I(e=>{let t=this.sdk.web3modal.modal.getStatus();if(t==="connected"&&e(!0),t==="disconnected"&&(this.resetThirdPartyWalletState(),e(!1)),t==="reconnecting"){let s=this.sdk.web3modal.modal.subscribeProvider(({status:n})=>{n==="connected"&&(s(),e(!0)),n==="disconnected"&&(s(),this.resetThirdPartyWalletState(),e(!1))})}})}formatWeb3modalGetInfoResponse(){let e=this.sdk.web3modal.modal.getWalletInfo()?.name,t=this.sdk.web3modal.modal.getAddress();return{publicAddress:t,email:null,issuer:`did:ethr:${t}`,phoneNumber:null,isMfaEnabled:!1,recoveryFactors:[],walletType:e||"web3modal",firstLoginAt:null}}web3modalGetInfo(){return I((e,t)=>{let s=this.sdk.web3modal.modal.getStatus();if(s==="connected"&&e(this.formatWeb3modalGetInfoResponse()),s==="disconnected"&&(this.resetThirdPartyWalletState(),t("Magic RPC Error: [-32603] Internal error: User denied account access.")),s==="reconnecting"){let n=this.sdk.web3modal.modal.subscribeProvider(({status:o})=>{o==="connected"&&(n(),e(this.formatWeb3modalGetInfoResponse())),o==="disconnected"&&(n(),this.resetThirdPartyWalletState(),t("Magic RPC Error: [-32603] Internal error: User denied account access."))})}})}web3modalLogout(){return I(async e=>{try{await this.sdk.web3modal.modal.disconnect()}catch(t){console.error(t)}e(!0)})}};var oe=require("@magic-sdk/types");var{createBoundEmitterMethod:we,createChainingEmitterMethod:B}=se(),xe=class extends y{isMagic=!0;sendAsync(e,t){if(!t)throw Ge({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:t===null?"null":typeof t});if(Array.isArray(e))this.overlay.post(oe.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,e.map(s=>{let n=W(s);return this.prefixPayloadMethodForTestMode(n),n})).then(s=>{t(null,s.map(n=>({...n.payload,error:n.hasError?new q(n.payload.error):null})))});else{let s=W(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(oe.MagicOutgoingWindowMessage.MAGIC_HANDLE_REQUEST,s).then(n=>{t(n.hasError?new q(n.payload.error):null,n.payload)})}}send(e,t){if(typeof e=="string"){let n=m(e,Array.isArray(t)?t:[]);return this.request(n)}if(Array.isArray(e)||t){this.sendAsync(e,t);return}let s=Ke();return s.log(),new j(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=m(oe.MagicPayloadMethod.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let t="testMode/eth/";this.sdk.testMode&&(e.method=`${t}${e.method}`)}on=B("on",this);once=B("once",this);addListener=B("addListener",this);off=B("off",this);removeListener=B("removeListener",this);removeAllListeners=B("removeAllListeners",this);emit=we("emit");eventNames=we("eventNames");listeners=we("listeners");listenerCount=we("listenerCount")};var D=require("@magic-sdk/types");var Se=class extends y{purchase(e){let t=m(D.MagicPayloadMethod.NFTPurchase,[e]);return this.request(t)}checkout(e){let t=this.sdk.thirdPartyWallets.isConnected,s=m(D.MagicPayloadMethod.NFTCheckout,[{...e,walletProvider:t?"web3modal":"magic"}]),n=this.request(s);return t&&(n.on(D.NftCheckoutIntermediaryEvents.Initiated,async o=>{try{let i=await this.request({method:"eth_sendTransaction",params:[o]});this.createIntermediaryEvent(D.NftCheckoutIntermediaryEvents.Success,s.id)(i)}catch{this.createIntermediaryEvent(D.NftCheckoutIntermediaryEvents.Failure,s.id)()}}),n.on(D.NftCheckoutIntermediaryEvents.Disconnect,()=>{this.sdk.thirdPartyWallets.resetThirdPartyWalletState(),n.emit("disconnect")})),n}transfer(e){let t=m(D.MagicPayloadMethod.NFTTransfer,[e]);return this.request(t)}};function kt(r){return r.compat&&r.compat[E.sdkName]!=null?typeof r.compat[E.sdkName]=="string"?yt(Rt(E.version),r.compat[E.sdkName]):!!r.compat[E.sdkName]:!0}function dn(r,e,t){return!e&&!t?`${r}_eth_mainnet`:t?`${r}_${JSON.stringify(t)}`:e?typeof e=="string"?`${r}_eth_${e}`:`${r}_${e.rpcUrl}_${e.chainId}_${e.chainType}`:`${r}_unknown`}function un(r){let e=r?.extensions??[],t={},s=[];if(Array.isArray(e)?e.forEach(n=>{kt(n)?(n.init(this),n.name&&(this[n.name]=n),G(n.config)||(t[n.name]=n.config)):s.push(n)}):Object.keys(e).forEach(n=>{if(kt(e[n])){e[n].init(this);let o=e[n];this[n]=o,G(o.config)||(t[e[n].name]=o.config)}else s.push(e[n])}),s.length)throw Je(s);return t}var Me=class r{constructor(e,t){this.apiKey=e;if(!e)throw qe();E.platform==="react-native"&&t?.endpoint&&Ve().log();let{defaultEndpoint:s,version:n}=E;this.testMode=!!t?.testMode,this.useStorageCache=!!t?.useStorageCache,this.endpoint=Te(t?.endpoint??s).origin,this.auth=new Re(this),this.user=new Ie(this),this.wallet=new be(this),this.nft=new Se(this),this.thirdPartyWallets=new Pe(this),this.rpcProvider=new xe(this);let o=un.call(this,t);this.parameters=Z({API_KEY:this.apiKey,DOMAIN_ORIGIN:typeof window<"u"&&window?.location?window?.location.origin:"",ETH_NETWORK:t?.network,host:Te(this.endpoint).host,sdk:Tt[E.sdkName],version:n,ext:G(o)?void 0:o,locale:t?.locale||"en_US",authConfig:t?.authConfig?{...t.authConfig}:void 0,...E.bundleId?{bundleId:E.bundleId}:{},meta:t?.meta}),this.networkHash=dn(this.apiKey,t?.network,G(o)?void 0:o),t?.deferPreload||this.preload()}static __overlays__=new Map;endpoint;parameters;networkHash;testMode;useStorageCache;auth;user;wallet;nft;thirdPartyWallets;rpcProvider;get overlay(){if(!r.__overlays__.has(this.parameters)){let e=new E.ViewController(this.endpoint,this.parameters,this.networkHash);e.init(),r.__overlays__.set(this.parameters,e)}return r.__overlays__.get(this.parameters)}async preload(){await this.overlay.waitForReady()}};var A=require("@magic-sdk/types");function pn(r,e){return e&&Array.isArray(r)?r.find(t=>t.id===e):r}function Dt(r,e){let t=e.data.response?.id,s=pn(r,t);if(t&&s){let n=new j(s).applyResult(e.data.response.result).applyError(e.data.response.error);return{id:t,response:n}}return{}}async function qt(r,e,t){let s=await v("rt"),n;if(E.platform==="web")try{n=await v("jwt")??await ze()}catch(a){console.error("webcrypto error",a)}let o={msgType:r,payload:e};n&&(o.jwt=n),n&&s&&(o.rt=s);let i=await _t(t);return i&&(o.deviceShare=i),o}async function Ut(r){r.data.rt&&await C("rt",r.data.rt)}function Ft(r,e){let t=null;return function(...s){t&&clearTimeout(t),t=setTimeout(()=>{r(...s)},e)}}var hn=1e3,Jt=60*hn,Wt=5*Jt,mn=60*Jt,Ce=class{constructor(e,t,s){this.endpoint=e;this.parameters=t;this.networkHash=s;this.listen()}isReadyForRequest=!1;messageHandlers=new Set;isConnectedToInternet=!0;lastPongTime=null;heartbeatIntervalTimer=null;heartbeatDebounce=Ft(()=>{this.endpoint==="https://auth.magic.link/"&&this.heartBeatCheck()},mn);async post(e,t){return ye(async(s,n)=>{if(!this.isConnectedToInternet){let d=Ue();n(d)}await this.checkRelayerExistsInDOM()||(this.isReadyForRequest=!1,await this.reloadRelayer()),this.isReadyForRequest||await this.waitForReady();let o=[],i=Array.isArray(t)?t.map(d=>d.id):[],a=await qt(`${e}-${this.parameters}`,t,this.networkHash);await this._post(a);let c=d=>h=>{let{id:w,response:x}=Dt(t,h);if(Ut(h),x?.payload.error?.message==="User denied account access.")ve();else if(h.data.deviceShare){let{deviceShare:Kt}=h.data;Ot(Kt,this.networkHash)}w&&x&&Array.isArray(t)&&i.includes(w)?(o.push(x),o.length===t.length&&(d(),s(o))):w&&x&&!Array.isArray(t)&&w===t.id&&(d(),s(x))},u=this.on(A.MagicIncomingWindowMessage.MAGIC_HANDLE_RESPONSE,c(()=>u()))})}on(e,t){let s=t.bind(window),n=o=>{o.data.msgType===`${e}-${this.parameters}`&&s(o)};return this.messageHandlers.add(n),()=>this.messageHandlers.delete(n)}waitForReady(){return new Promise(e=>{let t=this.on(A.MagicIncomingWindowMessage.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,e(),t()})})}listen(){this.on(A.MagicIncomingWindowMessage.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(A.MagicIncomingWindowMessage.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(A.MagicIncomingWindowMessage.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,e=>{e.data.response.result.product_announcement&&new O(A.SDKWarningCode.ProductAnnouncement,e.data.response.result.product_announcement).log()})}heartBeatCheck(){let e=!0,t=async()=>{let s={msgType:`${A.MagicOutgoingWindowMessage.MAGIC_PING}-${this.parameters}`,payload:[]};await this._post(s)};this.heartbeatIntervalTimer=setInterval(async()=>{if(this.lastPongTime){if(Date.now()-this.lastPongTime>Wt*2){this.reloadRelayer(),e=!0;return}}else if(!e){this.reloadRelayer(),e=!0;return}await t(),e=!1},Wt)}stopHeartBeat(){this.heartbeatDebounce(),this.lastPongTime=null,this.heartbeatIntervalTimer&&(clearInterval(this.heartbeatIntervalTimer),this.heartbeatIntervalTimer=null)}};var st=require("@magic-sdk/types"),Gt=["request","overlay","sdk"];function En(r){let e=Object.getPrototypeOf(r),t=[e];for(;e!==y.prototype;)e=Object.getPrototypeOf(e),t.push(e);return t}var ot=class extends y{compat;__sdk_access_field_descriptors__=new Map;__is_initialized__=!1;utils={createPromiEvent:I,isPromiEvent:Qe,encodeJSON:Z,decodeJSON:_e,createJsonRpcRequestPayload:m,standardizeJsonRpcRequestPayload:W,storage:te};constructor(){super(void 0);let e=[this,...En(this)];Gt.forEach(t=>{let s=e.map(a=>Object.getOwnPropertyDescriptor(a,t)),n=s.findIndex(a=>!!a),o=n>0,i=s[n];i&&(this.__sdk_access_field_descriptors__.set(t,{descriptor:i,isPrototypeField:o}),Object.defineProperty(this,t,{configurable:!0,get:()=>{throw We(t)}}))})}init(e){this.__is_initialized__||(Gt.forEach(t=>{if(this.__sdk_access_field_descriptors__.has(t)){let{descriptor:s,isPrototypeField:n}=this.__sdk_access_field_descriptors__.get(t);n?delete this[t]:Object.defineProperty(this,t,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:t,removalVersion:s,useInstead:n}=e,o=n?` Use \`${n}\` instead.`:"",i=`\`${t}\` will be removed from this Extension in version \`${s}\`.${o}`;return new K(this,"DEPRECATION_NOTICE",i)}createWarning(e,t){return new K(this,e,t)}createError(e,t,s){return new ee(this,e,t,s)}},Ne=class extends ot{},Ae=class{static Internal=Ne},$e=class extends Ne{constructor(t){super();this.config=t;this.chain=t.chainType}chain;getPublicAddress(){return this.request(this.utils.createJsonRpcRequestPayload(st.MagicPayloadMethod.GetMultichainPublicAddress,[{chain:this.chain}]))}revealPrivateKey(){return this.request(this.utils.createJsonRpcRequestPayload(st.MagicPayloadMethod.RevealPK,[{chain:this.chain}]))}};
6
6
  //# sourceMappingURL=index.js.map