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