@frak-labs/nexus-sdk 0.0.24 → 0.0.25
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/bundle/bundle.js +1 -1
- package/package.json +1 -1
package/dist/bundle/bundle.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
`),{name:"AbiEncodingArrayLengthMismatchError"})}},He=class extends H{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${D(r)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}},Le=class extends H{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${r}`].join(`
|
|
4
4
|
`),{name:"AbiEncodingLengthMismatchError"})}},ze=class extends H{constructor(t,{docsPath:r}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
|
|
5
5
|
`),{docsPath:r,name:"InvalidAbiEncodingType"})}},De=class extends H{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
|
|
6
|
-
`),{name:"InvalidArrayError"})}}});var ye,ge,dt=R(()=>{"use strict";ae();ye=class extends H{constructor({offset:t,position:r,size:n}){super(`Slice ${r==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${n}).`,{name:"SliceOffsetOutOfBoundsError"})}},ge=class extends H{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${t}) exceeds padding size (${r}).`,{name:"SizeExceedsPaddingSizeError"})}}});function U(e,{dir:t,size:r=32}={}){return typeof e=="string"?q(e,{dir:t,size:r}):Zt(e,{dir:t,size:r})}function q(e,{dir:t,size:r=32}={}){if(r===null)return e;let n=e.replace("0x","");if(n.length>r*2)throw new ge({size:Math.ceil(n.length/2),targetSize:r,type:"hex"});return`0x${n[t==="right"?"padEnd":"padStart"](r*2,"0")}`}function Zt(e,{dir:t,size:r=32}={}){if(r===null)return e;if(e.length>r)throw new ge({size:e.length,targetSize:r,type:"bytes"});let n=new Uint8Array(r);for(let a=0;a<r;a++){let l=t==="right";n[l?a:r-a-1]=e[l?a:e.length-a-1]}return n}var be=R(()=>{"use strict";dt()});var pe,Ue,$e=R(()=>{"use strict";ae();pe=class extends H{constructor({max:t,min:r,signed:n,size:a,value:l}){super(`Number "${l}" is not in safe ${a?`${a*8}-bit ${n?"signed":"unsigned"} `:""}integer range ${t?`(${r} to ${t})`:`(above ${r})`}`,{name:"IntegerOutOfRangeError"})}},Ue=class extends H{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed ${r} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}}});function ie(e,{size:t}){if(D(e)>t)throw new Ue({givenSize:D(e),maxSize:t})}var mt=R(()=>{"use strict";$e();xe()});function $(e,t={}){return typeof e=="number"||typeof e=="bigint"?K(e,t):typeof e=="string"?Ne(e,t):typeof e=="boolean"?Oe(e,t):we(e,t)}function Oe(e,t={}){let r=`0x${Number(e)}`;return typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{size:t.size})):r}function we(e,t={}){let r="";for(let a=0;a<e.length;a++)r+=lo[e[a]];let n=`0x${r}`;return typeof t.size=="number"?(ie(n,{size:t.size}),U(n,{dir:"right",size:t.size})):n}function K(e,t={}){let{signed:r,size:n}=t,a=BigInt(e),l;n?r?l=(1n<<BigInt(n)*8n-1n)-1n:l=2n**(BigInt(n)*8n)-1n:typeof e=="number"&&(l=BigInt(Number.MAX_SAFE_INTEGER));let f=typeof l=="bigint"&&r?-l-1n:0;if(l&&a>l||a<f){let p=typeof e=="bigint"?"n":"";throw new pe({max:l?`${l}${p}`:void 0,min:`${f}${p}`,signed:r,size:n,value:`${e}${p}`})}let S=`0x${(r&&a<0?(1n<<BigInt(n*8))+BigInt(a):a).toString(16)}`;return n?U(S,{size:n}):S}function Ne(e,t={}){let r=fo.encode(e);return we(r,t)}var lo,fo,Se=R(()=>{"use strict";$e();be();mt();lo=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));fo=new TextEncoder});function ht(e,t={}){return typeof e=="number"||typeof e=="bigint"?tr(e,t):typeof e=="boolean"?er(e,t):Q(e)?Ie(e,t):_e(e,t)}function er(e,t={}){let r=new Uint8Array(1);return r[0]=Number(e),typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{size:t.size})):r}function Qt(e){if(e>=G.zero&&e<=G.nine)return e-G.zero;if(e>=G.A&&e<=G.F)return e-(G.A-10);if(e>=G.a&&e<=G.f)return e-(G.a-10)}function Ie(e,t={}){let r=e;t.size&&(ie(r,{size:t.size}),r=U(r,{dir:"right",size:t.size}));let n=r.slice(2);n.length%2&&(n=`0${n}`);let a=n.length/2,l=new Uint8Array(a);for(let f=0,S=0;f<a;f++){let p=Qt(n.charCodeAt(S++)),E=Qt(n.charCodeAt(S++));if(p===void 0||E===void 0)throw new H(`Invalid byte sequence ("${n[S-2]}${n[S-1]}" in "${n}").`);l[f]=p*16+E}return l}function tr(e,t){let r=K(e,t);return Ie(r)}function _e(e,t={}){let r=mo.encode(e);return typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{dir:"right",size:t.size})):r}var mo,G,je=R(()=>{"use strict";ae();he();be();mt();Se();mo=new TextEncoder;G={zero:48,nine:57,A:65,F:70,a:97,f:102}});function xt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function ho(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Te(e,...t){if(!ho(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function yt(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function rr(e,t){Te(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}var gt=R(()=>{"use strict"});function xo(e,t=!1){return t?{h:Number(e&Ve),l:Number(e>>or&Ve)}:{h:Number(e>>or&Ve)|0,l:Number(e&Ve)|0}}function nr(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;a<e.length;a++){let{h:l,l:f}=xo(e[a],t);[r[a],n[a]]=[l,f]}return[r,n]}var Ve,or,ar,ir,sr,cr,pr=R(()=>{"use strict";Ve=BigInt(4294967295),or=BigInt(32);ar=(e,t,r)=>e<<r|t>>>32-r,ir=(e,t,r)=>t<<r|e>>>32-r,sr=(e,t,r)=>t<<r-32|e>>>64-r,cr=(e,t,r)=>e<<r-32|t>>>64-r});function wt(e){for(let t=0;t<e.length;t++)e[t]=yo(e[t])}function go(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function qe(e){return typeof e=="string"&&(e=go(e)),Te(e),e}function lr(e){let t=n=>e().update(qe(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function fr(e){let t=(n,a)=>e(a).update(qe(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var ur,bt,yo,We,dr=R(()=>{"use strict";gt();ur=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),bt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,yo=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;We=class{clone(){return this._cloneInto()}}});function Fo(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let f=0;f<10;f++)r[f]=e[f]^e[f+10]^e[f+20]^e[f+30]^e[f+40];for(let f=0;f<10;f+=2){let S=(f+8)%10,p=(f+2)%10,E=r[p],h=r[p+1],d=mr(E,h,1)^r[S],x=hr(E,h,1)^r[S+1];for(let i=0;i<50;i+=10)e[f+i]^=d,e[f+i+1]^=x}let a=e[2],l=e[3];for(let f=0;f<24;f++){let S=yr[f],p=mr(a,l,S),E=hr(a,l,S),h=xr[f];a=e[h],l=e[h+1],e[h]=p,e[h+1]=E}for(let f=0;f<50;f+=10){for(let S=0;S<10;S++)r[S]=e[f+S];for(let S=0;S<10;S++)e[f+S]^=~r[(S+2)%10]&r[(S+4)%10]}e[0]^=vo[n],e[1]^=Eo[n]}r.fill(0)}var xr,yr,gr,bo,ve,wo,So,Io,To,vo,Eo,mr,hr,Ke,ee,va,Ea,Fa,Aa,Ca,br,Pa,Ma,wr,Ra,ka,Sr=R(()=>{"use strict";gt();pr();dr();xr=[],yr=[],gr=[],bo=BigInt(0),ve=BigInt(1),wo=BigInt(2),So=BigInt(7),Io=BigInt(256),To=BigInt(113);for(let e=0,t=ve,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],xr.push(2*(5*n+r)),yr.push((e+1)*(e+2)/2%64);let a=bo;for(let l=0;l<7;l++)t=(t<<ve^(t>>So)*To)%Io,t&wo&&(a^=ve<<(ve<<BigInt(l))-ve);gr.push(a)}[vo,Eo]=nr(gr,!0),mr=(e,t,r)=>r>32?sr(e,t,r):ar(e,t,r),hr=(e,t,r)=>r>32?cr(e,t,r):ir(e,t,r);Ke=class e extends We{constructor(t,r,n,a=!1,l=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=l,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,xt(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=ur(this.state)}keccak(){bt||wt(this.state32),Fo(this.state32,this.rounds),bt||wt(this.state32),this.posOut=0,this.pos=0}update(t){yt(this);let{blockLen:r,state:n}=this;t=qe(t);let a=t.length;for(let l=0;l<a;){let f=Math.min(r-this.pos,a-l);for(let S=0;S<f;S++)n[this.pos++]^=t[l++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:r,pos:n,blockLen:a}=this;t[n]^=r,r&128&&n===a-1&&this.keccak(),t[a-1]^=128,this.keccak()}writeInto(t){yt(this,!1),Te(t),this.finish();let r=this.state,{blockLen:n}=this;for(let a=0,l=t.length;a<l;){this.posOut>=n&&this.keccak();let f=Math.min(n-this.posOut,l-a);t.set(r.subarray(this.posOut,this.posOut+f),a),this.posOut+=f,a+=f}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return xt(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(rr(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:r,suffix:n,outputLen:a,rounds:l,enableXOF:f}=this;return t||(t=new e(r,n,a,f,l)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=l,t.suffix=n,t.outputLen=a,t.enableXOF=f,t.destroyed=this.destroyed,t}},ee=(e,t,r)=>lr(()=>new Ke(t,e,r)),va=ee(6,144,224/8),Ea=ee(6,136,256/8),Fa=ee(6,104,384/8),Aa=ee(6,72,512/8),Ca=ee(1,144,224/8),br=ee(1,136,256/8),Pa=ee(1,104,384/8),Ma=ee(1,72,512/8),wr=(e,t,r)=>fr((n={})=>new Ke(t,e,n.dkLen===void 0?r:n.dkLen,!0)),Ra=wr(31,168,128/8),ka=wr(31,136,256/8)});function Ee(e,t){let r=t||"hex",n=br(Q(e,{strict:!1})?ht(e):e);return r==="bytes"?n:$(n)}var St=R(()=>{"use strict";Sr();he();je();Se()});var se,It=R(()=>{"use strict";ae();se=class extends H{constructor({address:t}){super(`Address "${t}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}});var ue,Tt=R(()=>{"use strict";ue=class extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){let r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){let n=this.keys().next().value;n&&this.delete(n)}return this}}});function Ir(e,t){if(vt.has(`${e}.${t}`))return vt.get(`${e}.${t}`);let r=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),n=Ee(_e(r),"bytes"),a=(t?r.substring(`${t}0x`.length):r).split("");for(let f=0;f<40;f+=2)n[f>>1]>>4>=8&&a[f]&&(a[f]=a[f].toUpperCase()),(n[f>>1]&15)>=8&&a[f+1]&&(a[f+1]=a[f+1].toUpperCase());let l=`0x${a.join("")}`;return vt.set(`${e}.${t}`,l),l}var vt,Tr=R(()=>{"use strict";je();St();Tt();vt=new ue(8192)});function Fe(e,t){let{strict:r=!0}=t??{},n=`${e}.${r}`;if(Et.has(n))return Et.get(n);let a=Ao.test(e)?e.toLowerCase()===e?!0:r?Ir(e)===e:!0:!1;return Et.set(n,a),a}var Ao,Et,Ft=R(()=>{"use strict";Tt();Tr();Ao=/^0x[a-fA-F0-9]{40}$/,Et=new ue(8192)});function te(e){return typeof e[0]=="string"?j(e):vr(e)}function vr(e){let t=0;for(let a of e)t+=a.length;let r=new Uint8Array(t),n=0;for(let a of e)r.set(a,n),n+=a.length;return r}function j(e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}var At=R(()=>{"use strict"});function Er(e,t,r,{strict:n}={}){return Q(e,{strict:!1})?Po(e,t,r,{strict:n}):Co(e,t,r,{strict:n})}function Fr(e,t){if(typeof t=="number"&&t>0&&t>D(e)-1)throw new ye({offset:t,position:"start",size:D(e)})}function Ar(e,t,r){if(typeof t=="number"&&typeof r=="number"&&D(e)!==r-t)throw new ye({offset:r,position:"end",size:D(e)})}function Co(e,t,r,{strict:n}={}){Fr(e,t);let a=e.slice(t,r);return n&&Ar(a,t,r),a}function Po(e,t,r,{strict:n}={}){Fr(e,t);let a=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return n&&Ar(a,t,r),a}var Cr=R(()=>{"use strict";dt();he();xe()});var Pr,Mr=R(()=>{"use strict";Pr=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/});function Ct(e,t){if(e.length!==t.length)throw new Le({expectedLength:e.length,givenLength:t.length});let r=Mo({params:e,values:t}),n=Mt(r);return n.length===0?"0x":n}function Mo({params:e,values:t}){let r=[];for(let n=0;n<e.length;n++)r.push(Pt({param:e[n],value:t[n]}));return r}function Pt({param:e,value:t}){let r=Uo(e.type);if(r){let[n,a]=r;return ko(t,{length:n,param:{...e,type:a}})}if(e.type==="tuple")return Do(t,{param:e});if(e.type==="address")return Ro(t);if(e.type==="bool")return Ho(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){let n=e.type.startsWith("int"),[,,a="256"]=Pr.exec(e.type)??[];return Lo(t,{signed:n,size:Number(a)})}if(e.type.startsWith("bytes"))return Bo(t,{param:e});if(e.type==="string")return zo(t);throw new ze(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Mt(e){let t=0;for(let l=0;l<e.length;l++){let{dynamic:f,encoded:S}=e[l];f?t+=32:t+=D(S)}let r=[],n=[],a=0;for(let l=0;l<e.length;l++){let{dynamic:f,encoded:S}=e[l];f?(r.push(K(t+a,{size:32})),n.push(S),a+=D(S)):r.push(S)}return te([...r,...n])}function Ro(e){if(!Fe(e))throw new se({address:e});return{dynamic:!1,encoded:q(e.toLowerCase())}}function ko(e,{length:t,param:r}){let n=t===null;if(!Array.isArray(e))throw new De(e);if(!n&&e.length!==t)throw new Be({expectedLength:t,givenLength:e.length,type:`${r.type}[${t}]`});let a=!1,l=[];for(let f=0;f<e.length;f++){let S=Pt({param:r,value:e[f]});S.dynamic&&(a=!0),l.push(S)}if(n||a){let f=Mt(l);if(n){let S=K(l.length,{size:32});return{dynamic:!0,encoded:l.length>0?te([S,f]):S}}if(a)return{dynamic:!0,encoded:f}}return{dynamic:!1,encoded:te(l.map(({encoded:f})=>f))}}function Bo(e,{param:t}){let[,r]=t.type.split("bytes"),n=D(e);if(!r){let a=e;return n%32!==0&&(a=q(a,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:te([q(K(n,{size:32})),a])}}if(n!==Number.parseInt(r))throw new He({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:q(e,{dir:"right"})}}function Ho(e){if(typeof e!="boolean")throw new H(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:q(Oe(e))}}function Lo(e,{signed:t,size:r=256}){if(typeof r=="number"){let n=2n**(BigInt(r)-(t?1n:0n))-1n,a=t?-n-1n:0n;if(e>n||e<a)throw new pe({max:n.toString(),min:a.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:K(e,{size:32,signed:t})}}function zo(e){let t=Ne(e),r=Math.ceil(D(t)/32),n=[];for(let a=0;a<r;a++)n.push(q(Er(t,a*32,(a+1)*32),{dir:"right"}));return{dynamic:!0,encoded:te([q(K(D(t),{size:32})),...n])}}function Do(e,{param:t}){let r=!1,n=[];for(let a=0;a<t.components.length;a++){let l=t.components[a],f=Array.isArray(e)?a:l.name,S=Pt({param:l,value:e[f]});n.push(S),S.dynamic&&(r=!0)}return{dynamic:r,encoded:r?Mt(n):te(n.map(({encoded:a})=>a))}}function Uo(e){let t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Rr=R(()=>{"use strict";Yt();It();ae();$e();Ft();At();be();xe();Cr();Se();Mr()});function Rt(e,t){if(!Fe(e,{strict:!1}))throw new se({address:e});if(!Fe(t,{strict:!1}))throw new se({address:t});return e.toLowerCase()===t.toLowerCase()}var kr=R(()=>{"use strict";It();Ft()});var Zo={};oo(Zo,{Deferred:()=>W,FrakContextManager:()=>re,FrakRpcError:()=>B,PressInteractionEncoder:()=>Jr,PurchaseInteractionEncoder:()=>Gr,ReferralInteractionEncoder:()=>Qe,RpcErrorCodes:()=>z,WebShopInteractionEncoder:()=>Xr,compressJson:()=>de,createIFrameNexusClient:()=>ut,createIframe:()=>ct,decompressDataAndCheckHash:()=>ne,decompressJson:()=>me,displayModal:()=>J,getProductInformation:()=>jr,hashAndCompressData:()=>oe,interactionTypes:()=>V,modalBuilder:()=>Kr,openSso:()=>_r,processReferral:()=>et,productTypes:()=>O,productTypesMask:()=>$r,referralInteraction:()=>Yr,sendInteraction:()=>Ye,sendTransaction:()=>qr,siweAuthenticate:()=>Wr,trackPurchaseStatus:()=>Vr,watchWalletStatus:()=>Xe});function Dt(e){document.readyState==="complete"||document.readyState==="interactive"?setTimeout(e,1):document.addEventListener?document.addEventListener("DOMContentLoaded",e):document.attachEvent("onreadystatechange",()=>{document.readyState==="complete"&&e()})}async function Ut(e,t){return document.getElementById(e)?Promise.resolve(!0):new Promise((r,n)=>{let a=document.createElement("script");a.id=e,a.src=t,a.async=!0,a.onload=()=>r(!0),a.onerror=()=>n(new Error(`Script load error for ${t}`)),document.head.appendChild(a)})}function $t(){ao(),io()}function ao(){window.FrakSetup.config={walletUrl:"https://wallet.frak.id",metadata:{name:"Moov360"},domain:window.location.host},window.FrakSetup.modalConfig={login:{allowSso:!0,ssoMetadata:{logoUrl:"https://moov360.com/wp-content/uploads/2022/07/MOOV360noir-1.png",homepageLink:"https://moov360.com/"}},metadata:{header:{icon:"https://moov360.com/wp-content/uploads/2022/07/MOOV360noir-1.png"},lang:"fr"}},window.FrakSetup.modalShareConfig={popupTitle:"Partage ce produit avec tes amis",text:"D\xE9couvre ce produit chez Moov360!",link:window.location.href}}function io(){let e=document.querySelectorAll("a.frak-link");for(let t of Array.from(e)){let r=document.createElement("frak-button-share");r.setAttribute("text","Partage et gagne"),r.setAttribute("classname","button"),r.style.display="block",r.style.marginTop="20px",t.replaceWith(r)}}var so={"moov360.com":$t};function Ot(){let e=so[window.location.host];e&&e(),Ut("frak-components","https://cdn.jsdelivr.net/npm/@frak-labs/components@latest/dist/bundle/components.js")}var B=class extends Error{constructor(r,n,a){super(n);this.code=r;this.data=a}};var Me=class extends B{constructor(t){super(z.internalError,t)}};var z={parseError:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internalError:-32603,serverError:-32e3,clientNotConnected:-32001,configError:-32002,corruptedResponse:-32003,clientAborted:-32004,walletNotConnected:-32005,serverErrorForInteractionDelegation:-32006};var W=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve=t=>{this._resolve?.(t)};reject=t=>{this._reject?.(t)}};var co=(e="button[data-frak-share-button], #nexus-share-button > button")=>document.querySelectorAll(e),po=(e,t)=>{if(e){t?.removeAttribute("disabled");return}t?.setAttribute("disabled","")},Nt=e=>t=>{let r=Array.from(co(t?.metadata?.buttonShare));for(let n of r)po(e,n)},_t=Nt(!0),jt=Nt(!1);var Vt=Pe(nt(),1),it=Pe(at(),1);async function oe(e){let t=(0,it.sha256)(JSON.stringify(e)),r={...e,validationHash:t},n=await de(r),a=(0,it.sha256)(n);return{compressed:n,compressedHash:a}}async function de(e){return(0,Vt.compressToBase64)(JSON.stringify(e))}var Wt=Pe(nt(),1),st=Pe(at(),1);async function ne(e){if(!(e?.compressed&&e?.compressedHash))throw new B(z.corruptedResponse,"Missing compressed data");let t=await me(e.compressed);if(!t)throw new B(z.corruptedResponse,"Invalid compressed data");if(!t?.validationHash)throw new B(z.corruptedResponse,"Missing validation hash");if((0,st.sha256)(e.compressed)!==e.compressedHash)throw new B(z.corruptedResponse,"Invalid compressed hash");let{validationHash:n,...a}=t;if((0,st.sha256)(JSON.stringify(a))!==t.validationHash)throw new B(z.corruptedResponse,"Invalid data validation hash");return t}async function me(e){let t=await(0,Wt.decompressFromBase64)(e);try{return JSON.parse(t)}catch(r){return console.error("Invalid compressed data",{e:r,decompressed:t}),null}}var ce="nexus-wallet-backup";function qt(){let e=new Map;return{createChannel:t=>{let r=Math.random().toString(36).substring(7);return e.set(r,t),r},getRpcResolver:t=>e.get(t),removeChannel:t=>e.delete(t),destroy:()=>e.clear()}}var ke={id:"nexus-wallet",name:"nexus-wallet",allow:"publickey-credentials-get *; clipboard-write; web-share *",style:{width:"0",height:"0",border:"0",position:"absolute",zIndex:1e3,top:"-1000px",left:"-1000px"}};function ct({walletBaseUrl:e,config:t}){jt(t);let r=document.querySelector("#nexus-wallet");r&&r.remove();let n=document.createElement("iframe");return n.id=ke.id,n.name=ke.name,n.allow=ke.allow,n.style.zIndex=ke.style.zIndex.toString(),pt({iframe:n,isVisible:!1}),document.body.appendChild(n),new Promise(a=>{n?.addEventListener("load",()=>a(n)),n.src=`${e??t?.walletUrl??"https://wallet.frak.id"}/listener`})}function pt({iframe:e,isVisible:t}){if(!t){e.style.width="0",e.style.height="0",e.style.border="0",e.style.position="fixed",e.style.top="-1000px",e.style.left="-1000px";return}e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.width="100%",e.style.height="100%",e.style.pointerEvents="auto"}function Kt({iframe:e}){let t=new W;return{handleEvent:async n=>{switch(n.iframeLifecycle){case"connected":t.resolve(!0);break;case"do-backup":n.data.backup?localStorage.setItem(ce,n.data.backup):localStorage.removeItem(ce);break;case"remove-backup":localStorage.removeItem(ce);break;case"show":case"hide":pt({iframe:e,isVisible:n.iframeLifecycle==="show"});break}},isConnected:t.promise}}function Jt({nexusWalletUrl:e,iframe:t,channelManager:r,iframeLifecycleManager:n}){if(typeof window>"u")throw new B(z.configError,"iframe client should be used in the browser");if(!t.contentWindow)throw new B(z.configError,"The iframe does not have a product window");let a=t.contentWindow,l=async p=>{if(!(p.origin&&URL.canParse(p.origin))||new URL(p.origin).origin.toLowerCase()!==new URL(e).origin.toLowerCase())return;if("iframeLifecycle"in p.data){await n.handleEvent(p.data);return}if("clientLifecycle"in p.data){console.error("Client lifecycle event received on the client side, dismissing it");return}let E=p.data.id,h=r.getRpcResolver(E);h&&await h(p.data)};return window.addEventListener("message",l),{sendEvent:p=>{a.postMessage(p,{targetOrigin:e})},cleanup:()=>{window.removeEventListener("message",l)}}}function ut({config:e,iframe:t}){let r=qt(),n=Kt({iframe:t}),a=Jt({nexusWalletUrl:e?.walletUrl??"https://wallet.frak.id",iframe:t,channelManager:r,iframeLifecycleManager:n}),l=async E=>{if(!await n.isConnected)throw new B(z.clientNotConnected,"The iframe provider isn't connected yet");let d=new W,x=r.createChannel(async g=>{let o=await ne(g.data);o.error?d.reject(new B(o.error.code,o.error.message,o.error?.data)):d.resolve(o.result),r.removeChannel(x)}),i=await oe(E);return a.sendEvent({id:x,topic:E.method,data:i}),d.promise},f=async(E,h)=>{if(!await n.isConnected)throw new B(z.clientNotConnected,"The iframe provider isn't connected yet");let x=r.createChannel(async g=>{let o=await ne(g.data);if(o.result)h(o.result);else throw new Me("No valid result in the response")}),i=await oe(E);a.sendEvent({id:x,topic:E.method,data:i})},S=async()=>{r.destroy(),a.cleanup(),t.remove()},p=uo({config:e,messageHandler:a,lifecycleManager:n});return{config:e,waitForConnection:n.isConnected,waitForSetup:p,request:l,listenerRequest:f,destroy:S}}async function uo({config:e,messageHandler:t,lifecycleManager:r}){await r.isConnected,_t(e);let n=async()=>{let l=e.metadata.css;l&&t.sendEvent({clientLifecycle:"modal-css",data:{cssLink:l}})},a=async()=>{if(typeof window>"u")return;let l=window.localStorage.getItem(ce);l&&t.sendEvent({clientLifecycle:"restore-backup",data:{backup:l}})};await Promise.all([n(),a()])}var Je=256,Ge;function Br(e=11){if(!Ge||Je+e>256*2){Ge="",Je=0;for(let t=0;t<256;t++)Ge+=(256+Math.random()*256|0).toString(16).substring(1)}return Ge.substring(Je,Je+++e)}Rr();je();Se();At();kr();St();be();var kt="fCtx";function $o(e){return btoa(Array.from(e,t=>String.fromCharCode(t)).join("")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function Oo(e){let t=e.length%4;return Uint8Array.from(atob(e.replace(/-/g,"+").replace(/_/g,"/").padEnd(e.length+(t===0?0:4-t),"=")),r=>r.charCodeAt(0))}function Hr(e){if(e?.r)try{let t=Ie(e.r);return $o(t)}catch(t){console.error("Error compressing Frak context",{e:t,context:e})}}function Lr(e){if(!(!e||e.length===0))try{let t=Oo(e);return{r:we(t,{size:20})}}catch(t){console.error("Error decompressing Frak context",{e:t,context:e})}}function zr({url:e}){if(!e)return null;let r=new URL(e).searchParams.get(kt);return r?Lr(r):null}function Dr({url:e,context:t}){if(!e)return null;let r=zr({url:e}),n=r?{...r,...t}:t;if(!n.r)return null;let a=Hr(n);if(!a)return null;let l=new URL(e);return l.searchParams.set(kt,a),l.toString()}function Ur(e){let t=new URL(e);return t.searchParams.delete(kt),t.toString()}function No({url:e,context:t}){if(!window.location?.href||typeof window>"u"){console.error("No window found, can't update context");return}let r=e??window.location.href,n;t!==null?n=Dr({url:r,context:t}):n=Ur(r),n&&window.history.replaceState(null,"",n.toString())}var re={compress:Hr,decompress:Lr,parse:zr,update:Dr,remove:Ur,replaceUrl:No};var O={dapp:1,press:2,webshop:3,referral:30,purchase:31},$r=Object.entries(O).reduce((e,[t,r])=>(e[t]=BigInt(1)<<BigInt(r),e),{});var V={press:{openArticle:"0xc0a24ffb",readArticle:"0xd5bd0fbe"},dapp:{proofVerifiableStorageUpdate:"0x2ab2aeef",callableVerifiableStorageUpdate:"0xa07da986"},webshop:{open:"0xb311798f"},referral:{referred:"0x010cc3b9",createLink:"0xb2c0f17c"},purchase:{started:"0xd87e90c3",completed:"0x8403aeb4",unsafeCompleted:"0x4d5b14e0"}};function Xe(e,t){if(!t)return e.request({method:"frak_listenToWalletStatus"}).then(a=>(Or(a.interactionToken),a));let r=new W,n=!1;return e.listenerRequest({method:"frak_listenToWalletStatus"},a=>{t(a),Or(a.interactionToken),n||(r.resolve(a),n=!0)}).then(()=>r.promise)}function Or(e){typeof window>"u"||(e?window.sessionStorage.setItem("frak-wallet-interaction-token",e):window.sessionStorage.removeItem("frak.interaction-token"))}function Nr({domain:e}){let t=e??window.location.host;return Ee($(t))}async function Ye(e,{productId:t,interaction:r,validation:n}){let a=t??Nr(e.config);return await e.request({method:"frak_sendInteraction",params:[a,r,n]})}async function J(e,{steps:t,metadata:r}){return await e.request({method:"frak_displayModal",params:[t,e.config.metadata.name,r]})}async function _r(e,t){let{metadata:r}=e.config;await e.request({method:"frak_sso",params:[t,r.name,r.css]})}async function jr(e){return await e.request({method:"frak_getProductInformation"})}async function Vr(e){if(typeof window>"u"){console.warn("[Frak] No window found, can't track purchase");return}let t=window.sessionStorage.getItem("frak-wallet-interaction-token");if(!t){console.warn("[Frak] No frak session found, skipping purchase check");return}await fetch("https://backend.frak.id/interactions/listenForPurchase",{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","x-wallet-sdk-auth":t},body:JSON.stringify(e)})}function Bt(){return Br(96)}async function Wr(e,{siwe:t,metadata:r}){let n=e.config?.domain??window.location.host,a=t?.statement??`I confirm that I want to use my Frak wallet on: ${e.config.metadata.name}`,l={...t,statement:a,nonce:t?.nonce??Bt(),uri:t?.uri??`https://${n}`,version:t?.version??"1",domain:n};return(await J(e,{metadata:r,steps:{login:{},siweAuthenticate:{siwe:l}}})).siweAuthenticate}async function qr(e,{tx:t,metadata:r}){return(await J(e,{metadata:r,steps:{login:{},sendTransaction:{tx:t}}})).sendTransaction}function Kr(e,{metadata:t,login:r,openSession:n}){return Ze(e,{steps:{login:r??{},openSession:n??{}},metadata:t})}function Ze(e,t){function r(f){return Ze(e,{...t,steps:{...t.steps,sendTransaction:f}})}function n(f){return Ze(e,{...t,steps:{...t.steps,final:{...f,action:{key:"reward"}}}})}function a(f,S){return Ze(e,{...t,steps:{...t.steps,final:{...S,action:{key:"sharing",options:f}}}})}async function l(){return await J(e,t)}return{params:t,sendTx:r,reward:n,sharing:a,display:l}}function _o({articleId:e}){let t=j([V.press.openArticle,U(e,{size:32})]);return{handlerTypeDenominator:$(O.press),interactionData:t}}function jo({articleId:e}){let t=j([V.press.readArticle,U(e,{size:32})]);return{handlerTypeDenominator:$(O.press),interactionData:t}}var Jr={openArticle:_o,readArticle:jo};function Vo(){let e=j([V.referral.createLink,"0x"]);return{handlerTypeDenominator:$(O.referral),interactionData:e}}function Wo({referrer:e}){let t=j([V.referral.referred,U(e,{size:32})]);return{handlerTypeDenominator:$(O.referral),interactionData:t}}var Qe={createLink:Vo,referred:Wo};function qo({purchaseId:e}){let t=j([V.purchase.started,U(e,{size:32})]);return{handlerTypeDenominator:$(O.purchase),interactionData:t}}function Ko({purchaseId:e,proof:t}){let r=Ct([{type:"uint256"},{type:"bytes32[]"}],[BigInt(e),t]),n=j([V.purchase.completed,r]);return{handlerTypeDenominator:$(O.purchase),interactionData:n}}var Gr={startPurchase:qo,completedPurchase:Ko};function Jo(){let e=j([V.webshop.open,"0x"]);return{handlerTypeDenominator:$(O.webshop),interactionData:e}}var Xr={open:Jo};async function et(e,{walletStatus:t,frakContext:r,modalConfig:n,productId:a,options:l}){let f=!1;async function S(){if(!f)return f=!0,Xo(e,{modalConfig:n,walletStatus:t})}async function p(E){let h=Qe.referred({referrer:E});await Ye(e,{productId:a,interaction:h})}try{let{status:E,currentWallet:h}=await Go({initialWalletStatus:t,getFreshWalletStatus:S,pushReferralInteraction:p,frakContext:r});return re.replaceUrl({url:window.location?.href,context:l?.alwaysAppendUrl?{r:h}:null}),E}catch(E){return console.log("Error processing referral",{error:E}),re.replaceUrl({url:window.location?.href,context:l?.alwaysAppendUrl?{r:t?.wallet}:null}),Yo(E)}}async function Go({initialWalletStatus:e,getFreshWalletStatus:t,pushReferralInteraction:r,frakContext:n}){let a=e?.wallet;return n?.r?(a||(a=await t()),a&&Rt(n.r,a)?{status:"self-referral",currentWallet:a}:(e?.interactionSession||(a=await t()),await r(n.r),{status:"success",currentWallet:a})):{status:"no-referrer",currentWallet:a}}async function Xo(e,{modalConfig:t,walletStatus:r}){return r?.interactionSession?r.wallet??void 0:t?(await J(e,t))?.login?.wallet??void 0:void 0}function Yo(e){if(e instanceof B)switch(e.code){case z.walletNotConnected:return"no-wallet";case z.serverErrorForInteractionDelegation:return"no-session";default:return"error"}return"error"}async function Yr(e,{productId:t,modalConfig:r,options:n}={}){let a=re.parse({url:window.location.href}),l=await Xe(e);try{return await et(e,{walletStatus:l,frakContext:a,modalConfig:r,productId:t,options:n})}catch(f){return f}}Dt(()=>Ot());return no(Zo);})();
|
|
6
|
+
`),{name:"InvalidArrayError"})}}});var ye,ge,dt=R(()=>{"use strict";ae();ye=class extends H{constructor({offset:t,position:r,size:n}){super(`Slice ${r==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${n}).`,{name:"SliceOffsetOutOfBoundsError"})}},ge=class extends H{constructor({size:t,targetSize:r,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${t}) exceeds padding size (${r}).`,{name:"SizeExceedsPaddingSizeError"})}}});function U(e,{dir:t,size:r=32}={}){return typeof e=="string"?q(e,{dir:t,size:r}):Zt(e,{dir:t,size:r})}function q(e,{dir:t,size:r=32}={}){if(r===null)return e;let n=e.replace("0x","");if(n.length>r*2)throw new ge({size:Math.ceil(n.length/2),targetSize:r,type:"hex"});return`0x${n[t==="right"?"padEnd":"padStart"](r*2,"0")}`}function Zt(e,{dir:t,size:r=32}={}){if(r===null)return e;if(e.length>r)throw new ge({size:e.length,targetSize:r,type:"bytes"});let n=new Uint8Array(r);for(let a=0;a<r;a++){let l=t==="right";n[l?a:r-a-1]=e[l?a:e.length-a-1]}return n}var be=R(()=>{"use strict";dt()});var pe,Ue,$e=R(()=>{"use strict";ae();pe=class extends H{constructor({max:t,min:r,signed:n,size:a,value:l}){super(`Number "${l}" is not in safe ${a?`${a*8}-bit ${n?"signed":"unsigned"} `:""}integer range ${t?`(${r} to ${t})`:`(above ${r})`}`,{name:"IntegerOutOfRangeError"})}},Ue=class extends H{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed ${r} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}}});function ie(e,{size:t}){if(D(e)>t)throw new Ue({givenSize:D(e),maxSize:t})}var mt=R(()=>{"use strict";$e();xe()});function $(e,t={}){return typeof e=="number"||typeof e=="bigint"?K(e,t):typeof e=="string"?Ne(e,t):typeof e=="boolean"?Oe(e,t):we(e,t)}function Oe(e,t={}){let r=`0x${Number(e)}`;return typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{size:t.size})):r}function we(e,t={}){let r="";for(let a=0;a<e.length;a++)r+=lo[e[a]];let n=`0x${r}`;return typeof t.size=="number"?(ie(n,{size:t.size}),U(n,{dir:"right",size:t.size})):n}function K(e,t={}){let{signed:r,size:n}=t,a=BigInt(e),l;n?r?l=(1n<<BigInt(n)*8n-1n)-1n:l=2n**(BigInt(n)*8n)-1n:typeof e=="number"&&(l=BigInt(Number.MAX_SAFE_INTEGER));let f=typeof l=="bigint"&&r?-l-1n:0;if(l&&a>l||a<f){let p=typeof e=="bigint"?"n":"";throw new pe({max:l?`${l}${p}`:void 0,min:`${f}${p}`,signed:r,size:n,value:`${e}${p}`})}let S=`0x${(r&&a<0?(1n<<BigInt(n*8))+BigInt(a):a).toString(16)}`;return n?U(S,{size:n}):S}function Ne(e,t={}){let r=fo.encode(e);return we(r,t)}var lo,fo,Se=R(()=>{"use strict";$e();be();mt();lo=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));fo=new TextEncoder});function ht(e,t={}){return typeof e=="number"||typeof e=="bigint"?tr(e,t):typeof e=="boolean"?er(e,t):Q(e)?Ie(e,t):_e(e,t)}function er(e,t={}){let r=new Uint8Array(1);return r[0]=Number(e),typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{size:t.size})):r}function Qt(e){if(e>=G.zero&&e<=G.nine)return e-G.zero;if(e>=G.A&&e<=G.F)return e-(G.A-10);if(e>=G.a&&e<=G.f)return e-(G.a-10)}function Ie(e,t={}){let r=e;t.size&&(ie(r,{size:t.size}),r=U(r,{dir:"right",size:t.size}));let n=r.slice(2);n.length%2&&(n=`0${n}`);let a=n.length/2,l=new Uint8Array(a);for(let f=0,S=0;f<a;f++){let p=Qt(n.charCodeAt(S++)),E=Qt(n.charCodeAt(S++));if(p===void 0||E===void 0)throw new H(`Invalid byte sequence ("${n[S-2]}${n[S-1]}" in "${n}").`);l[f]=p*16+E}return l}function tr(e,t){let r=K(e,t);return Ie(r)}function _e(e,t={}){let r=mo.encode(e);return typeof t.size=="number"?(ie(r,{size:t.size}),U(r,{dir:"right",size:t.size})):r}var mo,G,je=R(()=>{"use strict";ae();he();be();mt();Se();mo=new TextEncoder;G={zero:48,nine:57,A:65,F:70,a:97,f:102}});function xt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function ho(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Te(e,...t){if(!ho(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function yt(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function rr(e,t){Te(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}var gt=R(()=>{"use strict"});function xo(e,t=!1){return t?{h:Number(e&Ve),l:Number(e>>or&Ve)}:{h:Number(e>>or&Ve)|0,l:Number(e&Ve)|0}}function nr(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let a=0;a<e.length;a++){let{h:l,l:f}=xo(e[a],t);[r[a],n[a]]=[l,f]}return[r,n]}var Ve,or,ar,ir,sr,cr,pr=R(()=>{"use strict";Ve=BigInt(4294967295),or=BigInt(32);ar=(e,t,r)=>e<<r|t>>>32-r,ir=(e,t,r)=>t<<r|e>>>32-r,sr=(e,t,r)=>t<<r-32|e>>>64-r,cr=(e,t,r)=>e<<r-32|t>>>64-r});function wt(e){for(let t=0;t<e.length;t++)e[t]=yo(e[t])}function go(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function qe(e){return typeof e=="string"&&(e=go(e)),Te(e),e}function lr(e){let t=n=>e().update(qe(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function fr(e){let t=(n,a)=>e(a).update(qe(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}var ur,bt,yo,We,dr=R(()=>{"use strict";gt();ur=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),bt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,yo=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;We=class{clone(){return this._cloneInto()}}});function Fo(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let f=0;f<10;f++)r[f]=e[f]^e[f+10]^e[f+20]^e[f+30]^e[f+40];for(let f=0;f<10;f+=2){let S=(f+8)%10,p=(f+2)%10,E=r[p],h=r[p+1],d=mr(E,h,1)^r[S],x=hr(E,h,1)^r[S+1];for(let i=0;i<50;i+=10)e[f+i]^=d,e[f+i+1]^=x}let a=e[2],l=e[3];for(let f=0;f<24;f++){let S=yr[f],p=mr(a,l,S),E=hr(a,l,S),h=xr[f];a=e[h],l=e[h+1],e[h]=p,e[h+1]=E}for(let f=0;f<50;f+=10){for(let S=0;S<10;S++)r[S]=e[f+S];for(let S=0;S<10;S++)e[f+S]^=~r[(S+2)%10]&r[(S+4)%10]}e[0]^=vo[n],e[1]^=Eo[n]}r.fill(0)}var xr,yr,gr,bo,ve,wo,So,Io,To,vo,Eo,mr,hr,Ke,ee,va,Ea,Fa,Aa,Ca,br,Pa,Ma,wr,Ra,ka,Sr=R(()=>{"use strict";gt();pr();dr();xr=[],yr=[],gr=[],bo=BigInt(0),ve=BigInt(1),wo=BigInt(2),So=BigInt(7),Io=BigInt(256),To=BigInt(113);for(let e=0,t=ve,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],xr.push(2*(5*n+r)),yr.push((e+1)*(e+2)/2%64);let a=bo;for(let l=0;l<7;l++)t=(t<<ve^(t>>So)*To)%Io,t&wo&&(a^=ve<<(ve<<BigInt(l))-ve);gr.push(a)}[vo,Eo]=nr(gr,!0),mr=(e,t,r)=>r>32?sr(e,t,r):ar(e,t,r),hr=(e,t,r)=>r>32?cr(e,t,r):ir(e,t,r);Ke=class e extends We{constructor(t,r,n,a=!1,l=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=a,this.rounds=l,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,xt(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=ur(this.state)}keccak(){bt||wt(this.state32),Fo(this.state32,this.rounds),bt||wt(this.state32),this.posOut=0,this.pos=0}update(t){yt(this);let{blockLen:r,state:n}=this;t=qe(t);let a=t.length;for(let l=0;l<a;){let f=Math.min(r-this.pos,a-l);for(let S=0;S<f;S++)n[this.pos++]^=t[l++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:r,pos:n,blockLen:a}=this;t[n]^=r,r&128&&n===a-1&&this.keccak(),t[a-1]^=128,this.keccak()}writeInto(t){yt(this,!1),Te(t),this.finish();let r=this.state,{blockLen:n}=this;for(let a=0,l=t.length;a<l;){this.posOut>=n&&this.keccak();let f=Math.min(n-this.posOut,l-a);t.set(r.subarray(this.posOut,this.posOut+f),a),this.posOut+=f,a+=f}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return xt(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(rr(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:r,suffix:n,outputLen:a,rounds:l,enableXOF:f}=this;return t||(t=new e(r,n,a,f,l)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=l,t.suffix=n,t.outputLen=a,t.enableXOF=f,t.destroyed=this.destroyed,t}},ee=(e,t,r)=>lr(()=>new Ke(t,e,r)),va=ee(6,144,224/8),Ea=ee(6,136,256/8),Fa=ee(6,104,384/8),Aa=ee(6,72,512/8),Ca=ee(1,144,224/8),br=ee(1,136,256/8),Pa=ee(1,104,384/8),Ma=ee(1,72,512/8),wr=(e,t,r)=>fr((n={})=>new Ke(t,e,n.dkLen===void 0?r:n.dkLen,!0)),Ra=wr(31,168,128/8),ka=wr(31,136,256/8)});function Ee(e,t){let r=t||"hex",n=br(Q(e,{strict:!1})?ht(e):e);return r==="bytes"?n:$(n)}var St=R(()=>{"use strict";Sr();he();je();Se()});var se,It=R(()=>{"use strict";ae();se=class extends H{constructor({address:t}){super(`Address "${t}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}});var ue,Tt=R(()=>{"use strict";ue=class extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}get(t){let r=super.get(t);return super.has(t)&&r!==void 0&&(this.delete(t),super.set(t,r)),r}set(t,r){if(super.set(t,r),this.maxSize&&this.size>this.maxSize){let n=this.keys().next().value;n&&this.delete(n)}return this}}});function Ir(e,t){if(vt.has(`${e}.${t}`))return vt.get(`${e}.${t}`);let r=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),n=Ee(_e(r),"bytes"),a=(t?r.substring(`${t}0x`.length):r).split("");for(let f=0;f<40;f+=2)n[f>>1]>>4>=8&&a[f]&&(a[f]=a[f].toUpperCase()),(n[f>>1]&15)>=8&&a[f+1]&&(a[f+1]=a[f+1].toUpperCase());let l=`0x${a.join("")}`;return vt.set(`${e}.${t}`,l),l}var vt,Tr=R(()=>{"use strict";je();St();Tt();vt=new ue(8192)});function Fe(e,t){let{strict:r=!0}=t??{},n=`${e}.${r}`;if(Et.has(n))return Et.get(n);let a=Ao.test(e)?e.toLowerCase()===e?!0:r?Ir(e)===e:!0:!1;return Et.set(n,a),a}var Ao,Et,Ft=R(()=>{"use strict";Tt();Tr();Ao=/^0x[a-fA-F0-9]{40}$/,Et=new ue(8192)});function te(e){return typeof e[0]=="string"?j(e):vr(e)}function vr(e){let t=0;for(let a of e)t+=a.length;let r=new Uint8Array(t),n=0;for(let a of e)r.set(a,n),n+=a.length;return r}function j(e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}var At=R(()=>{"use strict"});function Er(e,t,r,{strict:n}={}){return Q(e,{strict:!1})?Po(e,t,r,{strict:n}):Co(e,t,r,{strict:n})}function Fr(e,t){if(typeof t=="number"&&t>0&&t>D(e)-1)throw new ye({offset:t,position:"start",size:D(e)})}function Ar(e,t,r){if(typeof t=="number"&&typeof r=="number"&&D(e)!==r-t)throw new ye({offset:r,position:"end",size:D(e)})}function Co(e,t,r,{strict:n}={}){Fr(e,t);let a=e.slice(t,r);return n&&Ar(a,t,r),a}function Po(e,t,r,{strict:n}={}){Fr(e,t);let a=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return n&&Ar(a,t,r),a}var Cr=R(()=>{"use strict";dt();he();xe()});var Pr,Mr=R(()=>{"use strict";Pr=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/});function Ct(e,t){if(e.length!==t.length)throw new Le({expectedLength:e.length,givenLength:t.length});let r=Mo({params:e,values:t}),n=Mt(r);return n.length===0?"0x":n}function Mo({params:e,values:t}){let r=[];for(let n=0;n<e.length;n++)r.push(Pt({param:e[n],value:t[n]}));return r}function Pt({param:e,value:t}){let r=Uo(e.type);if(r){let[n,a]=r;return ko(t,{length:n,param:{...e,type:a}})}if(e.type==="tuple")return Do(t,{param:e});if(e.type==="address")return Ro(t);if(e.type==="bool")return Ho(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){let n=e.type.startsWith("int"),[,,a="256"]=Pr.exec(e.type)??[];return Lo(t,{signed:n,size:Number(a)})}if(e.type.startsWith("bytes"))return Bo(t,{param:e});if(e.type==="string")return zo(t);throw new ze(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Mt(e){let t=0;for(let l=0;l<e.length;l++){let{dynamic:f,encoded:S}=e[l];f?t+=32:t+=D(S)}let r=[],n=[],a=0;for(let l=0;l<e.length;l++){let{dynamic:f,encoded:S}=e[l];f?(r.push(K(t+a,{size:32})),n.push(S),a+=D(S)):r.push(S)}return te([...r,...n])}function Ro(e){if(!Fe(e))throw new se({address:e});return{dynamic:!1,encoded:q(e.toLowerCase())}}function ko(e,{length:t,param:r}){let n=t===null;if(!Array.isArray(e))throw new De(e);if(!n&&e.length!==t)throw new Be({expectedLength:t,givenLength:e.length,type:`${r.type}[${t}]`});let a=!1,l=[];for(let f=0;f<e.length;f++){let S=Pt({param:r,value:e[f]});S.dynamic&&(a=!0),l.push(S)}if(n||a){let f=Mt(l);if(n){let S=K(l.length,{size:32});return{dynamic:!0,encoded:l.length>0?te([S,f]):S}}if(a)return{dynamic:!0,encoded:f}}return{dynamic:!1,encoded:te(l.map(({encoded:f})=>f))}}function Bo(e,{param:t}){let[,r]=t.type.split("bytes"),n=D(e);if(!r){let a=e;return n%32!==0&&(a=q(a,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:te([q(K(n,{size:32})),a])}}if(n!==Number.parseInt(r))throw new He({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:q(e,{dir:"right"})}}function Ho(e){if(typeof e!="boolean")throw new H(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:q(Oe(e))}}function Lo(e,{signed:t,size:r=256}){if(typeof r=="number"){let n=2n**(BigInt(r)-(t?1n:0n))-1n,a=t?-n-1n:0n;if(e>n||e<a)throw new pe({max:n.toString(),min:a.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:K(e,{size:32,signed:t})}}function zo(e){let t=Ne(e),r=Math.ceil(D(t)/32),n=[];for(let a=0;a<r;a++)n.push(q(Er(t,a*32,(a+1)*32),{dir:"right"}));return{dynamic:!0,encoded:te([q(K(D(t),{size:32})),...n])}}function Do(e,{param:t}){let r=!1,n=[];for(let a=0;a<t.components.length;a++){let l=t.components[a],f=Array.isArray(e)?a:l.name,S=Pt({param:l,value:e[f]});n.push(S),S.dynamic&&(r=!0)}return{dynamic:r,encoded:r?Mt(n):te(n.map(({encoded:a})=>a))}}function Uo(e){let t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Rr=R(()=>{"use strict";Yt();It();ae();$e();Ft();At();be();xe();Cr();Se();Mr()});function Rt(e,t){if(!Fe(e,{strict:!1}))throw new se({address:e});if(!Fe(t,{strict:!1}))throw new se({address:t});return e.toLowerCase()===t.toLowerCase()}var kr=R(()=>{"use strict";It();Ft()});var Zo={};oo(Zo,{Deferred:()=>W,FrakContextManager:()=>re,FrakRpcError:()=>B,PressInteractionEncoder:()=>Jr,PurchaseInteractionEncoder:()=>Gr,ReferralInteractionEncoder:()=>Qe,RpcErrorCodes:()=>z,WebShopInteractionEncoder:()=>Xr,compressJson:()=>de,createIFrameNexusClient:()=>ut,createIframe:()=>ct,decompressDataAndCheckHash:()=>ne,decompressJson:()=>me,displayModal:()=>J,getProductInformation:()=>jr,hashAndCompressData:()=>oe,interactionTypes:()=>V,modalBuilder:()=>Kr,openSso:()=>_r,processReferral:()=>et,productTypes:()=>O,productTypesMask:()=>$r,referralInteraction:()=>Yr,sendInteraction:()=>Ye,sendTransaction:()=>qr,siweAuthenticate:()=>Wr,trackPurchaseStatus:()=>Vr,watchWalletStatus:()=>Xe});function Dt(e){document.readyState==="complete"||document.readyState==="interactive"?setTimeout(e,1):document.addEventListener?document.addEventListener("DOMContentLoaded",e):document.attachEvent("onreadystatechange",()=>{document.readyState==="complete"&&e()})}async function Ut(e,t){return document.getElementById(e)?Promise.resolve(!0):new Promise((r,n)=>{let a=document.createElement("script");a.id=e,a.src=t,a.async=!0,a.onload=()=>r(!0),a.onerror=()=>n(new Error(`Script load error for ${t}`)),document.head.appendChild(a)})}function $t(){ao(),io(),Ut("frak-components","https://cdn.jsdelivr.net/npm/@frak-labs/components@latest/dist/bundle/components.js")}function ao(){window.FrakSetup.config={walletUrl:"https://wallet.frak.id",metadata:{name:"Moov360"},domain:window.location.host},window.FrakSetup.modalConfig={login:{allowSso:!0,ssoMetadata:{logoUrl:"https://moov360.com/wp-content/uploads/2022/07/MOOV360noir-1.png",homepageLink:"https://moov360.com/"}},metadata:{header:{icon:"https://moov360.com/wp-content/uploads/2022/07/MOOV360noir-1.png"},lang:"fr"}},window.FrakSetup.modalShareConfig={popupTitle:"Partage ce produit avec tes amis",text:"D\xE9couvre ce produit chez Moov360!",link:window.location.href}}function io(){let e=document.querySelectorAll("a.frak-link");for(let t of Array.from(e)){let r=document.createElement("frak-button-share");r.setAttribute("text","Partage et gagne"),r.setAttribute("classname","button"),r.style.display="block",r.style.marginTop="20px",t.replaceWith(r)}}var so={"moov360.com":$t};function Ot(){let e=so[window.location.host];e&&e()}var B=class extends Error{constructor(r,n,a){super(n);this.code=r;this.data=a}};var Me=class extends B{constructor(t){super(z.internalError,t)}};var z={parseError:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internalError:-32603,serverError:-32e3,clientNotConnected:-32001,configError:-32002,corruptedResponse:-32003,clientAborted:-32004,walletNotConnected:-32005,serverErrorForInteractionDelegation:-32006};var W=class{_promise;_resolve;_reject;constructor(){this._promise=new Promise((t,r)=>{this._resolve=t,this._reject=r})}get promise(){return this._promise}resolve=t=>{this._resolve?.(t)};reject=t=>{this._reject?.(t)}};var co=(e="button[data-frak-share-button], #nexus-share-button > button")=>document.querySelectorAll(e),po=(e,t)=>{if(e){t?.removeAttribute("disabled");return}t?.setAttribute("disabled","")},Nt=e=>t=>{let r=Array.from(co(t?.metadata?.buttonShare));for(let n of r)po(e,n)},_t=Nt(!0),jt=Nt(!1);var Vt=Pe(nt(),1),it=Pe(at(),1);async function oe(e){let t=(0,it.sha256)(JSON.stringify(e)),r={...e,validationHash:t},n=await de(r),a=(0,it.sha256)(n);return{compressed:n,compressedHash:a}}async function de(e){return(0,Vt.compressToBase64)(JSON.stringify(e))}var Wt=Pe(nt(),1),st=Pe(at(),1);async function ne(e){if(!(e?.compressed&&e?.compressedHash))throw new B(z.corruptedResponse,"Missing compressed data");let t=await me(e.compressed);if(!t)throw new B(z.corruptedResponse,"Invalid compressed data");if(!t?.validationHash)throw new B(z.corruptedResponse,"Missing validation hash");if((0,st.sha256)(e.compressed)!==e.compressedHash)throw new B(z.corruptedResponse,"Invalid compressed hash");let{validationHash:n,...a}=t;if((0,st.sha256)(JSON.stringify(a))!==t.validationHash)throw new B(z.corruptedResponse,"Invalid data validation hash");return t}async function me(e){let t=await(0,Wt.decompressFromBase64)(e);try{return JSON.parse(t)}catch(r){return console.error("Invalid compressed data",{e:r,decompressed:t}),null}}var ce="nexus-wallet-backup";function qt(){let e=new Map;return{createChannel:t=>{let r=Math.random().toString(36).substring(7);return e.set(r,t),r},getRpcResolver:t=>e.get(t),removeChannel:t=>e.delete(t),destroy:()=>e.clear()}}var ke={id:"nexus-wallet",name:"nexus-wallet",allow:"publickey-credentials-get *; clipboard-write; web-share *",style:{width:"0",height:"0",border:"0",position:"absolute",zIndex:1e3,top:"-1000px",left:"-1000px"}};function ct({walletBaseUrl:e,config:t}){jt(t);let r=document.querySelector("#nexus-wallet");r&&r.remove();let n=document.createElement("iframe");return n.id=ke.id,n.name=ke.name,n.allow=ke.allow,n.style.zIndex=ke.style.zIndex.toString(),pt({iframe:n,isVisible:!1}),document.body.appendChild(n),new Promise(a=>{n?.addEventListener("load",()=>a(n)),n.src=`${e??t?.walletUrl??"https://wallet.frak.id"}/listener`})}function pt({iframe:e,isVisible:t}){if(!t){e.style.width="0",e.style.height="0",e.style.border="0",e.style.position="fixed",e.style.top="-1000px",e.style.left="-1000px";return}e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.width="100%",e.style.height="100%",e.style.pointerEvents="auto"}function Kt({iframe:e}){let t=new W;return{handleEvent:async n=>{switch(n.iframeLifecycle){case"connected":t.resolve(!0);break;case"do-backup":n.data.backup?localStorage.setItem(ce,n.data.backup):localStorage.removeItem(ce);break;case"remove-backup":localStorage.removeItem(ce);break;case"show":case"hide":pt({iframe:e,isVisible:n.iframeLifecycle==="show"});break}},isConnected:t.promise}}function Jt({nexusWalletUrl:e,iframe:t,channelManager:r,iframeLifecycleManager:n}){if(typeof window>"u")throw new B(z.configError,"iframe client should be used in the browser");if(!t.contentWindow)throw new B(z.configError,"The iframe does not have a product window");let a=t.contentWindow,l=async p=>{if(!(p.origin&&URL.canParse(p.origin))||new URL(p.origin).origin.toLowerCase()!==new URL(e).origin.toLowerCase())return;if("iframeLifecycle"in p.data){await n.handleEvent(p.data);return}if("clientLifecycle"in p.data){console.error("Client lifecycle event received on the client side, dismissing it");return}let E=p.data.id,h=r.getRpcResolver(E);h&&await h(p.data)};return window.addEventListener("message",l),{sendEvent:p=>{a.postMessage(p,{targetOrigin:e})},cleanup:()=>{window.removeEventListener("message",l)}}}function ut({config:e,iframe:t}){let r=qt(),n=Kt({iframe:t}),a=Jt({nexusWalletUrl:e?.walletUrl??"https://wallet.frak.id",iframe:t,channelManager:r,iframeLifecycleManager:n}),l=async E=>{if(!await n.isConnected)throw new B(z.clientNotConnected,"The iframe provider isn't connected yet");let d=new W,x=r.createChannel(async g=>{let o=await ne(g.data);o.error?d.reject(new B(o.error.code,o.error.message,o.error?.data)):d.resolve(o.result),r.removeChannel(x)}),i=await oe(E);return a.sendEvent({id:x,topic:E.method,data:i}),d.promise},f=async(E,h)=>{if(!await n.isConnected)throw new B(z.clientNotConnected,"The iframe provider isn't connected yet");let x=r.createChannel(async g=>{let o=await ne(g.data);if(o.result)h(o.result);else throw new Me("No valid result in the response")}),i=await oe(E);a.sendEvent({id:x,topic:E.method,data:i})},S=async()=>{r.destroy(),a.cleanup(),t.remove()},p=uo({config:e,messageHandler:a,lifecycleManager:n});return{config:e,waitForConnection:n.isConnected,waitForSetup:p,request:l,listenerRequest:f,destroy:S}}async function uo({config:e,messageHandler:t,lifecycleManager:r}){await r.isConnected,_t(e);let n=async()=>{let l=e.metadata.css;l&&t.sendEvent({clientLifecycle:"modal-css",data:{cssLink:l}})},a=async()=>{if(typeof window>"u")return;let l=window.localStorage.getItem(ce);l&&t.sendEvent({clientLifecycle:"restore-backup",data:{backup:l}})};await Promise.all([n(),a()])}var Je=256,Ge;function Br(e=11){if(!Ge||Je+e>256*2){Ge="",Je=0;for(let t=0;t<256;t++)Ge+=(256+Math.random()*256|0).toString(16).substring(1)}return Ge.substring(Je,Je+++e)}Rr();je();Se();At();kr();St();be();var kt="fCtx";function $o(e){return btoa(Array.from(e,t=>String.fromCharCode(t)).join("")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function Oo(e){let t=e.length%4;return Uint8Array.from(atob(e.replace(/-/g,"+").replace(/_/g,"/").padEnd(e.length+(t===0?0:4-t),"=")),r=>r.charCodeAt(0))}function Hr(e){if(e?.r)try{let t=Ie(e.r);return $o(t)}catch(t){console.error("Error compressing Frak context",{e:t,context:e})}}function Lr(e){if(!(!e||e.length===0))try{let t=Oo(e);return{r:we(t,{size:20})}}catch(t){console.error("Error decompressing Frak context",{e:t,context:e})}}function zr({url:e}){if(!e)return null;let r=new URL(e).searchParams.get(kt);return r?Lr(r):null}function Dr({url:e,context:t}){if(!e)return null;let r=zr({url:e}),n=r?{...r,...t}:t;if(!n.r)return null;let a=Hr(n);if(!a)return null;let l=new URL(e);return l.searchParams.set(kt,a),l.toString()}function Ur(e){let t=new URL(e);return t.searchParams.delete(kt),t.toString()}function No({url:e,context:t}){if(!window.location?.href||typeof window>"u"){console.error("No window found, can't update context");return}let r=e??window.location.href,n;t!==null?n=Dr({url:r,context:t}):n=Ur(r),n&&window.history.replaceState(null,"",n.toString())}var re={compress:Hr,decompress:Lr,parse:zr,update:Dr,remove:Ur,replaceUrl:No};var O={dapp:1,press:2,webshop:3,referral:30,purchase:31},$r=Object.entries(O).reduce((e,[t,r])=>(e[t]=BigInt(1)<<BigInt(r),e),{});var V={press:{openArticle:"0xc0a24ffb",readArticle:"0xd5bd0fbe"},dapp:{proofVerifiableStorageUpdate:"0x2ab2aeef",callableVerifiableStorageUpdate:"0xa07da986"},webshop:{open:"0xb311798f"},referral:{referred:"0x010cc3b9",createLink:"0xb2c0f17c"},purchase:{started:"0xd87e90c3",completed:"0x8403aeb4",unsafeCompleted:"0x4d5b14e0"}};function Xe(e,t){if(!t)return e.request({method:"frak_listenToWalletStatus"}).then(a=>(Or(a.interactionToken),a));let r=new W,n=!1;return e.listenerRequest({method:"frak_listenToWalletStatus"},a=>{t(a),Or(a.interactionToken),n||(r.resolve(a),n=!0)}).then(()=>r.promise)}function Or(e){typeof window>"u"||(e?window.sessionStorage.setItem("frak-wallet-interaction-token",e):window.sessionStorage.removeItem("frak.interaction-token"))}function Nr({domain:e}){let t=e??window.location.host;return Ee($(t))}async function Ye(e,{productId:t,interaction:r,validation:n}){let a=t??Nr(e.config);return await e.request({method:"frak_sendInteraction",params:[a,r,n]})}async function J(e,{steps:t,metadata:r}){return await e.request({method:"frak_displayModal",params:[t,e.config.metadata.name,r]})}async function _r(e,t){let{metadata:r}=e.config;await e.request({method:"frak_sso",params:[t,r.name,r.css]})}async function jr(e){return await e.request({method:"frak_getProductInformation"})}async function Vr(e){if(typeof window>"u"){console.warn("[Frak] No window found, can't track purchase");return}let t=window.sessionStorage.getItem("frak-wallet-interaction-token");if(!t){console.warn("[Frak] No frak session found, skipping purchase check");return}await fetch("https://backend.frak.id/interactions/listenForPurchase",{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","x-wallet-sdk-auth":t},body:JSON.stringify(e)})}function Bt(){return Br(96)}async function Wr(e,{siwe:t,metadata:r}){let n=e.config?.domain??window.location.host,a=t?.statement??`I confirm that I want to use my Frak wallet on: ${e.config.metadata.name}`,l={...t,statement:a,nonce:t?.nonce??Bt(),uri:t?.uri??`https://${n}`,version:t?.version??"1",domain:n};return(await J(e,{metadata:r,steps:{login:{},siweAuthenticate:{siwe:l}}})).siweAuthenticate}async function qr(e,{tx:t,metadata:r}){return(await J(e,{metadata:r,steps:{login:{},sendTransaction:{tx:t}}})).sendTransaction}function Kr(e,{metadata:t,login:r,openSession:n}){return Ze(e,{steps:{login:r??{},openSession:n??{}},metadata:t})}function Ze(e,t){function r(f){return Ze(e,{...t,steps:{...t.steps,sendTransaction:f}})}function n(f){return Ze(e,{...t,steps:{...t.steps,final:{...f,action:{key:"reward"}}}})}function a(f,S){return Ze(e,{...t,steps:{...t.steps,final:{...S,action:{key:"sharing",options:f}}}})}async function l(){return await J(e,t)}return{params:t,sendTx:r,reward:n,sharing:a,display:l}}function _o({articleId:e}){let t=j([V.press.openArticle,U(e,{size:32})]);return{handlerTypeDenominator:$(O.press),interactionData:t}}function jo({articleId:e}){let t=j([V.press.readArticle,U(e,{size:32})]);return{handlerTypeDenominator:$(O.press),interactionData:t}}var Jr={openArticle:_o,readArticle:jo};function Vo(){let e=j([V.referral.createLink,"0x"]);return{handlerTypeDenominator:$(O.referral),interactionData:e}}function Wo({referrer:e}){let t=j([V.referral.referred,U(e,{size:32})]);return{handlerTypeDenominator:$(O.referral),interactionData:t}}var Qe={createLink:Vo,referred:Wo};function qo({purchaseId:e}){let t=j([V.purchase.started,U(e,{size:32})]);return{handlerTypeDenominator:$(O.purchase),interactionData:t}}function Ko({purchaseId:e,proof:t}){let r=Ct([{type:"uint256"},{type:"bytes32[]"}],[BigInt(e),t]),n=j([V.purchase.completed,r]);return{handlerTypeDenominator:$(O.purchase),interactionData:n}}var Gr={startPurchase:qo,completedPurchase:Ko};function Jo(){let e=j([V.webshop.open,"0x"]);return{handlerTypeDenominator:$(O.webshop),interactionData:e}}var Xr={open:Jo};async function et(e,{walletStatus:t,frakContext:r,modalConfig:n,productId:a,options:l}){let f=!1;async function S(){if(!f)return f=!0,Xo(e,{modalConfig:n,walletStatus:t})}async function p(E){let h=Qe.referred({referrer:E});await Ye(e,{productId:a,interaction:h})}try{let{status:E,currentWallet:h}=await Go({initialWalletStatus:t,getFreshWalletStatus:S,pushReferralInteraction:p,frakContext:r});return re.replaceUrl({url:window.location?.href,context:l?.alwaysAppendUrl?{r:h}:null}),E}catch(E){return console.log("Error processing referral",{error:E}),re.replaceUrl({url:window.location?.href,context:l?.alwaysAppendUrl?{r:t?.wallet}:null}),Yo(E)}}async function Go({initialWalletStatus:e,getFreshWalletStatus:t,pushReferralInteraction:r,frakContext:n}){let a=e?.wallet;return n?.r?(a||(a=await t()),a&&Rt(n.r,a)?{status:"self-referral",currentWallet:a}:(e?.interactionSession||(a=await t()),await r(n.r),{status:"success",currentWallet:a})):{status:"no-referrer",currentWallet:a}}async function Xo(e,{modalConfig:t,walletStatus:r}){return r?.interactionSession?r.wallet??void 0:t?(await J(e,t))?.login?.wallet??void 0:void 0}function Yo(e){if(e instanceof B)switch(e.code){case z.walletNotConnected:return"no-wallet";case z.serverErrorForInteractionDelegation:return"no-session";default:return"error"}return"error"}async function Yr(e,{productId:t,modalConfig:r,options:n}={}){let a=re.parse({url:window.location.href}),l=await Xe(e);try{return await et(e,{walletStatus:l,frakContext:a,modalConfig:r,productId:t,options:n})}catch(f){return f}}Dt(()=>Ot());return no(Zo);})();
|
|
7
7
|
/*! Bundled license information:
|
|
8
8
|
|
|
9
9
|
js-sha256/src/sha256.js:
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"url": "https://twitter.com/QNivelais"
|
|
12
12
|
}
|
|
13
13
|
],
|
|
14
|
-
"version": "0.0.
|
|
14
|
+
"version": "0.0.25",
|
|
15
15
|
"description": "Frak Wallet client SDK, helping any person to interact with the Frak wallet, and require the unlock of a premium article within the Frak ecosystem.",
|
|
16
16
|
"repository": {
|
|
17
17
|
"url": "https://github.com/frak-id/wallet",
|