@frak-labs/core-sdk 0.0.7 → 0.0.9
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/cdn/bundle.js +17 -31
- package/cdn/bundle.js.LICENSE.txt +10 -0
- package/dist/actions.cjs +1 -0
- package/dist/actions.d.cts +1300 -0
- package/dist/actions.d.ts +1300 -0
- package/dist/actions.js +1 -0
- package/dist/index.cjs +11 -487
- package/dist/index.d.cts +1207 -255
- package/dist/index.d.ts +1207 -255
- package/dist/index.js +11 -428
- package/dist/interactions.cjs +1 -0
- package/dist/{interactions/index.d.ts → interactions.d.cts} +182 -174
- package/dist/{interactions/index.d.cts → interactions.d.ts} +182 -174
- package/dist/interactions.js +1 -0
- package/package.json +15 -15
- package/dist/actions/index.cjs +0 -350
- package/dist/actions/index.d.cts +0 -501
- package/dist/actions/index.d.ts +0 -501
- package/dist/actions/index.js +0 -337
- package/dist/chunk-665P7NO4.cjs +0 -81
- package/dist/chunk-7YDJDVXY.cjs +0 -833
- package/dist/chunk-GTBCSNLF.js +0 -819
- package/dist/chunk-PHVGCFDX.cjs +0 -155
- package/dist/chunk-U2NTN5QZ.js +0 -75
- package/dist/chunk-VE6URIIJ.js +0 -149
- package/dist/context-D7aZDKLT.d.cts +0 -813
- package/dist/context-rDsQbSgB.d.ts +0 -813
- package/dist/interaction-CTQ5-kqe.d.cts +0 -43
- package/dist/interaction-CTQ5-kqe.d.ts +0 -43
- package/dist/interactions/index.cjs +0 -26
- package/dist/interactions/index.js +0 -1
package/cdn/bundle.js
CHANGED
|
@@ -1,33 +1,19 @@
|
|
|
1
|
-
"use strict";var FrakSDK=(()=>{var Xr=Object.create;var Be=Object.defineProperty;var Yr=Object.getOwnPropertyDescriptor;var Zr=Object.getOwnPropertyNames;var Qr=Object.getPrototypeOf,eo=Object.prototype.hasOwnProperty;var zt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var M=(e,t)=>()=>(e&&(t=e(e=0)),t);var $t=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),to=(e,t)=>{for(var r in t)Be(e,r,{get:t[r],enumerable:!0})},Ut=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Zr(t))!eo.call(e,a)&&a!==r&&Be(e,a,{get:()=>t[a],enumerable:!(o=Yr(t,a))||o.enumerable});return e};var He=(e,t,r)=>(r=e!=null?Xr(Qr(e)):{},Ut(t||!e||!e.__esModule?Be(r,"default",{value:e,enumerable:!0}):r,e)),ro=e=>Ut(Be({},"__esModule",{value:!0}),e);var ct=$t((he,st)=>{"use strict";(function(e,t){if(typeof he=="object"&&typeof st=="object")st.exports=t();else if(typeof define=="function"&&define.amd)define([],t);else{var r=t();for(var o in r)(typeof he=="object"?he:e)[o]=r[o]}})(he,()=>(()=>{"use strict";var e={48:function(r,o,a){var p=this&&this.__awaiter||function(i,g,n,s){return new(n||(n=Promise))(function(w,A){function m(c){try{L(s.next(c))}catch(l){A(l)}}function F(c){try{L(s.throw(c))}catch(l){A(l)}}function L(c){var l;c.done?w(c.value):(l=c.value,l instanceof n?l:new n(function(E){E(l)})).then(m,F)}L((s=s.apply(i,g||[])).next())})},u=this&&this.__generator||function(i,g){var n,s,w,A,m={label:0,sent:function(){if(1&w[0])throw w[1];return w[1]},trys:[],ops:[]};return A={next:F(0),throw:F(1),return:F(2)},typeof Symbol=="function"&&(A[Symbol.iterator]=function(){return this}),A;function F(L){return function(c){return function(l){if(n)throw new TypeError("Generator is already executing.");for(;A&&(A=0,l[0]&&(m=0)),m;)try{if(n=1,s&&(w=2&l[0]?s.return:l[0]?s.throw||((w=s.return)&&w.call(s),0):s.next)&&!(w=w.call(s,l[1])).done)return w;switch(s=0,w&&(l=[2&l[0],w.value]),l[0]){case 0:case 1:w=l;break;case 4:return m.label++,{value:l[1],done:!1};case 5:m.label++,s=l[1],l=[0];continue;case 7:l=m.ops.pop(),m.trys.pop();continue;default:if(!((w=(w=m.trys).length>0&&w[w.length-1])||l[0]!==6&&l[0]!==2)){m=0;continue}if(l[0]===3&&(!w||l[1]>w[0]&&l[1]<w[3])){m.label=l[1];break}if(l[0]===6&&m.label<w[1]){m.label=w[1],w=l;break}if(w&&m.label<w[2]){m.label=w[2],m.ops.push(l);break}w[2]&&m.ops.pop(),m.trys.pop();continue}l=g.call(i,m)}catch(E){l=[6,E],s=0}finally{n=w=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([L,c])}}};Object.defineProperty(o,"__esModule",{value:!0}),o.decompressFromUTF16=o.compressToUTF16=o.decompressFromBase64=o.compressToBase64=void 0;var S=a(304),f=a(134),T=new S.CompressorImpl,y=new f.DecompressorImpl,d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",h={};o.compressToBase64=function(i){return p(this,void 0,void 0,function(){var g;return u(this,function(n){switch(n.label){case 0:return i===null?[2,""]:[4,T.compress(i,6,function(s){return d.charAt(s)})];case 1:switch((g=n.sent()).length%4){default:case 0:return[2,g];case 1:return[2,g+"==="];case 2:return[2,g+"=="];case 3:return[2,g+"="]}return[2]}})})},o.decompressFromBase64=function(i){return p(this,void 0,void 0,function(){return u(this,function(g){switch(g.label){case 0:return i===null?[2,""]:i===""?[2,null]:[4,y.decompress(i.length,32,function(n){return function(s,w){if(!h[s]){h[s]={};for(var A=0;A<s.length;A++)h[s][s.charAt(A)]=A}return h[s][w]}(d,i.charAt(n))})];case 1:return[2,g.sent()]}})})},o.compressToUTF16=function(i){return p(this,void 0,void 0,function(){return u(this,function(g){switch(g.label){case 0:return i===null?[2,""]:[4,T.compress(i,15,function(n){return String.fromCharCode(n+32)})];case 1:return[2,g.sent()+" "]}})})},o.decompressFromUTF16=function(i){return p(this,void 0,void 0,function(){return u(this,function(g){switch(g.label){case 0:return i===null?[2,""]:i===""?[2,null]:[4,y.decompress(i.length,16384,function(n){return i.charCodeAt(n)-32})];case 1:return[2,g.sent()]}})})}},304:function(r,o,a){var p=this&&this.__awaiter||function(y,d,h,i){return new(h||(h=Promise))(function(g,n){function s(m){try{A(i.next(m))}catch(F){n(F)}}function w(m){try{A(i.throw(m))}catch(F){n(F)}}function A(m){var F;m.done?g(m.value):(F=m.value,F instanceof h?F:new h(function(L){L(F)})).then(s,w)}A((i=i.apply(y,d||[])).next())})},u=this&&this.__generator||function(y,d){var h,i,g,n,s={label:0,sent:function(){if(1&g[0])throw g[1];return g[1]},trys:[],ops:[]};return n={next:w(0),throw:w(1),return:w(2)},typeof Symbol=="function"&&(n[Symbol.iterator]=function(){return this}),n;function w(A){return function(m){return function(F){if(h)throw new TypeError("Generator is already executing.");for(;n&&(n=0,F[0]&&(s=0)),s;)try{if(h=1,i&&(g=2&F[0]?i.return:F[0]?i.throw||((g=i.return)&&g.call(i),0):i.next)&&!(g=g.call(i,F[1])).done)return g;switch(i=0,g&&(F=[2&F[0],g.value]),F[0]){case 0:case 1:g=F;break;case 4:return s.label++,{value:F[1],done:!1};case 5:s.label++,i=F[1],F=[0];continue;case 7:F=s.ops.pop(),s.trys.pop();continue;default:if(!((g=(g=s.trys).length>0&&g[g.length-1])||F[0]!==6&&F[0]!==2)){s=0;continue}if(F[0]===3&&(!g||F[1]>g[0]&&F[1]<g[3])){s.label=F[1];break}if(F[0]===6&&s.label<g[1]){s.label=g[1],g=F;break}if(g&&s.label<g[2]){s.label=g[2],s.ops.push(F);break}g[2]&&s.ops.pop(),s.trys.pop();continue}F=d.call(y,s)}catch(L){F=[6,L],i=0}finally{h=g=0}if(5&F[0])throw F[1];return{value:F[0]?F[1]:void 0,done:!0}}([A,m])}}};Object.defineProperty(o,"__esModule",{value:!0}),o.CompressorImpl=void 0;var S=a(658),f=[0,8,4,12,2,10,6,14,1,9,5,13,3,11,7,15],T=function(){function y(){}return y.writeValueToData=function(d,h,i,g,n){if(i%4!=0||d.dataPosition+i>g-1)for(var s=0;s<i;s++)d.dataVal=d.dataVal<<1|1&h,d.dataPosition==g-1?(d.dataPosition=0,d.data.push(n(d.dataVal)),d.dataVal=0):d.dataPosition++,h>>=1;else d.dataVal<<=i,d.dataVal|=function(w,A){for(var m=0,F=0;F<A;++F)m<<=4,m|=f[15&w],w>>=4;return m}(h,i/4),d.dataPosition+=i},y.writeWToDataVal=function(d,h,i){d.dictionaryToCreate.has(d.w)?(d.w.charCodeAt(0)<256?(y.writeValueToData(d,0,d.numBits,h,i),y.writeValueToData(d,d.w.charCodeAt(0),8,h,i)):(y.writeValueToData(d,1,d.numBits,h,i),y.writeValueToData(d,d.w.charCodeAt(0),16,h,i)),d.enlargeIn--,d.enlargeIn==0&&(d.enlargeIn=Math.pow(2,d.numBits),d.numBits++),d.dictionaryToCreate.delete(d.w)):y.writeValueToData(d,d.dictionary.get(d.w),d.numBits,h,i),d.enlargeIn--,d.enlargeIn==0&&(d.enlargeIn=Math.pow(2,d.numBits),d.numBits++)},y.loopIteration=function(d,h,i,g,n){var s=d.charAt(h);n.dictionary.has(s)||(n.dictionary.set(s,n.dictSize++),n.dictionaryToCreate.set(s,!0));var w=n.w+s;n.dictionary.has(w)?n.w=w:(this.writeWToDataVal(n,i,g),n.dictionary.set(w,n.dictSize++),n.w=String(s))},y.prototype.compress=function(d,h,i){var g=this;return new Promise(function(n){return p(g,void 0,void 0,function(){var s,w;return u(this,function(A){switch(A.label){case 0:if(d==null)return n(""),[2];s={data:[],dataPosition:0,dataVal:0,dictionary:new Map,dictionaryToCreate:new Map,dictSize:3,enlargeIn:2,numBits:2,w:""},w=0,A.label=1;case 1:return w<d.length?(y.loopIteration(d,w,h,i,s),w%1e4!=0?[3,3]:[4,(0,S.wait)()]):[3,4];case 2:A.sent(),A.label=3;case 3:return w+=1,[3,1];case 4:return s.w!==""&&y.writeWToDataVal(s,h,i),y.writeValueToData(s,2,s.numBits,h,i),s.dataVal<<=h-s.dataPosition,s.data.push(i(s.dataVal)),n(s.data.join("")),[2]}})})})},y}();o.CompressorImpl=T},134:function(r,o,a){var p=this&&this.__awaiter||function(T,y,d,h){return new(d||(d=Promise))(function(i,g){function n(A){try{w(h.next(A))}catch(m){g(m)}}function s(A){try{w(h.throw(A))}catch(m){g(m)}}function w(A){var m;A.done?i(A.value):(m=A.value,m instanceof d?m:new d(function(F){F(m)})).then(n,s)}w((h=h.apply(T,y||[])).next())})},u=this&&this.__generator||function(T,y){var d,h,i,g,n={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return g={next:s(0),throw:s(1),return:s(2)},typeof Symbol=="function"&&(g[Symbol.iterator]=function(){return this}),g;function s(w){return function(A){return function(m){if(d)throw new TypeError("Generator is already executing.");for(;g&&(g=0,m[0]&&(n=0)),n;)try{if(d=1,h&&(i=2&m[0]?h.return:m[0]?h.throw||((i=h.return)&&i.call(h),0):h.next)&&!(i=i.call(h,m[1])).done)return i;switch(h=0,i&&(m=[2&m[0],i.value]),m[0]){case 0:case 1:i=m;break;case 4:return n.label++,{value:m[1],done:!1};case 5:n.label++,h=m[1],m=[0];continue;case 7:m=n.ops.pop(),n.trys.pop();continue;default:if(!((i=(i=n.trys).length>0&&i[i.length-1])||m[0]!==6&&m[0]!==2)){n=0;continue}if(m[0]===3&&(!i||m[1]>i[0]&&m[1]<i[3])){n.label=m[1];break}if(m[0]===6&&n.label<i[1]){n.label=i[1],i=m;break}if(i&&n.label<i[2]){n.label=i[2],n.ops.push(m);break}i[2]&&n.ops.pop(),n.trys.pop();continue}m=y.call(T,n)}catch(F){m=[6,F],h=0}finally{d=i=0}if(5&m[0])throw m[1];return{value:m[0]?m[1]:void 0,done:!0}}([w,A])}}};Object.defineProperty(o,"__esModule",{value:!0}),o.DecompressorImpl=void 0;var S=a(658),f=function(){function T(){}return T.prototype.decompress=function(y,d,h){var i=this;return new Promise(function(g){return p(i,void 0,void 0,function(){var n,s,w;return u(this,function(A){switch(A.label){case 0:for(n={bits:0,c:null,dataIndex:1,dataPosition:d,dataVal:h(0),dictionary:new Map,dictSize:4,enlargeIn:4,entry:"",maxPower:Math.pow(2,2),numBits:3,power:1,resb:null,result:[],w:null},s=0;s<3;s+=1)n.dictionary.set(s,s);for(;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition==0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;switch(n.bits){case 0:for(n.bits=0,n.maxPower=Math.pow(2,8),n.power=1;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition==0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;n.c=String.fromCharCode(n.bits);break;case 1:for(n.bits=0,n.maxPower=Math.pow(2,16),n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition===0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;n.c=String.fromCharCode(n.bits);break;case 2:return g(""),[2]}n.dictionary[3]=n.c,n.w=n.c,n.result.push(n.c),w=1,A.label=1;case 1:return w%2e4!=0?[3,3]:[4,(0,S.wait)()];case 2:A.sent(),A.label=3;case 3:if(n.dataIndex>y)return g(""),[2];for(n.bits=0,n.maxPower=Math.pow(2,n.numBits),n.power=1;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition==0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;switch(n.c=n.bits){case 0:for(n.bits=0,n.maxPower=Math.pow(2,8),n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition==0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;n.dictionary[n.dictSize++]=String.fromCharCode(n.bits),n.c=n.dictSize-1,n.enlargeIn--;break;case 1:for(n.bits=0,n.maxPower=Math.pow(2,16),n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,n.dataPosition==0&&(n.dataPosition=d,n.dataVal=h(n.dataIndex++)),n.bits|=(n.resb>0?1:0)*n.power,n.power<<=1;n.dictionary[n.dictSize++]=String.fromCharCode(n.bits),n.c=n.dictSize-1,n.enlargeIn--;break;case 2:return g(n.result.join("")),[2]}if(n.enlargeIn==0&&(n.enlargeIn=Math.pow(2,n.numBits),n.numBits++),n.dictionary[n.c])n.entry=n.dictionary[n.c];else{if(n.c!==n.dictSize)return g(null),[2];n.entry=n.w+n.w.charAt(0)}return n.result.push(n.entry),n.dictionary[n.dictSize++]=n.w+n.entry.charAt(0),n.enlargeIn--,n.w=n.entry,n.enlargeIn==0&&(n.enlargeIn=Math.pow(2,n.numBits),n.numBits++),w++,[3,1];case 4:return[2]}})})})},T}();o.DecompressorImpl=f},658:function(r,o){var a=this&&this.__awaiter||function(u,S,f,T){return new(f||(f=Promise))(function(y,d){function h(n){try{g(T.next(n))}catch(s){d(s)}}function i(n){try{g(T.throw(n))}catch(s){d(s)}}function g(n){var s;n.done?y(n.value):(s=n.value,s instanceof f?s:new f(function(w){w(s)})).then(h,i)}g((T=T.apply(u,S||[])).next())})},p=this&&this.__generator||function(u,S){var f,T,y,d,h={label:0,sent:function(){if(1&y[0])throw y[1];return y[1]},trys:[],ops:[]};return d={next:i(0),throw:i(1),return:i(2)},typeof Symbol=="function"&&(d[Symbol.iterator]=function(){return this}),d;function i(g){return function(n){return function(s){if(f)throw new TypeError("Generator is already executing.");for(;d&&(d=0,s[0]&&(h=0)),h;)try{if(f=1,T&&(y=2&s[0]?T.return:s[0]?T.throw||((y=T.return)&&y.call(T),0):T.next)&&!(y=y.call(T,s[1])).done)return y;switch(T=0,y&&(s=[2&s[0],y.value]),s[0]){case 0:case 1:y=s;break;case 4:return h.label++,{value:s[1],done:!1};case 5:h.label++,T=s[1],s=[0];continue;case 7:s=h.ops.pop(),h.trys.pop();continue;default:if(!((y=(y=h.trys).length>0&&y[y.length-1])||s[0]!==6&&s[0]!==2)){h=0;continue}if(s[0]===3&&(!y||s[1]>y[0]&&s[1]<y[3])){h.label=s[1];break}if(s[0]===6&&h.label<y[1]){h.label=y[1],y=s;break}if(y&&h.label<y[2]){h.label=y[2],h.ops.push(s);break}y[2]&&h.ops.pop(),h.trys.pop();continue}s=S.call(u,h)}catch(w){s=[6,w],T=0}finally{f=y=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([g,n])}}};Object.defineProperty(o,"__esModule",{value:!0}),o.wait=void 0,o.wait=function(){return a(this,void 0,void 0,function(){return p(this,function(u){return[2,new Promise(function(S){setTimeout(S,0)})]})})}}},t={};return function r(o){var a=t[o];if(a!==void 0)return a.exports;var p=t[o]={exports:{}};return e[o].call(p.exports,p,p.exports,r),p.exports}(48)})())});var pt=$t((Wo,Le)=>{"use strict";(function(){"use strict";var e="input is invalid type",t=typeof window=="object",r=t?window:{};r.JS_SHA256_NO_WINDOW&&(t=!1);var o=!t&&typeof self=="object",a=!r.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;a?r=global:o&&(r=self);var p=!r.JS_SHA256_NO_COMMON_JS&&typeof Le=="object"&&Le.exports,u=typeof define=="function"&&define.amd,S=!r.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",f="0123456789abcdef".split(""),T=[-2147483648,8388608,32768,128],y=[24,16,8,0],d=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],h=["hex","array","digest","arrayBuffer"],i=[];(r.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(c){return Object.prototype.toString.call(c)==="[object Array]"}),S&&(r.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(c){return typeof c=="object"&&c.buffer&&c.buffer.constructor===ArrayBuffer});var g=function(c,l){return function(E){return new m(l,!0).update(E)[c]()}},n=function(c){var l=g("hex",c);a&&(l=s(l,c)),l.create=function(){return new m(c)},l.update=function(v){return l.create().update(v)};for(var E=0;E<h.length;++E){var I=h[E];l[I]=g(I,c)}return l},s=function(c,l){var E=zt("crypto"),I=zt("buffer").Buffer,v=l?"sha224":"sha256",b;I.from&&!r.JS_SHA256_NO_BUFFER_FROM?b=I.from:b=function(x){return new I(x)};var C=function(x){if(typeof x=="string")return E.createHash(v).update(x,"utf8").digest("hex");if(x==null)throw new Error(e);return x.constructor===ArrayBuffer&&(x=new Uint8Array(x)),Array.isArray(x)||ArrayBuffer.isView(x)||x.constructor===I?E.createHash(v).update(b(x)).digest("hex"):c(x)};return C},w=function(c,l){return function(E,I){return new F(E,l,!0).update(I)[c]()}},A=function(c){var l=w("hex",c);l.create=function(v){return new F(v,c)},l.update=function(v,b){return l.create(v).update(b)};for(var E=0;E<h.length;++E){var I=h[E];l[I]=w(I,c)}return l};function m(c,l){l?(i[0]=i[16]=i[1]=i[2]=i[3]=i[4]=i[5]=i[6]=i[7]=i[8]=i[9]=i[10]=i[11]=i[12]=i[13]=i[14]=i[15]=0,this.blocks=i):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],c?(this.h0=3238371032,this.h1=914150663,this.h2=812702999,this.h3=4144912697,this.h4=4290775857,this.h5=1750603025,this.h6=1694076839,this.h7=3204075428):(this.h0=1779033703,this.h1=3144134277,this.h2=1013904242,this.h3=2773480762,this.h4=1359893119,this.h5=2600822924,this.h6=528734635,this.h7=1541459225),this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0,this.is224=c}m.prototype.update=function(c){if(!this.finalized){var l,E=typeof c;if(E!=="string"){if(E==="object"){if(c===null)throw new Error(e);if(S&&c.constructor===ArrayBuffer)c=new Uint8Array(c);else if(!Array.isArray(c)&&(!S||!ArrayBuffer.isView(c)))throw new Error(e)}else throw new Error(e);l=!0}for(var I,v=0,b,C=c.length,x=this.blocks;v<C;){if(this.hashed&&(this.hashed=!1,x[0]=this.block,this.block=x[16]=x[1]=x[2]=x[3]=x[4]=x[5]=x[6]=x[7]=x[8]=x[9]=x[10]=x[11]=x[12]=x[13]=x[14]=x[15]=0),l)for(b=this.start;v<C&&b<64;++v)x[b>>>2]|=c[v]<<y[b++&3];else for(b=this.start;v<C&&b<64;++v)I=c.charCodeAt(v),I<128?x[b>>>2]|=I<<y[b++&3]:I<2048?(x[b>>>2]|=(192|I>>>6)<<y[b++&3],x[b>>>2]|=(128|I&63)<<y[b++&3]):I<55296||I>=57344?(x[b>>>2]|=(224|I>>>12)<<y[b++&3],x[b>>>2]|=(128|I>>>6&63)<<y[b++&3],x[b>>>2]|=(128|I&63)<<y[b++&3]):(I=65536+((I&1023)<<10|c.charCodeAt(++v)&1023),x[b>>>2]|=(240|I>>>18)<<y[b++&3],x[b>>>2]|=(128|I>>>12&63)<<y[b++&3],x[b>>>2]|=(128|I>>>6&63)<<y[b++&3],x[b>>>2]|=(128|I&63)<<y[b++&3]);this.lastByteIndex=b,this.bytes+=b-this.start,b>=64?(this.block=x[16],this.start=b-64,this.hash(),this.hashed=!0):this.start=b}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},m.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var c=this.blocks,l=this.lastByteIndex;c[16]=this.block,c[l>>>2]|=T[l&3],this.block=c[16],l>=56&&(this.hashed||this.hash(),c[0]=this.block,c[16]=c[1]=c[2]=c[3]=c[4]=c[5]=c[6]=c[7]=c[8]=c[9]=c[10]=c[11]=c[12]=c[13]=c[14]=c[15]=0),c[14]=this.hBytes<<3|this.bytes>>>29,c[15]=this.bytes<<3,this.hash()}},m.prototype.hash=function(){var c=this.h0,l=this.h1,E=this.h2,I=this.h3,v=this.h4,b=this.h5,C=this.h6,x=this.h7,P=this.blocks,B,N,V,X,k,Y,Z,de,at,it,Re;for(B=16;B<64;++B)k=P[B-15],N=(k>>>7|k<<25)^(k>>>18|k<<14)^k>>>3,k=P[B-2],V=(k>>>17|k<<15)^(k>>>19|k<<13)^k>>>10,P[B]=P[B-16]+N+P[B-7]+V<<0;for(Re=l&E,B=0;B<64;B+=4)this.first?(this.is224?(de=300032,k=P[0]-1413257819,x=k-150054599<<0,I=k+24177077<<0):(de=704751109,k=P[0]-210244248,x=k-1521486534<<0,I=k+143694565<<0),this.first=!1):(N=(c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10),V=(v>>>6|v<<26)^(v>>>11|v<<21)^(v>>>25|v<<7),de=c&l,X=de^c&E^Re,Z=v&b^~v&C,k=x+V+Z+d[B]+P[B],Y=N+X,x=I+k<<0,I=k+Y<<0),N=(I>>>2|I<<30)^(I>>>13|I<<19)^(I>>>22|I<<10),V=(x>>>6|x<<26)^(x>>>11|x<<21)^(x>>>25|x<<7),at=I&c,X=at^I&l^de,Z=x&v^~x&b,k=C+V+Z+d[B+1]+P[B+1],Y=N+X,C=E+k<<0,E=k+Y<<0,N=(E>>>2|E<<30)^(E>>>13|E<<19)^(E>>>22|E<<10),V=(C>>>6|C<<26)^(C>>>11|C<<21)^(C>>>25|C<<7),it=E&I,X=it^E&c^at,Z=C&x^~C&v,k=b+V+Z+d[B+2]+P[B+2],Y=N+X,b=l+k<<0,l=k+Y<<0,N=(l>>>2|l<<30)^(l>>>13|l<<19)^(l>>>22|l<<10),V=(b>>>6|b<<26)^(b>>>11|b<<21)^(b>>>25|b<<7),Re=l&E,X=Re^l&I^it,Z=b&C^~b&x,k=v+V+Z+d[B+3]+P[B+3],Y=N+X,v=c+k<<0,c=k+Y<<0,this.chromeBugWorkAround=!0;this.h0=this.h0+c<<0,this.h1=this.h1+l<<0,this.h2=this.h2+E<<0,this.h3=this.h3+I<<0,this.h4=this.h4+v<<0,this.h5=this.h5+b<<0,this.h6=this.h6+C<<0,this.h7=this.h7+x<<0},m.prototype.hex=function(){this.finalize();var c=this.h0,l=this.h1,E=this.h2,I=this.h3,v=this.h4,b=this.h5,C=this.h6,x=this.h7,P=f[c>>>28&15]+f[c>>>24&15]+f[c>>>20&15]+f[c>>>16&15]+f[c>>>12&15]+f[c>>>8&15]+f[c>>>4&15]+f[c&15]+f[l>>>28&15]+f[l>>>24&15]+f[l>>>20&15]+f[l>>>16&15]+f[l>>>12&15]+f[l>>>8&15]+f[l>>>4&15]+f[l&15]+f[E>>>28&15]+f[E>>>24&15]+f[E>>>20&15]+f[E>>>16&15]+f[E>>>12&15]+f[E>>>8&15]+f[E>>>4&15]+f[E&15]+f[I>>>28&15]+f[I>>>24&15]+f[I>>>20&15]+f[I>>>16&15]+f[I>>>12&15]+f[I>>>8&15]+f[I>>>4&15]+f[I&15]+f[v>>>28&15]+f[v>>>24&15]+f[v>>>20&15]+f[v>>>16&15]+f[v>>>12&15]+f[v>>>8&15]+f[v>>>4&15]+f[v&15]+f[b>>>28&15]+f[b>>>24&15]+f[b>>>20&15]+f[b>>>16&15]+f[b>>>12&15]+f[b>>>8&15]+f[b>>>4&15]+f[b&15]+f[C>>>28&15]+f[C>>>24&15]+f[C>>>20&15]+f[C>>>16&15]+f[C>>>12&15]+f[C>>>8&15]+f[C>>>4&15]+f[C&15];return this.is224||(P+=f[x>>>28&15]+f[x>>>24&15]+f[x>>>20&15]+f[x>>>16&15]+f[x>>>12&15]+f[x>>>8&15]+f[x>>>4&15]+f[x&15]),P},m.prototype.toString=m.prototype.hex,m.prototype.digest=function(){this.finalize();var c=this.h0,l=this.h1,E=this.h2,I=this.h3,v=this.h4,b=this.h5,C=this.h6,x=this.h7,P=[c>>>24&255,c>>>16&255,c>>>8&255,c&255,l>>>24&255,l>>>16&255,l>>>8&255,l&255,E>>>24&255,E>>>16&255,E>>>8&255,E&255,I>>>24&255,I>>>16&255,I>>>8&255,I&255,v>>>24&255,v>>>16&255,v>>>8&255,v&255,b>>>24&255,b>>>16&255,b>>>8&255,b&255,C>>>24&255,C>>>16&255,C>>>8&255,C&255];return this.is224||P.push(x>>>24&255,x>>>16&255,x>>>8&255,x&255),P},m.prototype.array=m.prototype.digest,m.prototype.arrayBuffer=function(){this.finalize();var c=new ArrayBuffer(this.is224?28:32),l=new DataView(c);return l.setUint32(0,this.h0),l.setUint32(4,this.h1),l.setUint32(8,this.h2),l.setUint32(12,this.h3),l.setUint32(16,this.h4),l.setUint32(20,this.h5),l.setUint32(24,this.h6),this.is224||l.setUint32(28,this.h7),c};function F(c,l,E){var I,v=typeof c;if(v==="string"){var b=[],C=c.length,x=0,P;for(I=0;I<C;++I)P=c.charCodeAt(I),P<128?b[x++]=P:P<2048?(b[x++]=192|P>>>6,b[x++]=128|P&63):P<55296||P>=57344?(b[x++]=224|P>>>12,b[x++]=128|P>>>6&63,b[x++]=128|P&63):(P=65536+((P&1023)<<10|c.charCodeAt(++I)&1023),b[x++]=240|P>>>18,b[x++]=128|P>>>12&63,b[x++]=128|P>>>6&63,b[x++]=128|P&63);c=b}else if(v==="object"){if(c===null)throw new Error(e);if(S&&c.constructor===ArrayBuffer)c=new Uint8Array(c);else if(!Array.isArray(c)&&(!S||!ArrayBuffer.isView(c)))throw new Error(e)}else throw new Error(e);c.length>64&&(c=new m(l,!0).update(c).array());var B=[],N=[];for(I=0;I<64;++I){var V=c[I]||0;B[I]=92^V,N[I]=54^V}m.call(this,l,E),this.update(N),this.oKeyPad=B,this.inner=!0,this.sharedMemory=E}F.prototype=new m,F.prototype.finalize=function(){if(m.prototype.finalize.call(this),this.inner){this.inner=!1;var c=this.array();m.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(c),m.prototype.finalize.call(this)}};var L=n();L.sha256=L,L.sha224=n(!0),L.sha256.hmac=A(),L.sha224.hmac=A(!0),p?Le.exports=L:(r.sha256=L.sha256,r.sha224=L.sha224,u&&define(function(){return L}))})()});function Q(e,{strict:t=!0}={}){return!e||typeof e!="string"?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}var we=M(()=>{"use strict"});function O(e){return Q(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Ie=M(()=>{"use strict";we()});var dt,Wt=M(()=>{"use strict";dt="2.22.23"});function qt(e,t){return t?.(e)?e:e&&typeof e=="object"&&"cause"in e&&e.cause!==void 0?qt(e.cause,t):t?null:e}var mt,D,se=M(()=>{"use strict";Wt();mt={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:r})=>t?`${e??"https://viem.sh"}${t}${r?`#${r}`:""}`:void 0,version:`viem@${dt}`},D=class e extends Error{constructor(t,r={}){let o=r.cause instanceof e?r.cause.details:r.cause?.message?r.cause.message:r.details,a=r.cause instanceof e&&r.cause.docsPath||r.docsPath,p=mt.getDocsUrl?.({...r,docsPath:a}),u=[t||"An error occurred.","",...r.metaMessages?[...r.metaMessages,""]:[],...p?[`Docs: ${p}`]:[],...o?[`Details: ${o}`]:[],...mt.version?[`Version: ${mt.version}`]:[]].join(`
|
|
2
|
-
`);super(u,r.cause?{cause:r.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=o,this.docsPath=a,this.metaMessages=r.metaMessages,this.name=r.name??this.name,this.shortMessage=t,this.version=dt}walk(t){return qt(this,t)}}});var ze,$e,Ue,Oe,_e,Kt=M(()=>{"use strict";Ie();se();ze=class extends D{constructor({expectedLength:t,givenLength:r,type:o}){super([`ABI encoding array length mismatch for type ${o}.`,`Expected length: ${t}`,`Given length: ${r}`].join(`
|
|
3
|
-
`),{name:"AbiEncodingArrayLengthMismatchError"})}},$e=class extends D{constructor({expectedSize:t,value:r}){super(`Size of bytes "${r}" (bytes${O(r)}) does not match expected size (bytes${t}).`,{name:"AbiEncodingBytesSizeMismatchError"})}},Ue=class extends D{constructor({expectedLength:t,givenLength:r}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${r}`].join(`
|
|
4
|
-
`),{name:"AbiEncodingLengthMismatchError"})}},Oe=class extends D{constructor(t,{docsPath:r}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(`
|
|
5
|
-
`),{docsPath:r,name:"InvalidAbiEncodingType"})}},_e=class extends D{constructor(t){super([`Value "${t}" is not a valid array.`].join(`
|
|
6
|
-
`),{name:"InvalidArrayError"})}}});var Se,Te,ht=M(()=>{"use strict";se();Se=class extends D{constructor({offset:t,position:r,size:o}){super(`Slice ${r==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${o}).`,{name:"SliceOffsetOutOfBoundsError"})}},Te=class extends D{constructor({size:t,targetSize:r,type:o}){super(`${o.charAt(0).toUpperCase()}${o.slice(1).toLowerCase()} size (${t}) exceeds padding size (${r}).`,{name:"SizeExceedsPaddingSizeError"})}}});function z(e,{dir:t,size:r=32}={}){return typeof e=="string"?q(e,{dir:t,size:r}):Jt(e,{dir:t,size:r})}function q(e,{dir:t,size:r=32}={}){if(r===null)return e;let o=e.replace("0x","");if(o.length>r*2)throw new Te({size:Math.ceil(o.length/2),targetSize:r,type:"hex"});return`0x${o[t==="right"?"padEnd":"padStart"](r*2,"0")}`}function Jt(e,{dir:t,size:r=32}={}){if(r===null)return e;if(e.length>r)throw new Te({size:e.length,targetSize:r,type:"bytes"});let o=new Uint8Array(r);for(let a=0;a<r;a++){let p=t==="right";o[p?a:r-a-1]=e[p?a:e.length-a-1]}return o}var Fe=M(()=>{"use strict";ht()});var le,Ne,Ve=M(()=>{"use strict";se();le=class extends D{constructor({max:t,min:r,signed:o,size:a,value:p}){super(`Number "${p}" is not in safe ${a?`${a*8}-bit ${o?"signed":"unsigned"} `:""}integer range ${t?`(${r} to ${t})`:`(above ${r})`}`,{name:"IntegerOutOfRangeError"})}},Ne=class extends D{constructor({givenSize:t,maxSize:r}){super(`Size cannot exceed ${r} bytes. Given size: ${t} bytes.`,{name:"SizeOverflowError"})}}});function ce(e,{size:t}){if(O(e)>t)throw new Ne({givenSize:O(e),maxSize:t})}var xt=M(()=>{"use strict";Ve();Ie()});function $(e,t={}){return typeof e=="number"||typeof e=="bigint"?K(e,t):typeof e=="string"?We(e,t):typeof e=="boolean"?je(e,t):Ee(e,t)}function je(e,t={}){let r=`0x${Number(e)}`;return typeof t.size=="number"?(ce(r,{size:t.size}),z(r,{size:t.size})):r}function Ee(e,t={}){let r="";for(let a=0;a<e.length;a++)r+=ao[e[a]];let o=`0x${r}`;return typeof t.size=="number"?(ce(o,{size:t.size}),z(o,{dir:"right",size:t.size})):o}function K(e,t={}){let{signed:r,size:o}=t,a=BigInt(e),p;o?r?p=(1n<<BigInt(o)*8n-1n)-1n:p=2n**(BigInt(o)*8n)-1n:typeof e=="number"&&(p=BigInt(Number.MAX_SAFE_INTEGER));let u=typeof p=="bigint"&&r?-p-1n:0;if(p&&a>p||a<u){let f=typeof e=="bigint"?"n":"";throw new le({max:p?`${p}${f}`:void 0,min:`${u}${f}`,signed:r,size:o,value:`${e}${f}`})}let S=`0x${(r&&a<0?(1n<<BigInt(o*8))+BigInt(a):a).toString(16)}`;return o?z(S,{size:o}):S}function We(e,t={}){let r=io.encode(e);return Ee(r,t)}var ao,io,ve=M(()=>{"use strict";Ve();Fe();xt();ao=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));io=new TextEncoder});function yt(e,t={}){return typeof e=="number"||typeof e=="bigint"?Yt(e,t):typeof e=="boolean"?Xt(e,t):Q(e)?Ae(e,t):qe(e,t)}function Xt(e,t={}){let r=new Uint8Array(1);return r[0]=Number(e),typeof t.size=="number"?(ce(r,{size:t.size}),z(r,{size:t.size})):r}function Gt(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 Ae(e,t={}){let r=e;t.size&&(ce(r,{size:t.size}),r=z(r,{dir:"right",size:t.size}));let o=r.slice(2);o.length%2&&(o=`0${o}`);let a=o.length/2,p=new Uint8Array(a);for(let u=0,S=0;u<a;u++){let f=Gt(o.charCodeAt(S++)),T=Gt(o.charCodeAt(S++));if(f===void 0||T===void 0)throw new D(`Invalid byte sequence ("${o[S-2]}${o[S-1]}" in "${o}").`);p[u]=f*16+T}return p}function Yt(e,t){let r=K(e,t);return Ae(r)}function qe(e,t={}){let r=so.encode(e);return typeof t.size=="number"?(ce(r,{size:t.size}),z(r,{dir:"right",size:t.size})):r}var so,G,Ke=M(()=>{"use strict";se();we();Fe();xt();ve();so=new TextEncoder;G={zero:48,nine:57,A:65,F:70,a:97,f:102}});function gt(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function co(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Ce(e,...t){if(!co(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 bt(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 Zt(e,t){Ce(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}var wt=M(()=>{"use strict"});function po(e,t=!1){return t?{h:Number(e&Je),l:Number(e>>Qt&Je)}:{h:Number(e>>Qt&Je)|0,l:Number(e&Je)|0}}function er(e,t=!1){let r=new Uint32Array(e.length),o=new Uint32Array(e.length);for(let a=0;a<e.length;a++){let{h:p,l:u}=po(e[a],t);[r[a],o[a]]=[p,u]}return[r,o]}var Je,Qt,tr,rr,or,nr,ar=M(()=>{"use strict";Je=BigInt(4294967295),Qt=BigInt(32);tr=(e,t,r)=>e<<r|t>>>32-r,rr=(e,t,r)=>t<<r|e>>>32-r,or=(e,t,r)=>t<<r-32|e>>>64-r,nr=(e,t,r)=>e<<r-32|t>>>64-r});function ir(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function uo(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function St(e){for(let t=0;t<e.length;t++)e[t]=uo(e[t])}function lo(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Xe(e){return typeof e=="string"&&(e=lo(e)),Ce(e),e}function sr(e){let t=o=>e().update(Xe(o)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function cr(e){let t=(o,a)=>e(a).update(Xe(o)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=o=>e(o),t}var It,Ge,pr=M(()=>{"use strict";wt();It=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;Ge=class{clone(){return this._cloneInto()}}});function wo(e,t=24){let r=new Uint32Array(10);for(let o=24-t;o<24;o++){for(let u=0;u<10;u++)r[u]=e[u]^e[u+10]^e[u+20]^e[u+30]^e[u+40];for(let u=0;u<10;u+=2){let S=(u+8)%10,f=(u+2)%10,T=r[f],y=r[f+1],d=ur(T,y,1)^r[S],h=lr(T,y,1)^r[S+1];for(let i=0;i<50;i+=10)e[u+i]^=d,e[u+i+1]^=h}let a=e[2],p=e[3];for(let u=0;u<24;u++){let S=dr[u],f=ur(a,p,S),T=lr(a,p,S),y=fr[u];a=e[y],p=e[y+1],e[y]=f,e[y+1]=T}for(let u=0;u<50;u+=10){for(let S=0;S<10;S++)r[S]=e[u+S];for(let S=0;S<10;S++)e[u+S]^=~r[(S+2)%10]&r[(S+4)%10]}e[0]^=go[o],e[1]^=bo[o]}r.fill(0)}var fr,dr,mr,fo,Pe,mo,ho,xo,yo,go,bo,ur,lr,Ye,ee,oa,na,aa,ia,sa,hr,ca,pa,xr,ua,la,yr=M(()=>{"use strict";wt();ar();pr();fr=[],dr=[],mr=[],fo=BigInt(0),Pe=BigInt(1),mo=BigInt(2),ho=BigInt(7),xo=BigInt(256),yo=BigInt(113);for(let e=0,t=Pe,r=1,o=0;e<24;e++){[r,o]=[o,(2*r+3*o)%5],fr.push(2*(5*o+r)),dr.push((e+1)*(e+2)/2%64);let a=fo;for(let p=0;p<7;p++)t=(t<<Pe^(t>>ho)*yo)%xo,t&mo&&(a^=Pe<<(Pe<<BigInt(p))-Pe);mr.push(a)}[go,bo]=er(mr,!0),ur=(e,t,r)=>r>32?or(e,t,r):tr(e,t,r),lr=(e,t,r)=>r>32?nr(e,t,r):rr(e,t,r);Ye=class e extends Ge{constructor(t,r,o,a=!1,p=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=o,this.enableXOF=a,this.rounds=p,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,gt(o),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=ir(this.state)}keccak(){It||St(this.state32),wo(this.state32,this.rounds),It||St(this.state32),this.posOut=0,this.pos=0}update(t){bt(this);let{blockLen:r,state:o}=this;t=Xe(t);let a=t.length;for(let p=0;p<a;){let u=Math.min(r-this.pos,a-p);for(let S=0;S<u;S++)o[this.pos++]^=t[p++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:r,pos:o,blockLen:a}=this;t[o]^=r,r&128&&o===a-1&&this.keccak(),t[a-1]^=128,this.keccak()}writeInto(t){bt(this,!1),Ce(t),this.finish();let r=this.state,{blockLen:o}=this;for(let a=0,p=t.length;a<p;){this.posOut>=o&&this.keccak();let u=Math.min(o-this.posOut,p-a);t.set(r.subarray(this.posOut,this.posOut+u),a),this.posOut+=u,a+=u}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return gt(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(Zt(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:o,outputLen:a,rounds:p,enableXOF:u}=this;return t||(t=new e(r,o,a,u,p)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=p,t.suffix=o,t.outputLen=a,t.enableXOF=u,t.destroyed=this.destroyed,t}},ee=(e,t,r)=>sr(()=>new Ye(t,e,r)),oa=ee(6,144,224/8),na=ee(6,136,256/8),aa=ee(6,104,384/8),ia=ee(6,72,512/8),sa=ee(1,144,224/8),hr=ee(1,136,256/8),ca=ee(1,104,384/8),pa=ee(1,72,512/8),xr=(e,t,r)=>cr((o={})=>new Ye(t,e,o.dkLen===void 0?r:o.dkLen,!0)),ua=xr(31,168,128/8),la=xr(31,136,256/8)});function ke(e,t){let r=t||"hex",o=hr(Q(e,{strict:!1})?yt(e):e);return r==="bytes"?o:$(o)}var Tt=M(()=>{"use strict";yr();we();Ke();ve()});var pe,Ft=M(()=>{"use strict";se();pe=class extends D{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 fe,Et=M(()=>{"use strict";fe=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 o=this.keys().next().value;o&&this.delete(o)}return this}}});function gr(e,t){if(vt.has(`${e}.${t}`))return vt.get(`${e}.${t}`);let r=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),o=ke(qe(r),"bytes"),a=(t?r.substring(`${t}0x`.length):r).split("");for(let u=0;u<40;u+=2)o[u>>1]>>4>=8&&a[u]&&(a[u]=a[u].toUpperCase()),(o[u>>1]&15)>=8&&a[u+1]&&(a[u+1]=a[u+1].toUpperCase());let p=`0x${a.join("")}`;return vt.set(`${e}.${t}`,p),p}var vt,br=M(()=>{"use strict";Ke();Tt();Et();vt=new fe(8192)});function Me(e,t){let{strict:r=!0}=t??{},o=`${e}.${r}`;if(At.has(o))return At.get(o);let a=Io.test(e)?e.toLowerCase()===e?!0:r?gr(e)===e:!0:!1;return At.set(o,a),a}var Io,At,Ct=M(()=>{"use strict";Et();br();Io=/^0x[a-fA-F0-9]{40}$/,At=new fe(8192)});function te(e){return typeof e[0]=="string"?j(e):wr(e)}function wr(e){let t=0;for(let a of e)t+=a.length;let r=new Uint8Array(t),o=0;for(let a of e)r.set(a,o),o+=a.length;return r}function j(e){return`0x${e.reduce((t,r)=>t+r.replace("0x",""),"")}`}var Pt=M(()=>{"use strict"});function Ir(e,t,r,{strict:o}={}){return Q(e,{strict:!1})?To(e,t,r,{strict:o}):So(e,t,r,{strict:o})}function Sr(e,t){if(typeof t=="number"&&t>0&&t>O(e)-1)throw new Se({offset:t,position:"start",size:O(e)})}function Tr(e,t,r){if(typeof t=="number"&&typeof r=="number"&&O(e)!==r-t)throw new Se({offset:r,position:"end",size:O(e)})}function So(e,t,r,{strict:o}={}){Sr(e,t);let a=e.slice(t,r);return o&&Tr(a,t,r),a}function To(e,t,r,{strict:o}={}){Sr(e,t);let a=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return o&&Tr(a,t,r),a}var Fr=M(()=>{"use strict";ht();we();Ie()});var Er,vr=M(()=>{"use strict";Er=/^(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 kt(e,t){if(e.length!==t.length)throw new Ue({expectedLength:e.length,givenLength:t.length});let r=Fo({params:e,values:t}),o=Rt(r);return o.length===0?"0x":o}function Fo({params:e,values:t}){let r=[];for(let o=0;o<e.length;o++)r.push(Mt({param:e[o],value:t[o]}));return r}function Mt({param:e,value:t}){let r=Ro(e.type);if(r){let[o,a]=r;return vo(t,{length:o,param:{...e,type:a}})}if(e.type==="tuple")return Mo(t,{param:e});if(e.type==="address")return Eo(t);if(e.type==="bool")return Co(t);if(e.type.startsWith("uint")||e.type.startsWith("int")){let o=e.type.startsWith("int"),[,,a="256"]=Er.exec(e.type)??[];return Po(t,{signed:o,size:Number(a)})}if(e.type.startsWith("bytes"))return Ao(t,{param:e});if(e.type==="string")return ko(t);throw new Oe(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function Rt(e){let t=0;for(let p=0;p<e.length;p++){let{dynamic:u,encoded:S}=e[p];u?t+=32:t+=O(S)}let r=[],o=[],a=0;for(let p=0;p<e.length;p++){let{dynamic:u,encoded:S}=e[p];u?(r.push(K(t+a,{size:32})),o.push(S),a+=O(S)):r.push(S)}return te([...r,...o])}function Eo(e){if(!Me(e))throw new pe({address:e});return{dynamic:!1,encoded:q(e.toLowerCase())}}function vo(e,{length:t,param:r}){let o=t===null;if(!Array.isArray(e))throw new _e(e);if(!o&&e.length!==t)throw new ze({expectedLength:t,givenLength:e.length,type:`${r.type}[${t}]`});let a=!1,p=[];for(let u=0;u<e.length;u++){let S=Mt({param:r,value:e[u]});S.dynamic&&(a=!0),p.push(S)}if(o||a){let u=Rt(p);if(o){let S=K(p.length,{size:32});return{dynamic:!0,encoded:p.length>0?te([S,u]):S}}if(a)return{dynamic:!0,encoded:u}}return{dynamic:!1,encoded:te(p.map(({encoded:u})=>u))}}function Ao(e,{param:t}){let[,r]=t.type.split("bytes"),o=O(e);if(!r){let a=e;return o%32!==0&&(a=q(a,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:te([q(K(o,{size:32})),a])}}if(o!==Number.parseInt(r))throw new $e({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:q(e,{dir:"right"})}}function Co(e){if(typeof e!="boolean")throw new D(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:q(je(e))}}function Po(e,{signed:t,size:r=256}){if(typeof r=="number"){let o=2n**(BigInt(r)-(t?1n:0n))-1n,a=t?-o-1n:0n;if(e>o||e<a)throw new le({max:o.toString(),min:a.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:K(e,{size:32,signed:t})}}function ko(e){let t=We(e),r=Math.ceil(O(t)/32),o=[];for(let a=0;a<r;a++)o.push(q(Ir(t,a*32,(a+1)*32),{dir:"right"}));return{dynamic:!0,encoded:te([q(K(O(t),{size:32})),...o])}}function Mo(e,{param:t}){let r=!1,o=[];for(let a=0;a<t.components.length;a++){let p=t.components[a],u=Array.isArray(e)?a:p.name,S=Mt({param:p,value:e[u]});o.push(S),S.dynamic&&(r=!0)}return{dynamic:r,encoded:r?Rt(o):te(o.map(({encoded:a})=>a))}}function Ro(e){let t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Ar=M(()=>{"use strict";Kt();Ft();se();Ve();Ct();Pt();Fe();Ie();Fr();ve();vr()});function Bt(e,t){if(!Me(e,{strict:!1}))throw new pe({address:e});if(!Me(t,{strict:!1}))throw new pe({address:t});return e.toLowerCase()===t.toLowerCase()}var Cr=M(()=>{"use strict";Ft();Ct()});var Uo={};to(Uo,{ClientNotFound:()=>me,DebugInfoGatherer:()=>ae,Deferred:()=>W,FrakContextManager:()=>re,FrakRpcError:()=>R,PressInteractionEncoder:()=>Wr,PurchaseInteractionEncoder:()=>qr,ReferralInteractionEncoder:()=>ot,RetailInteractionEncoder:()=>Jr,RpcErrorCodes:()=>H,WebShopInteractionEncoder:()=>Kr,baseIframeProps:()=>ie,compressJson:()=>xe,createIFrameFrakClient:()=>be,createIframe:()=>ge,decompressDataAndCheckHash:()=>ne,decompressJson:()=>ye,displayEmbededWallet:()=>$r,displayModal:()=>J,getProductInformation:()=>Or,hashAndCompressData:()=>oe,interactionTypes:()=>_,modalBuilder:()=>jr,openSso:()=>Ur,processReferral:()=>nt,productTypes:()=>U,productTypesMask:()=>Dr,referralInteraction:()=>Gr,sendInteraction:()=>tt,sendTransaction:()=>Vr,setupClient:()=>Dt,siweAuthenticate:()=>Nr,trackPurchaseStatus:()=>_r,watchWalletStatus:()=>et});var R=class extends Error{constructor(r,o,a){super(o);this.code=r;this.data=a}};var De=class extends R{constructor(t){super(H.internalError,t)}},me=class extends R{constructor(){super(H.clientNotConnected,"Client not found")}},H={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 Ot=He(ct(),1),ut=He(pt(),1);async function oe(e){let t=(0,ut.sha256)(JSON.stringify(e)),r={...e,validationHash:t},o=await xe(r),a=(0,ut.sha256)(o);return{compressed:o,compressedHash:a}}async function xe(e){return(0,Ot.compressToBase64)(JSON.stringify(e))}var _t=He(ct(),1),lt=He(pt(),1);async function ne(e){if(!(e?.compressed&&e?.compressedHash))throw new R(H.corruptedResponse,"Missing compressed data");let t=await ye(e.compressed);if(!t)throw new R(H.corruptedResponse,"Invalid compressed data");if(!t?.validationHash)throw new R(H.corruptedResponse,"Missing validation hash");if((0,lt.sha256)(e.compressed)!==e.compressedHash)throw new R(H.corruptedResponse,"Invalid compressed hash");let{validationHash:o,...a}=t;if((0,lt.sha256)(JSON.stringify(a))!==t.validationHash)throw new R(H.corruptedResponse,"Invalid data validation hash");return t}async function ye(e){let t=await(0,_t.decompressFromBase64)(e);try{return JSON.parse(t)}catch(r){return console.error("Invalid compressed data",{e:r,decompressed:t}),null}}var ue="nexus-wallet-backup";var ae=class e{config;iframe;isSetupDone=!1;lastResponse=null;lastRequest=null;constructor(t,r){this.config=t,this.iframe=r,this.lastRequest=null,this.lastResponse=null}setLastResponse(t){this.lastResponse={event:t.data,origin:t.origin,timestamp:Date.now()}}setLastRequest(t,r){this.lastRequest={event:t,target:r,timestamp:Date.now()}}updateSetupStatus(t){this.isSetupDone=t}base64Encode(t){try{return btoa(JSON.stringify(t))}catch(r){return console.warn("Failed to encode debug data",r),btoa("Failed to encode data")}}getIframeStatus(){return this.iframe?{loading:this.iframe.hasAttribute("loading"),url:this.iframe.src,readyState:this.iframe.contentDocument?.readyState?this.iframe.contentDocument.readyState==="complete"?1:0:-1,contentWindow:!!this.iframe.contentWindow,isConnected:this.iframe.isConnected}:null}getNavigatorInfo(){return navigator?{userAgent:navigator.userAgent,language:navigator.language,onLine:navigator.onLine,screenWidth:window.screen.width,screenHeight:window.screen.height,pixelRatio:window.devicePixelRatio}:null}gatherDebugInfo(t){let r=this.getIframeStatus(),o=this.getNavigatorInfo(),a="Unknown";return t instanceof R?a=`FrakRpcError: ${t.code} '${t.message}'`:t instanceof Error?a=t.message:typeof t=="string"&&(a=t),{timestamp:new Date().toISOString(),encodedUrl:btoa(window.location.href),encodedConfig:this.config?this.base64Encode(this.config):"no-config",navigatorInfo:o?this.base64Encode(o):"no-navigator",iframeStatus:r?this.base64Encode(r):"not-iframe",lastRequest:this.lastRequest?this.base64Encode(this.lastRequest):"No Frak request logged",lastResponse:this.lastResponse?this.base64Encode(this.lastResponse):"No Frak response logged",clientStatus:this.isSetupDone?"setup":"not-setup",error:a}}static empty(){return new e}formatDebugInfo(t){let r=this.gatherDebugInfo(t);return`
|
|
1
|
+
/*! For license information please see bundle.js.LICENSE.txt */
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.FrakSDK=t():e.FrakSDK=t()}(globalThis,()=>(()=>{var e={"../../node_modules/async-lz-string/libs/async-lz-string.js":function(e){var t;t=()=>{var e,t;return e={48:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,s)}c((n=n.apply(e,t||[])).next())})},i=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.decompressFromUTF16=t.compressToUTF16=t.decompressFromBase64=t.compressToBase64=void 0;var a=r(304),o=r(134),s=new a.CompressorImpl,c=new o.DecompressorImpl,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",u={};t.compressToBase64=function(e){return n(this,void 0,void 0,function(){var t;return i(this,function(r){switch(r.label){case 0:return null===e?[2,""]:[4,s.compress(e,6,function(e){return l.charAt(e)})];case 1:switch((t=r.sent()).length%4){default:case 0:return[2,t];case 1:return[2,t+"==="];case 2:return[2,t+"=="];case 3:return[2,t+"="]}return[2]}})})},t.decompressFromBase64=function(e){return n(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:return null===e?[2,""]:""===e?[2,null]:[4,c.decompress(e.length,32,function(t){return function(e,t){if(!u[e]){u[e]={};for(var r=0;r<e.length;r++)u[e][e.charAt(r)]=r}return u[e][t]}(l,e.charAt(t))})];case 1:return[2,t.sent()]}})})},t.compressToUTF16=function(e){return n(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:return null===e?[2,""]:[4,s.compress(e,15,function(e){return String.fromCharCode(e+32)})];case 1:return[2,t.sent()+" "]}})})},t.decompressFromUTF16=function(e){return n(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:return null===e?[2,""]:""===e?[2,null]:[4,c.decompress(e.length,16384,function(t){return e.charCodeAt(t)-32})];case 1:return[2,t.sent()]}})})}},304:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,s)}c((n=n.apply(e,t||[])).next())})},i=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompressorImpl=void 0;var a=r(658),o=[0,8,4,12,2,10,6,14,1,9,5,13,3,11,7,15],s=function(){function e(){}return e.writeValueToData=function(e,t,r,n,i){if(r%4!=0||e.dataPosition+r>n-1)for(var a=0;a<r;a++)e.dataVal=e.dataVal<<1|1&t,e.dataPosition==n-1?(e.dataPosition=0,e.data.push(i(e.dataVal)),e.dataVal=0):e.dataPosition++,t>>=1;else e.dataVal<<=r,e.dataVal|=function(e,t){for(var r=0,n=0;n<t;++n)r<<=4,r|=o[15&e],e>>=4;return r}(t,r/4),e.dataPosition+=r},e.writeWToDataVal=function(t,r,n){t.dictionaryToCreate.has(t.w)?(256>t.w.charCodeAt(0)?(e.writeValueToData(t,0,t.numBits,r,n),e.writeValueToData(t,t.w.charCodeAt(0),8,r,n)):(e.writeValueToData(t,1,t.numBits,r,n),e.writeValueToData(t,t.w.charCodeAt(0),16,r,n)),t.enlargeIn--,0==t.enlargeIn&&(t.enlargeIn=Math.pow(2,t.numBits),t.numBits++),t.dictionaryToCreate.delete(t.w)):e.writeValueToData(t,t.dictionary.get(t.w),t.numBits,r,n),t.enlargeIn--,0==t.enlargeIn&&(t.enlargeIn=Math.pow(2,t.numBits),t.numBits++)},e.loopIteration=function(e,t,r,n,i){var a=e.charAt(t);i.dictionary.has(a)||(i.dictionary.set(a,i.dictSize++),i.dictionaryToCreate.set(a,!0));var o=i.w+a;i.dictionary.has(o)?i.w=o:(this.writeWToDataVal(i,r,n),i.dictionary.set(o,i.dictSize++),i.w=String(a))},e.prototype.compress=function(t,r,o){var s=this;return new Promise(function(c){return n(s,void 0,void 0,function(){var n,s;return i(this,function(i){switch(i.label){case 0:if(null==t)return c(""),[2];n={data:[],dataPosition:0,dataVal:0,dictionary:new Map,dictionaryToCreate:new Map,dictSize:3,enlargeIn:2,numBits:2,w:""},s=0,i.label=1;case 1:return s<t.length?(e.loopIteration(t,s,r,o,n),s%1e4!=0?[3,3]:[4,(0,a.wait)()]):[3,4];case 2:i.sent(),i.label=3;case 3:return s+=1,[3,1];case 4:return""!==n.w&&e.writeWToDataVal(n,r,o),e.writeValueToData(n,2,n.numBits,r,o),n.dataVal<<=r-n.dataPosition,n.data.push(o(n.dataVal)),c(n.data.join("")),[2]}})})})},e}();t.CompressorImpl=s},134:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,s)}c((n=n.apply(e,t||[])).next())})},i=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.DecompressorImpl=void 0;var a=r(658),o=function(){function e(){}return e.prototype.decompress=function(e,t,r){var o=this;return new Promise(function(s){return n(o,void 0,void 0,function(){var n,o,c;return i(this,function(i){switch(i.label){case 0:for(n={bits:0,c:null,dataIndex:1,dataPosition:t,dataVal:r(0),dictionary:new Map,dictSize:4,enlargeIn:4,entry:"",maxPower:4,numBits:3,power:1,resb:null,result:[],w:null},o=0;o<3;o+=1)n.dictionary.set(o,o);for(;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0==n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;switch(n.bits){case 0:for(n.bits=0,n.maxPower=256,n.power=1;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0==n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;n.c=String.fromCharCode(n.bits);break;case 1:for(n.bits=0,n.maxPower=65536,n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0===n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;n.c=String.fromCharCode(n.bits);break;case 2:return s(""),[2]}n.dictionary[3]=n.c,n.w=n.c,n.result.push(n.c),c=1,i.label=1;case 1:return c%2e4!=0?[3,3]:[4,(0,a.wait)()];case 2:i.sent(),i.label=3;case 3:if(n.dataIndex>e)return s(""),[2];for(n.bits=0,n.maxPower=Math.pow(2,n.numBits),n.power=1;n.power!=n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0==n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;switch(n.c=n.bits){case 0:for(n.bits=0,n.maxPower=256,n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0==n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;n.dictionary[n.dictSize++]=String.fromCharCode(n.bits),n.c=n.dictSize-1,n.enlargeIn--;break;case 1:for(n.bits=0,n.maxPower=65536,n.power=1;n.power!==n.maxPower;)n.resb=n.dataVal&n.dataPosition,n.dataPosition>>=1,0==n.dataPosition&&(n.dataPosition=t,n.dataVal=r(n.dataIndex++)),n.bits|=+(n.resb>0)*n.power,n.power<<=1;n.dictionary[n.dictSize++]=String.fromCharCode(n.bits),n.c=n.dictSize-1,n.enlargeIn--;break;case 2:return s(n.result.join("")),[2]}if(0==n.enlargeIn&&(n.enlargeIn=Math.pow(2,n.numBits),n.numBits++),n.dictionary[n.c])n.entry=n.dictionary[n.c];else{if(n.c!==n.dictSize)return s(null),[2];n.entry=n.w+n.w.charAt(0)}return n.result.push(n.entry),n.dictionary[n.dictSize++]=n.w+n.entry.charAt(0),n.enlargeIn--,n.w=n.entry,0==n.enlargeIn&&(n.enlargeIn=Math.pow(2,n.numBits),n.numBits++),c++,[3,1];case 4:return[2]}})})})},e}();t.DecompressorImpl=o},658:function(e,t){var r=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,s)}c((n=n.apply(e,t||[])).next())})},n=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.wait=void 0,t.wait=function(){return r(this,void 0,void 0,function(){return n(this,function(e){return[2,new Promise(function(e){setTimeout(e,0)})]})})}}},t={},function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}(48)},e.exports=t()},"../../node_modules/js-sha256/src/sha256.js":function(e,t,r){!function(){"use strict";var t="input is invalid type",n="object"==typeof window,i=n?window:{};i.JS_SHA256_NO_WINDOW&&(n=!1);var a=!n&&"object"==typeof self,o=!i.JS_SHA256_NO_NODE_JS&&"object"==typeof process&&process.versions&&process.versions.node;o?i=r.g:a&&(i=self);var s=!i.JS_SHA256_NO_COMMON_JS&&e.exports,c="function"==typeof define&&define.amd,l=!i.JS_SHA256_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,u="0123456789abcdef".split(""),f=[-0x80000000,8388608,32768,128],h=[24,16,8,0],d=[0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,0xe49b69c1,0xefbe4786,0xfc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x6ca6351,0x14292967,0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2],p=["hex","array","digest","arrayBuffer"],w=[];(i.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),l&&(i.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(e){return"object"==typeof e&&e.buffer&&e.buffer.constructor===ArrayBuffer});var y=function(e,t){return function(r){return new v(t,!0).update(r)[e]()}},m=function(e){var t=y("hex",e);o&&(t=g(t,e)),t.create=function(){return new v(e)},t.update=function(e){return t.create().update(e)};for(var r=0;r<p.length;++r){var n=p[r];t[n]=y(n,e)}return t},g=function(e,n){var a,o=r("?81fa"),s=r("?2fd0").Buffer,c=n?"sha224":"sha256";return a=s.from&&!i.JS_SHA256_NO_BUFFER_FROM?s.from:function(e){return new s(e)},function(r){if("string"==typeof r)return o.createHash(c).update(r,"utf8").digest("hex");if(null==r)throw Error(t);return r.constructor===ArrayBuffer&&(r=new Uint8Array(r)),Array.isArray(r)||ArrayBuffer.isView(r)||r.constructor===s?o.createHash(c).update(a(r)).digest("hex"):e(r)}},b=function(e,t){return function(r,n){return new S(r,t,!0).update(n)[e]()}},x=function(e){var t=b("hex",e);t.create=function(t){return new S(t,e)},t.update=function(e,r){return t.create(e).update(r)};for(var r=0;r<p.length;++r){var n=p[r];t[n]=b(n,e)}return t};function v(e,t){t?(w[0]=w[16]=w[1]=w[2]=w[3]=w[4]=w[5]=w[6]=w[7]=w[8]=w[9]=w[10]=w[11]=w[12]=w[13]=w[14]=w[15]=0,this.blocks=w):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],e?(this.h0=0xc1059ed8,this.h1=0x367cd507,this.h2=0x3070dd17,this.h3=0xf70e5939,this.h4=0xffc00b31,this.h5=0x68581511,this.h6=0x64f98fa7,this.h7=0xbefa4fa4):(this.h0=0x6a09e667,this.h1=0xbb67ae85,this.h2=0x3c6ef372,this.h3=0xa54ff53a,this.h4=0x510e527f,this.h5=0x9b05688c,this.h6=0x1f83d9ab,this.h7=0x5be0cd19),this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0,this.is224=e}function S(e,r,n){var i,a=typeof e;if("string"===a){var o,s=[],c=e.length,u=0;for(i=0;i<c;++i)(o=e.charCodeAt(i))<128?s[u++]=o:(o<2048?s[u++]=192|o>>>6:(o<55296||o>=57344?s[u++]=224|o>>>12:(o=65536+((1023&o)<<10|1023&e.charCodeAt(++i)),s[u++]=240|o>>>18,s[u++]=128|o>>>12&63),s[u++]=128|o>>>6&63),s[u++]=128|63&o);e=s}else if("object"===a){if(null===e)throw Error(t);if(l&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!l||!ArrayBuffer.isView(e)))throw Error(t)}else throw Error(t);e.length>64&&(e=new v(r,!0).update(e).array());var f=[],h=[];for(i=0;i<64;++i){var d=e[i]||0;f[i]=92^d,h[i]=54^d}v.call(this,r,n),this.update(h),this.oKeyPad=f,this.inner=!0,this.sharedMemory=n}v.prototype.update=function(e){if(!this.finalized){var r,n=typeof e;if("string"!==n){if("object"===n){if(null===e)throw Error(t);if(l&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!Array.isArray(e)&&(!l||!ArrayBuffer.isView(e)))throw Error(t)}else throw Error(t);r=!0}for(var i,a,o=0,s=e.length,c=this.blocks;o<s;){if(this.hashed&&(this.hashed=!1,c[0]=this.block,this.block=c[16]=c[1]=c[2]=c[3]=c[4]=c[5]=c[6]=c[7]=c[8]=c[9]=c[10]=c[11]=c[12]=c[13]=c[14]=c[15]=0),r)for(a=this.start;o<s&&a<64;++o)c[a>>>2]|=e[o]<<h[3&a++];else for(a=this.start;o<s&&a<64;++o)(i=e.charCodeAt(o))<128?c[a>>>2]|=i<<h[3&a++]:(i<2048?c[a>>>2]|=(192|i>>>6)<<h[3&a++]:(i<55296||i>=57344?c[a>>>2]|=(224|i>>>12)<<h[3&a++]:(i=65536+((1023&i)<<10|1023&e.charCodeAt(++o)),c[a>>>2]|=(240|i>>>18)<<h[3&a++],c[a>>>2]|=(128|i>>>12&63)<<h[3&a++]),c[a>>>2]|=(128|i>>>6&63)<<h[3&a++]),c[a>>>2]|=(128|63&i)<<h[3&a++]);this.lastByteIndex=a,this.bytes+=a-this.start,a>=64?(this.block=c[16],this.start=a-64,this.hash(),this.hashed=!0):this.start=a}return this.bytes>0xffffffff&&(this.hBytes+=this.bytes/0x100000000<<0,this.bytes=this.bytes%0x100000000),this}},v.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var e=this.blocks,t=this.lastByteIndex;e[16]=this.block,e[t>>>2]|=f[3&t],this.block=e[16],t>=56&&(this.hashed||this.hash(),e[0]=this.block,e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.hBytes<<3|this.bytes>>>29,e[15]=this.bytes<<3,this.hash()}},v.prototype.hash=function(){var e,t,r,n,i,a,o,s,c,l,u,f=this.h0,h=this.h1,p=this.h2,w=this.h3,y=this.h4,m=this.h5,g=this.h6,b=this.h7,x=this.blocks;for(e=16;e<64;++e)t=((i=x[e-15])>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,r=((i=x[e-2])>>>17|i<<15)^(i>>>19|i<<13)^i>>>10,x[e]=x[e-16]+t+x[e-7]+r<<0;for(e=0,u=h&p;e<64;e+=4)this.first?(this.is224?(s=300032,b=(i=x[0]-0x543c9a5b)-0x8f1a6c7<<0,w=i+0x170e9b5<<0):(s=0x2a01a605,b=(i=x[0]-0xc881298)-0x5ab00ac6<<0,w=i+0x8909ae5<<0),this.first=!1):(t=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),r=(y>>>6|y<<26)^(y>>>11|y<<21)^(y>>>25|y<<7),n=(s=f&h)^f&p^u,i=b+r+(y&m^~y&g)+d[e]+x[e],a=t+n,b=w+i<<0,w=i+a<<0),t=(w>>>2|w<<30)^(w>>>13|w<<19)^(w>>>22|w<<10),r=(b>>>6|b<<26)^(b>>>11|b<<21)^(b>>>25|b<<7),n=(c=w&f)^w&h^s,i=g+r+(b&y^~b&m)+d[e+1]+x[e+1],a=t+n,g=p+i<<0,t=((p=i+a<<0)>>>2|p<<30)^(p>>>13|p<<19)^(p>>>22|p<<10),r=(g>>>6|g<<26)^(g>>>11|g<<21)^(g>>>25|g<<7),n=(l=p&w)^p&f^c,i=m+r+(g&b^~g&y)+d[e+2]+x[e+2],a=t+n,m=h+i<<0,t=((h=i+a<<0)>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10),r=(m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7),n=(u=h&p)^h&w^l,i=y+r+(m&g^~m&b)+d[e+3]+x[e+3],a=t+n,y=f+i<<0,f=i+a<<0,this.chromeBugWorkAround=!0;this.h0=this.h0+f<<0,this.h1=this.h1+h<<0,this.h2=this.h2+p<<0,this.h3=this.h3+w<<0,this.h4=this.h4+y<<0,this.h5=this.h5+m<<0,this.h6=this.h6+g<<0,this.h7=this.h7+b<<0},v.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,r=this.h2,n=this.h3,i=this.h4,a=this.h5,o=this.h6,s=this.h7,c=u[e>>>28&15]+u[e>>>24&15]+u[e>>>20&15]+u[e>>>16&15]+u[e>>>12&15]+u[e>>>8&15]+u[e>>>4&15]+u[15&e]+u[t>>>28&15]+u[t>>>24&15]+u[t>>>20&15]+u[t>>>16&15]+u[t>>>12&15]+u[t>>>8&15]+u[t>>>4&15]+u[15&t]+u[r>>>28&15]+u[r>>>24&15]+u[r>>>20&15]+u[r>>>16&15]+u[r>>>12&15]+u[r>>>8&15]+u[r>>>4&15]+u[15&r]+u[n>>>28&15]+u[n>>>24&15]+u[n>>>20&15]+u[n>>>16&15]+u[n>>>12&15]+u[n>>>8&15]+u[n>>>4&15]+u[15&n]+u[i>>>28&15]+u[i>>>24&15]+u[i>>>20&15]+u[i>>>16&15]+u[i>>>12&15]+u[i>>>8&15]+u[i>>>4&15]+u[15&i]+u[a>>>28&15]+u[a>>>24&15]+u[a>>>20&15]+u[a>>>16&15]+u[a>>>12&15]+u[a>>>8&15]+u[a>>>4&15]+u[15&a]+u[o>>>28&15]+u[o>>>24&15]+u[o>>>20&15]+u[o>>>16&15]+u[o>>>12&15]+u[o>>>8&15]+u[o>>>4&15]+u[15&o];return this.is224||(c+=u[s>>>28&15]+u[s>>>24&15]+u[s>>>20&15]+u[s>>>16&15]+u[s>>>12&15]+u[s>>>8&15]+u[s>>>4&15]+u[15&s]),c},v.prototype.toString=v.prototype.hex,v.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,r=this.h2,n=this.h3,i=this.h4,a=this.h5,o=this.h6,s=this.h7,c=[e>>>24&255,e>>>16&255,e>>>8&255,255&e,t>>>24&255,t>>>16&255,t>>>8&255,255&t,r>>>24&255,r>>>16&255,r>>>8&255,255&r,n>>>24&255,n>>>16&255,n>>>8&255,255&n,i>>>24&255,i>>>16&255,i>>>8&255,255&i,a>>>24&255,a>>>16&255,a>>>8&255,255&a,o>>>24&255,o>>>16&255,o>>>8&255,255&o];return this.is224||c.push(s>>>24&255,s>>>16&255,s>>>8&255,255&s),c},v.prototype.array=v.prototype.digest,v.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(this.is224?28:32),t=new DataView(e);return t.setUint32(0,this.h0),t.setUint32(4,this.h1),t.setUint32(8,this.h2),t.setUint32(12,this.h3),t.setUint32(16,this.h4),t.setUint32(20,this.h5),t.setUint32(24,this.h6),this.is224||t.setUint32(28,this.h7),e},S.prototype=new v,S.prototype.finalize=function(){if(v.prototype.finalize.call(this),this.inner){this.inner=!1;var e=this.array();v.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(e),v.prototype.finalize.call(this)}};var A=m();A.sha256=A,A.sha224=m(!0),A.sha256.hmac=x(),A.sha224.hmac=x(!0),s?e.exports=A:(i.sha256=A.sha256,i.sha224=A.sha224,c&&define(function(){return A}))}()},"?2fd0":function(){},"?81fa":function(){}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},(()=>{r.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})()})(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";let e;r.r(n),r.d(n,{Deferred:()=>s,ReferralInteractionEncoder:()=>e2,getProductInformation:()=>eN,getSupportedLocale:()=>I,openSso:()=>ej,productTypes:()=>ei,PurchaseInteractionEncoder:()=>ts,FrakRpcError:()=>t,referralInteraction:()=>e4,trackPurchaseStatus:()=>eV,productTypesMask:()=>ea,interactionTypes:()=>eo,processReferral:()=>e5,PressInteractionEncoder:()=>e8,sendTransaction:()=>eH,WebShopInteractionEncoder:()=>tc,displayEmbededWallet:()=>eM,hashAndCompressData:()=>h,decompressJson:()=>f,watchWalletStatus:()=>es,RpcErrorCodes:()=>o,setupClient:()=>A,RetailInteractionEncoder:()=>tl,getCurrencyAmountKey:()=>E,siweAuthenticate:()=>eq,getSupportedCurrency:()=>S,decompressDataAndCheckHash:()=>u,displayModal:()=>eD,FrakContextManager:()=>en,locales:()=>v,ClientNotFound:()=>a,baseIframeProps:()=>y,createIframe:()=>m,modalBuilder:()=>eJ,compressJson:()=>d,sendInteraction:()=>eF,DebugInfoGatherer:()=>w,createIFrameFrakClient:()=>b,formatAmount:()=>k});class t extends Error{code;data;constructor(e,t,r){super(t),this.code=e,this.data=r}}class i extends t{constructor(e){super(o.internalError,e)}}class a extends t{constructor(){super(o.clientNotConnected,"Client not found")}}let o={parseError:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internalError:-32603,serverError:-32e3,clientNotConnected:-32001,configError:-32002,corruptedResponse:-32003,clientAborted:-32004,walletNotConnected:-32005,serverErrorForInteractionDelegation:-32006};class s{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,t)=>{this._resolve=e,this._reject=t})}get promise(){return this._promise}resolve=e=>{this._resolve?.(e)};reject=e=>{this._reject?.(e)}}var c=r("../../node_modules/async-lz-string/libs/async-lz-string.js"),l=r("../../node_modules/js-sha256/src/sha256.js");async function u(e){if(!(e?.compressed&&e?.compressedHash))throw new t(o.corruptedResponse,"Missing compressed data");let r=await f(e.compressed);if(!r)throw new t(o.corruptedResponse,"Invalid compressed data");if(!r?.validationHash)throw new t(o.corruptedResponse,"Missing validation hash");if((0,l.sha256)(e.compressed)!==e.compressedHash)throw new t(o.corruptedResponse,"Invalid compressed hash");let{validationHash:n,...i}=r;if((0,l.sha256)(JSON.stringify(i))!==r.validationHash)throw new t(o.corruptedResponse,"Invalid data validation hash");return r}async function f(e){let t=await (0,c.decompressFromBase64)(e);try{return JSON.parse(t)}catch(e){return console.error("Invalid compressed data",{e,decompressed:t}),null}}async function h(e){let t=(0,l.sha256)(JSON.stringify(e)),r={...e,validationHash:t},n=await d(r),i=(0,l.sha256)(n);return{compressed:n,compressedHash:i}}async function d(e){return(0,c.compressToBase64)(JSON.stringify(e))}let p="nexus-wallet-backup";class w{config;iframe;isSetupDone=!1;lastResponse=null;lastRequest=null;constructor(e,t){this.config=e,this.iframe=t,this.lastRequest=null,this.lastResponse=null}setLastResponse(e){this.lastResponse={event:e.data,origin:e.origin,timestamp:Date.now()}}setLastRequest(e,t){this.lastRequest={event:e,target:t,timestamp:Date.now()}}updateSetupStatus(e){this.isSetupDone=e}base64Encode(e){try{return btoa(JSON.stringify(e))}catch(e){return console.warn("Failed to encode debug data",e),btoa("Failed to encode data")}}getIframeStatus(){return this.iframe?{loading:this.iframe.hasAttribute("loading"),url:this.iframe.src,readyState:this.iframe.contentDocument?.readyState?+("complete"===this.iframe.contentDocument.readyState):-1,contentWindow:!!this.iframe.contentWindow,isConnected:this.iframe.isConnected}:null}getNavigatorInfo(){return navigator?{userAgent:navigator.userAgent,language:navigator.language,onLine:navigator.onLine,screenWidth:window.screen.width,screenHeight:window.screen.height,pixelRatio:window.devicePixelRatio}:null}gatherDebugInfo(e){let r=this.getIframeStatus(),n=this.getNavigatorInfo(),i="Unknown";return e instanceof t?i=`FrakRpcError: ${e.code} '${e.message}'`:e instanceof Error?i=e.message:"string"==typeof e&&(i=e),{timestamp:new Date().toISOString(),encodedUrl:btoa(window.location.href),encodedConfig:this.config?this.base64Encode(this.config):"no-config",navigatorInfo:n?this.base64Encode(n):"no-navigator",iframeStatus:r?this.base64Encode(r):"not-iframe",lastRequest:this.lastRequest?this.base64Encode(this.lastRequest):"No Frak request logged",lastResponse:this.lastResponse?this.base64Encode(this.lastResponse):"No Frak response logged",clientStatus:this.isSetupDone?"setup":"not-setup",error:i}}static empty(){return new w}formatDebugInfo(e){let t=this.gatherDebugInfo(e);return`
|
|
7
3
|
Debug Information:
|
|
8
4
|
-----------------
|
|
9
|
-
Timestamp: ${
|
|
10
|
-
URL: ${
|
|
11
|
-
Config: ${
|
|
12
|
-
Navigator Info: ${
|
|
13
|
-
IFrame Status: ${
|
|
14
|
-
Last Request: ${
|
|
15
|
-
Last Response: ${
|
|
16
|
-
Client Status: ${
|
|
17
|
-
Error: ${
|
|
18
|
-
`.trim()}};function Nt(){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 ie={id:"nexus-wallet",name:"nexus-wallet",allow:"publickey-credentials-get *; clipboard-write; web-share *",style:{width:"0",height:"0",border:"0",position:"absolute",zIndex:2000001,top:"-1000px",left:"-1000px"}};function ge({walletBaseUrl:e,config:t}){let r=document.querySelector("#nexus-wallet");r&&r.remove();let o=document.createElement("iframe");return o.id=ie.id,o.name=ie.name,o.allow=ie.allow,o.style.zIndex=ie.style.zIndex.toString(),ft({iframe:o,isVisible:!1}),document.body.appendChild(o),new Promise(a=>{o?.addEventListener("load",()=>a(o)),o.src=`${t?.walletUrl??e??"https://wallet.frak.id"}/listener`})}function ft({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 Vt({iframe:e}){let t=new W;return{handleEvent:async o=>{switch(o.iframeLifecycle){case"connected":t.resolve(!0);break;case"do-backup":o.data.backup?localStorage.setItem(ue,o.data.backup):localStorage.removeItem(ue);break;case"remove-backup":localStorage.removeItem(ue);break;case"show":case"hide":ft({iframe:e,isVisible:o.iframeLifecycle==="show"});break;case"handshake":{e.contentWindow?.postMessage({clientLifecycle:"handshake-response",data:{token:o.data.token,currentUrl:window.location.href}},"*");break}}},isConnected:t.promise}}function jt({frakWalletUrl:e,iframe:t,channelManager:r,iframeLifecycleManager:o,debugInfo:a}){if(typeof window>"u")throw new R(H.configError,"iframe client should be used in the browser");if(!t.contentWindow)throw new R(H.configError,"The iframe does not have a product window");let p=t.contentWindow;async function u(T){if(!T.origin)return;try{if(new URL(T.origin).origin.toLowerCase()!==new URL(e).origin.toLowerCase())return}catch(h){console.log("Unable to check frak msg origin",h);return}if(typeof T.data!="object")return;if(a.setLastResponse(T),"iframeLifecycle"in T.data){await o.handleEvent(T.data);return}if("clientLifecycle"in T.data){console.error("Client lifecycle event received on the client side, dismissing it");return}let y=T.data.id,d=r.getRpcResolver(y);d&&await d(T.data)}window.addEventListener("message",u);function S(T){p.postMessage(T,{targetOrigin:e}),a.setLastRequest(T,e)}function f(){window.removeEventListener("message",u)}return{sendEvent:S,cleanup:f}}function be({config:e,iframe:t}){let r=Nt(),o=Vt({iframe:t}),a=new ae(e,t),p=jt({frakWalletUrl:e?.walletUrl??"https://wallet.frak.id",iframe:t,channelManager:r,iframeLifecycleManager:o,debugInfo:a}),u=async d=>{if(!await o.isConnected)throw new R(H.clientNotConnected,"The iframe provider isn't connected yet");let i=new W,g=r.createChannel(async s=>{let w=await ne(s.data);w.error?i.reject(new R(w.error.code,w.error.message,w.error?.data)):i.resolve(w.result),r.removeChannel(g)}),n=await oe(d);return p.sendEvent({id:g,topic:d.method,data:n}),i.promise},S=async(d,h)=>{if(!await o.isConnected)throw new R(H.clientNotConnected,"The iframe provider isn't connected yet");let g=r.createChannel(async s=>{let w=await ne(s.data);if(w.result)h(w.result);else throw new De("No valid result in the response")}),n=await oe(d);p.sendEvent({id:g,topic:d.method,data:n})},f=oo(p,o),T=async()=>{f(),r.destroy(),p.cleanup(),t.remove()},y=no({config:e,messageHandler:p,lifecycleManager:o}).then(()=>a.updateSetupStatus(!0));return{config:e,debugInfo:a,waitForConnection:o.isConnected,waitForSetup:y,request:u,listenerRequest:S,destroy:T}}function oo(e,t){let a,p,u=()=>e.sendEvent({clientLifecycle:"heartbeat"});async function S(){u(),a=setInterval(u,100),p=setTimeout(()=>{f(),console.log("Heartbeat timeout: connection failed")},3e4),await t.isConnected,f()}function f(){a&&clearInterval(a),p&&clearTimeout(p)}return S(),f}async function no({config:e,messageHandler:t,lifecycleManager:r}){await r.isConnected;let o=async()=>{let p=e.metadata.css;p&&t.sendEvent({clientLifecycle:"modal-css",data:{cssLink:p}})},a=async()=>{if(typeof window>"u")return;let p=window.localStorage.getItem(ue);p&&t.sendEvent({clientLifecycle:"restore-backup",data:{backup:p}})};await Promise.all([o(),a()])}var Ze=256,Qe;function Pr(e=11){if(!Qe||Ze+e>256*2){Qe="",Ze=0;for(let t=0;t<256;t++)Qe+=(256+Math.random()*256|0).toString(16).substring(1)}return Qe.substring(Ze,Ze+++e)}Ar();Ke();ve();Pt();Cr();Tt();Fe();var Ht="fCtx";function Bo(e){return btoa(Array.from(e,t=>String.fromCharCode(t)).join("")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function Ho(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 kr(e){if(e?.r)try{let t=Ae(e.r);return Bo(t)}catch(t){console.error("Error compressing Frak context",{e:t,context:e})}}function Mr(e){if(!(!e||e.length===0))try{let t=Ho(e);return{r:Ee(t,{size:20})}}catch(t){console.error("Error decompressing Frak context",{e:t,context:e})}}function Rr({url:e}){if(!e)return null;let r=new URL(e).searchParams.get(Ht);return r?Mr(r):null}function Br({url:e,context:t}){if(!e)return null;let r=Rr({url:e}),o=r?{...r,...t}:t;if(!o.r)return null;let a=kr(o);if(!a)return null;let p=new URL(e);return p.searchParams.set(Ht,a),p.toString()}function Hr(e){let t=new URL(e);return t.searchParams.delete(Ht),t.toString()}function Do({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,o;t!==null?o=Br({url:r,context:t}):o=Hr(r),o&&window.history.replaceState(null,"",o.toString())}var re={compress:kr,decompress:Mr,parse:Rr,update:Br,remove:Hr,replaceUrl:Do};async function Dt({config:e}){let t=await ge({config:e});if(!t){console.error("Failed to create iframe");return}let r=be({config:e,iframe:t});if(await r.waitForSetup,!await r.waitForConnection){console.error("Failed to connect to client");return}return r}var U={dapp:1,press:2,webshop:3,retail:4,referral:30,purchase:31},Dr=Object.entries(U).reduce((e,[t,r])=>(e[t]=BigInt(1)<<BigInt(r),e),{});var _={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"},retail:{customerMeeting:"0x74489004"}};function et(e,t){if(!t)return e.request({method:"frak_listenToWalletStatus"}).then(a=>(Lr(a.interactionToken),a));let r=new W,o=!1;return e.listenerRequest({method:"frak_listenToWalletStatus"},a=>{t(a),Lr(a.interactionToken),o||(r.resolve(a),o=!0)}).then(()=>r.promise)}function Lr(e){typeof window>"u"||(e?window.sessionStorage.setItem("frak-wallet-interaction-token",e):window.sessionStorage.removeItem("frak.interaction-token"))}function zr({domain:e}){let t=e??window.location.host;return ke($(t))}async function tt(e,{productId:t,interaction:r,validation:o}){let a=t??zr(e.config);return await e.request({method:"frak_sendInteraction",params:[a,r,o]})}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){await e.request({method:"frak_displayEmbededWallet",params:[t,e.config.metadata.name]})}async function Ur(e,t){let{metadata:r}=e.config;await e.request({method:"frak_sso",params:[t,r.name,r.css]})}async function Or(e){return await e.request({method:"frak_getProductInformation"})}async function _r(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 Lt(){return Pr(96)}async function Nr(e,{siwe:t,metadata:r}){let o=e.config?.domain??window.location.host,a=t?.statement??`I confirm that I want to use my Frak wallet on: ${e.config.metadata.name}`,p={...t,statement:a,nonce:t?.nonce??Lt(),uri:t?.uri??`https://${o}`,version:t?.version??"1",domain:o};return(await J(e,{metadata:r,steps:{login:{},siweAuthenticate:{siwe:p}}})).siweAuthenticate}async function Vr(e,{tx:t,metadata:r}){return(await J(e,{metadata:r,steps:{login:{},sendTransaction:{tx:t}}})).sendTransaction}function jr(e,{metadata:t,login:r,openSession:o}){return rt(e,{steps:{login:r??{},openSession:o??{}},metadata:t})}function rt(e,t){function r(u){return rt(e,{...t,steps:{...t.steps,sendTransaction:u}})}function o(u){return rt(e,{...t,steps:{...t.steps,final:{...u,action:{key:"reward"}}}})}function a(u,S){return rt(e,{...t,steps:{...t.steps,final:{...S,action:{key:"sharing",options:u}}}})}async function p(u){return u&&(t.metadata=u(t.metadata??{})),await J(e,t)}return{params:t,sendTx:r,reward:o,sharing:a,display:p}}var Wr={openArticle({articleId:e}){let t=j([_.press.openArticle,z(e,{size:32})]);return{handlerTypeDenominator:$(U.press),interactionData:t}},readArticle({articleId:e}){let t=j([_.press.readArticle,z(e,{size:32})]);return{handlerTypeDenominator:$(U.press),interactionData:t}}};var ot={createLink(){return{handlerTypeDenominator:$(U.referral),interactionData:_.referral.createLink}},referred({referrer:e}){let t=j([_.referral.referred,z(e,{size:32})]);return{handlerTypeDenominator:$(U.referral),interactionData:t}}};var qr={startPurchase({purchaseId:e}){let t=j([_.purchase.started,z(e,{size:32})]);return{handlerTypeDenominator:$(U.purchase),interactionData:t}},completedPurchase({purchaseId:e,proof:t}){let r=kt([{type:"uint256"},{type:"bytes32[]"}],[BigInt(e),t]),o=j([_.purchase.completed,r]);return{handlerTypeDenominator:$(U.purchase),interactionData:o}},unsafeCompletedPurchase({purchaseId:e}){let t=j([_.purchase.unsafeCompleted,z(e,{size:32})]);return{handlerTypeDenominator:$(U.purchase),interactionData:t}}};var Kr={open(){return{handlerTypeDenominator:$(U.webshop),interactionData:_.webshop.open}}};var Jr={customerMeeting({agencyId:e}){let t=j([_.retail.customerMeeting,z(e,{size:32})]);return{handlerTypeDenominator:$(U.retail),interactionData:t}}};async function nt(e,{walletStatus:t,frakContext:r,modalConfig:o,productId:a,options:p}){let u=!1;async function S(){if(!u)return u=!0,zo(e,{modalConfig:o,walletStatus:t})}async function f(T){let y=ot.referred({referrer:T});await tt(e,{productId:a,interaction:y})}try{let{status:T,currentWallet:y}=await Lo({initialWalletStatus:t,getFreshWalletStatus:S,pushReferralInteraction:f,frakContext:r});return re.replaceUrl({url:window.location?.href,context:p?.alwaysAppendUrl?{r:y}:null}),T}catch(T){return console.log("Error processing referral",{error:T}),re.replaceUrl({url:window.location?.href,context:p?.alwaysAppendUrl?{r:t?.wallet}:null}),$o(T)}}async function Lo({initialWalletStatus:e,getFreshWalletStatus:t,pushReferralInteraction:r,frakContext:o}){let a=e?.wallet;return o?.r?(a||(a=await t()),a&&Bt(o.r,a)?{status:"self-referral",currentWallet:a}:(e?.interactionSession||(a=await t()),await r(o.r),{status:"success",currentWallet:a})):{status:"no-referrer",currentWallet:a}}async function zo(e,{modalConfig:t,walletStatus:r}){return r?.interactionSession?r.wallet??void 0:t?(await J(e,t))?.login?.wallet??void 0:void 0}function $o(e){if(e instanceof R)switch(e.code){case H.walletNotConnected:return"no-wallet";case H.serverErrorForInteractionDelegation:return"no-session";default:return"error"}return"error"}async function Gr(e,{productId:t,modalConfig:r,options:o}={}){let a=re.parse({url:window.location.href}),p=await et(e);try{return await nt(e,{walletStatus:p,frakContext:a,modalConfig:r,productId:t,options:o})}catch(u){console.warn("Error processing referral",{error:u})}}return ro(Uo);})();
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*
|
|
25
|
-
* @version 0.11.0
|
|
26
|
-
* @author Chen, Yi-Cyuan [emn178@gmail.com]
|
|
27
|
-
* @copyright Chen, Yi-Cyuan 2014-2024
|
|
28
|
-
* @license MIT
|
|
29
|
-
*)
|
|
30
|
-
|
|
31
|
-
@noble/hashes/esm/utils.js:
|
|
32
|
-
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
33
|
-
*/
|
|
5
|
+
Timestamp: ${t.timestamp}
|
|
6
|
+
URL: ${t.encodedUrl}
|
|
7
|
+
Config: ${t.encodedConfig}
|
|
8
|
+
Navigator Info: ${t.navigatorInfo}
|
|
9
|
+
IFrame Status: ${t.iframeStatus}
|
|
10
|
+
Last Request: ${t.lastRequest}
|
|
11
|
+
Last Response: ${t.lastResponse}
|
|
12
|
+
Client Status: ${t.clientStatus}
|
|
13
|
+
Error: ${t.error}
|
|
14
|
+
`.trim()}}let y={id:"nexus-wallet",name:"nexus-wallet",allow:"publickey-credentials-get *; clipboard-write; web-share *",style:{width:"0",height:"0",border:"0",position:"absolute",zIndex:2000001,top:"-1000px",left:"-1000px"}};function m({walletBaseUrl:e,config:t}){let r=document.querySelector("#nexus-wallet");r&&r.remove();let n=document.createElement("iframe");return n.id=y.id,n.name=y.name,n.allow=y.allow,n.style.zIndex=y.style.zIndex.toString(),g({iframe:n,isVisible:!1}),document.body.appendChild(n),new Promise(r=>{n?.addEventListener("load",()=>r(n)),n.src=`${t?.walletUrl??e??"https://wallet.frak.id"}/listener`})}function g({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 b({config:e,iframe:r}){let n=function(){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()}}(),a=function({iframe:e}){let t=new s;return{handleEvent:async r=>{switch(r.iframeLifecycle){case"connected":t.resolve(!0);break;case"do-backup":r.data.backup?localStorage.setItem(p,r.data.backup):localStorage.removeItem(p);break;case"remove-backup":localStorage.removeItem(p);break;case"show":case"hide":g({iframe:e,isVisible:"show"===r.iframeLifecycle});break;case"handshake":e.contentWindow?.postMessage({clientLifecycle:"handshake-response",data:{token:r.data.token,currentUrl:window.location.href}},"*")}},isConnected:t.promise}}({iframe:r}),c=new w(e,r),l=function({frakWalletUrl:e,iframe:r,channelManager:n,iframeLifecycleManager:i,debugInfo:a}){if("undefined"==typeof window)throw new t(o.configError,"iframe client should be used in the browser");if(!r.contentWindow)throw new t(o.configError,"The iframe does not have a product window");let s=r.contentWindow;async function c(t){if(!t.origin)return;try{if(new URL(t.origin).origin.toLowerCase()!==new URL(e).origin.toLowerCase())return}catch(e){console.log("Unable to check frak msg origin",e);return}if("object"!=typeof t.data)return;if(a.setLastResponse(t),"iframeLifecycle"in t.data){await i.handleEvent(t.data);return}if("clientLifecycle"in t.data){console.error("Client lifecycle event received on the client side, dismissing it");return}let r=t.data.id,o=n.getRpcResolver(r);o&&await o(t.data)}return window.addEventListener("message",c),{sendEvent:function(t){s.postMessage(t,{targetOrigin:e}),a.setLastRequest(t,e)},cleanup:function(){window.removeEventListener("message",c)}}}({frakWalletUrl:e?.walletUrl??"https://wallet.frak.id",iframe:r,channelManager:n,iframeLifecycleManager:a,debugInfo:c}),f=async e=>{if(!await a.isConnected)throw new t(o.clientNotConnected,"The iframe provider isn't connected yet");let r=new s,i=n.createChannel(async e=>{let a=await u(e.data);a.error?r.reject(new t(a.error.code,a.error.message,a.error?.data)):r.resolve(a.result),n.removeChannel(i)}),c=await h(e);return l.sendEvent({id:i,topic:e.method,data:c}),r.promise},d=async(e,r)=>{if(!await a.isConnected)throw new t(o.clientNotConnected,"The iframe provider isn't connected yet");let s=n.createChannel(async e=>{let t=await u(e.data);if(t.result)r(t.result);else throw new i("No valid result in the response")}),c=await h(e);l.sendEvent({id:s,topic:e.method,data:c})},y=function(e,t){let r,n;let i=()=>e.sendEvent({clientLifecycle:"heartbeat"});function a(){r&&clearInterval(r),n&&clearTimeout(n)}return async function(){i(),r=setInterval(i,100),n=setTimeout(()=>{a(),console.log("Heartbeat timeout: connection failed")},3e4),await t.isConnected,a()}(),a}(l,a),m=async()=>{y(),n.destroy(),l.cleanup(),r.remove()},b=x({config:e,messageHandler:l,lifecycleManager:a}).then(()=>c.updateSetupStatus(!0));return{config:e,debugInfo:c,waitForConnection:a.isConnected,waitForSetup:b,request:f,listenerRequest:d,destroy:m}}async function x({config:e,messageHandler:t,lifecycleManager:r}){await r.isConnected;let n=async()=>{let r=e.metadata.css;r&&t.sendEvent({clientLifecycle:"modal-css",data:{cssLink:r}})},i=async()=>{if("undefined"==typeof window)return;let e=window.localStorage.getItem(p);e&&t.sendEvent({clientLifecycle:"restore-backup",data:{backup:e}})};await Promise.all([n(),i()])}let v={eur:"fr-FR",usd:"en-US",gbp:"en-GB"};function S(e){return e&&e in v?e:"eur"}async function A({config:e}){let t=function(e){let t=S(e.metadata?.currency);return{...e,metadata:{...e.metadata,currency:t}}}(e),r=await m({config:t});if(!r){console.error("Failed to create iframe");return}let n=b({config:t,iframe:r});if(await n.waitForSetup,!await n.waitForConnection){console.error("Failed to connect to client");return}return n}function I(e){return e?v[e]??v.eur:v.eur}function k(e,t){let r=I(t),n=S(t);return e.toLocaleString(r,{style:"currency",currency:n,minimumFractionDigits:0,maximumFractionDigits:2})}function E(e){return e?`${e}Amount`:"eurAmount"}let z="2.23.9",P={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:r})=>t?`${e??"https://viem.sh"}${t}${r?`#${r}`:""}`:void 0,version:`viem@${z}`};class $ extends Error{constructor(e,t={}){let r=t.cause instanceof $?t.cause.details:t.cause?.message?t.cause.message:t.details,n=t.cause instanceof $&&t.cause.docsPath||t.docsPath,i=P.getDocsUrl?.({...t,docsPath:n});super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...i?[`Docs: ${i}`]:[],...r?[`Details: ${r}`]:[],...P.version?[`Version: ${P.version}`]:[]].join("\n"),t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=r,this.docsPath=n,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=z}walk(e){return function e(t,r){return r?.(t)?t:t&&"object"==typeof t&&"cause"in t&&void 0!==t.cause?e(t.cause,r):r?null:t}(this,e)}}function C(e,{strict:t=!0}={}){return!!e&&"string"==typeof e&&(t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x"))}class _ extends ${constructor({offset:e,position:t,size:r}){super(`Slice ${"start"===t?"starting":"ending"} at offset "${e}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}}class B extends ${constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}}function T(e,{dir:t,size:r=32}={}){return"string"==typeof e?U(e,{dir:t,size:r}):function(e,{dir:t,size:r=32}={}){if(null===r)return e;if(e.length>r)throw new B({size:e.length,targetSize:r,type:"bytes"});let n=new Uint8Array(r);for(let i=0;i<r;i++){let a="right"===t;n[a?i:r-i-1]=e[a?i:e.length-i-1]}return n}(e,{dir:t,size:r})}function U(e,{dir:t,size:r=32}={}){if(null===r)return e;let n=e.replace("0x","");if(n.length>2*r)throw new B({size:Math.ceil(n.length/2),targetSize:r,type:"hex"});return`0x${n["right"===t?"padEnd":"padStart"](2*r,"0")}`}class O extends ${constructor({max:e,min:t,signed:r,size:n,value:i}){super(`Number "${i}" is not in safe ${n?`${8*n}-bit ${r?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}}class L extends ${constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function R(e){return C(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}function F(e,{size:t}){if(R(e)>t)throw new L({givenSize:R(e),maxSize:t})}let D=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function M(e,t={}){return"number"==typeof e||"bigint"==typeof e?V(e,t):"string"==typeof e?q(e,t):"boolean"==typeof e?j(e,t):N(e,t)}function j(e,t={}){let r=`0x${Number(e)}`;return"number"==typeof t.size?(F(r,{size:t.size}),T(r,{size:t.size})):r}function N(e,t={}){let r="";for(let t=0;t<e.length;t++)r+=D[e[t]];let n=`0x${r}`;return"number"==typeof t.size?(F(n,{size:t.size}),T(n,{dir:"right",size:t.size})):n}function V(e,t={}){let r;let{signed:n,size:i}=t,a=BigInt(e);i?r=n?(1n<<8n*BigInt(i)-1n)-1n:2n**(8n*BigInt(i))-1n:"number"==typeof e&&(r=BigInt(Number.MAX_SAFE_INTEGER));let o="bigint"==typeof r&&n?-r-1n:0;if(r&&a>r||a<o){let t="bigint"==typeof e?"n":"";throw new O({max:r?`${r}${t}`:void 0,min:`${o}${t}`,signed:n,size:i,value:`${e}${t}`})}let s=`0x${(n&&a<0?(1n<<BigInt(8*i))+BigInt(a):a).toString(16)}`;return i?T(s,{size:i}):s}let W=new TextEncoder;function q(e,t={}){return N(W.encode(e),t)}let H=new TextEncoder,J={zero:48,nine:57,A:65,F:70,a:97,f:102};function G(e){return e>=J.zero&&e<=J.nine?e-J.zero:e>=J.A&&e<=J.F?e-(J.A-10):e>=J.a&&e<=J.f?e-(J.a-10):void 0}function K(e,t={}){let r=e;t.size&&(F(r,{size:t.size}),r=T(r,{dir:"right",size:t.size}));let n=r.slice(2);n.length%2&&(n=`0${n}`);let i=n.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let r=G(n.charCodeAt(t++)),i=G(n.charCodeAt(t++));if(void 0===r||void 0===i)throw new $(`Invalid byte sequence ("${n[t-2]}${n[t-1]}" in "${n}").`);a[e]=16*r+i}return a}function X(e,t={}){let r=H.encode(e);return"number"==typeof t.size?(F(r,{size:t.size}),T(r,{dir:"right",size:t.size})):r}let Y="fCtx";function Q(e){if(e?.r)try{var t;return t=K(e.r),btoa(Array.from(t,e=>String.fromCharCode(e)).join("")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}catch(t){console.error("Error compressing Frak context",{e:t,context:e})}}function Z(e){if(e&&0!==e.length)try{let t=function(e){let t=e.length%4;return Uint8Array.from(atob(e.replace(/-/g,"+").replace(/_/g,"/").padEnd(e.length+(0===t?0:4-t),"=")),e=>e.charCodeAt(0))}(e);return{r:N(t,{size:20})}}catch(t){console.error("Error decompressing Frak context",{e:t,context:e})}}function ee({url:e}){if(!e)return null;let t=new URL(e).searchParams.get(Y);return t?Z(t):null}function et({url:e,context:t}){if(!e)return null;let r=ee({url:e}),n=r?{...r,...t}:t;if(!n.r)return null;let i=Q(n);if(!i)return null;let a=new URL(e);return a.searchParams.set(Y,i),a.toString()}function er(e){let t=new URL(e);return t.searchParams.delete(Y),t.toString()}let en={compress:Q,decompress:Z,parse:ee,update:et,remove:er,replaceUrl:function({url:e,context:t}){let r;if(!window.location?.href||"undefined"==typeof window){console.error("No window found, can't update context");return}let n=e??window.location.href;(r=null!==t?et({url:n,context:t}):er(n))&&window.history.replaceState(null,"",r.toString())}},ei={dapp:1,press:2,webshop:3,retail:4,referral:30,purchase:31},ea=Object.entries(ei).reduce((e,[t,r])=>(e[t]=BigInt(1)<<BigInt(r),e),{}),eo={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"},retail:{customerMeeting:"0x74489004"}};function es(e,t){if(!t)return e.request({method:"frak_listenToWalletStatus"}).then(e=>(ec(e.interactionToken),e));let r=new s,n=!1;return e.listenerRequest({method:"frak_listenToWalletStatus"},e=>{t(e),ec(e.interactionToken),n||(r.resolve(e),n=!0)}).then(()=>r.promise)}function ec(e){"undefined"!=typeof window&&(e?window.sessionStorage.setItem("frak-wallet-interaction-token",e):window.sessionStorage.removeItem("frak.interaction-token"))}function el(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function eu(e,...t){if(!(e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name))throw Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw Error("Uint8Array expected of length "+t+", got length="+e.length)}function ef(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}let eh=BigInt(0x100000000-1),ed=BigInt(32),ep=(e,t,r)=>e<<r|t>>>32-r,ew=(e,t,r)=>t<<r|e>>>32-r,ey=(e,t,r)=>t<<r-32|e>>>64-r,em=(e,t,r)=>e<<r-32|t>>>64-r,eg=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0];function eb(e){for(let r=0;r<e.length;r++){var t;e[r]=(t=e[r])<<24&0xff000000|t<<8&0xff0000|t>>>8&65280|t>>>24&255}}function ex(e){return"string"==typeof e&&(e=function(e){if("string"!=typeof e)throw Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}(e)),eu(e),e}class ev{clone(){return this._cloneInto()}}let eS=[],eA=[],eI=[],ek=BigInt(0),eE=BigInt(1),ez=BigInt(2),eP=BigInt(7),e$=BigInt(256),eC=BigInt(113);for(let e=0,t=eE,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],eS.push(2*(5*n+r)),eA.push((e+1)*(e+2)/2%64);let i=ek;for(let e=0;e<7;e++)(t=(t<<eE^(t>>eP)*eC)%e$)&ez&&(i^=eE<<(eE<<BigInt(e))-eE);eI.push(i)}let[e_,eB]=function(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:a,l:o}=function(e,t=!1){return t?{h:Number(e&eh),l:Number(e>>ed&eh)}:{h:0|Number(e>>ed&eh),l:0|Number(e&eh)}}(e[i],t);[r[i],n[i]]=[a,o]}return[r,n]}(eI,!0),eT=(e,t,r)=>r>32?ey(e,t,r):ep(e,t,r),eU=(e,t,r)=>r>32?em(e,t,r):ew(e,t,r);class eO extends ev{constructor(e,t,r,n=!1,i=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=n,this.rounds=i,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,el(r),0>=this.blockLen||this.blockLen>=200)throw Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=function(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}(this.state)}keccak(){eg||eb(this.state32),function(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let t=0;t<10;t++)r[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let n=(t+8)%10,i=(t+2)%10,a=r[i],o=r[i+1],s=eT(a,o,1)^r[n],c=eU(a,o,1)^r[n+1];for(let r=0;r<50;r+=10)e[t+r]^=s,e[t+r+1]^=c}let t=e[2],i=e[3];for(let r=0;r<24;r++){let n=eA[r],a=eT(t,i,n),o=eU(t,i,n),s=eS[r];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let n=0;n<10;n++)r[n]=e[t+n];for(let n=0;n<10;n++)e[t+n]^=~r[(n+2)%10]&r[(n+4)%10]}e[0]^=e_[n],e[1]^=eB[n]}r.fill(0)}(this.state32,this.rounds),eg||eb(this.state32),this.posOut=0,this.pos=0}update(e){ef(this);let{blockLen:t,state:r}=this,n=(e=ex(e)).length;for(let i=0;i<n;){let a=Math.min(t-this.pos,n-i);for(let t=0;t<a;t++)r[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:r,blockLen:n}=this;e[r]^=t,(128&t)!=0&&r===n-1&&this.keccak(),e[n-1]^=128,this.keccak()}writeInto(e){ef(this,!1),eu(e),this.finish();let t=this.state,{blockLen:r}=this;for(let n=0,i=e.length;n<i;){this.posOut>=r&&this.keccak();let a=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+a),n),this.posOut+=a,n+=a}return e}xofInto(e){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return el(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(function(e,t){eu(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}(e,this),this.finished)throw Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:n,rounds:i,enableXOF:a}=this;return e||(e=new eO(t,r,n,a,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=n,e.enableXOF=a,e.destroyed=this.destroyed,e}}let eL=function(e){let t=t=>e().update(ex(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}(()=>new eO(136,1,32));function eR(e,t){let r=eL(C(e,{strict:!1})?function(e,t={}){return"number"==typeof e||"bigint"==typeof e?K(V(e,t)):"boolean"==typeof e?function(e,t={}){let r=new Uint8Array(1);return(r[0]=Number(e),"number"==typeof t.size)?(F(r,{size:t.size}),T(r,{size:t.size})):r}(e,t):C(e)?K(e,t):X(e,t)}(e):e);return"bytes"===(t||"hex")?r:M(r)}async function eF(e,{productId:t,interaction:r,validation:n}){let i=t??function({domain:e}){return eR(M(e??window.location.host))}(e.config);return await e.request({method:"frak_sendInteraction",params:[i,r,n]})}async function eD(e,{steps:t,metadata:r}){return await e.request({method:"frak_displayModal",params:[t,{...r,...e.config.metadata}]})}async function eM(e,t){await e.request({method:"frak_displayEmbededWallet",params:[t,e.config.metadata]})}async function ej(e,t){let{metadata:r}=e.config;await e.request({method:"frak_sso",params:[t,r.name,r.css]})}async function eN(e){return await e.request({method:"frak_getProductInformation"})}async function eV(e){if("undefined"==typeof window){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)})}let eW=256;async function eq(t,{siwe:r,metadata:n}){let i=t.config?.domain??window.location.host,a=r?.statement??`I confirm that I want to use my Frak wallet on: ${t.config.metadata.name}`,o={...r,statement:a,nonce:r?.nonce??function(t=11){if(!e||eW+t>512){e="",eW=0;for(let t=0;t<256;t++)e+=(256+256*Math.random()|0).toString(16).substring(1)}return e.substring(eW,eW+++t)}(96),uri:r?.uri??`https://${i}`,version:r?.version??"1",domain:i};return(await eD(t,{metadata:n,steps:{login:{},siweAuthenticate:{siwe:o}}})).siweAuthenticate}async function eH(e,{tx:t,metadata:r}){return(await eD(e,{metadata:r,steps:{login:{},sendTransaction:{tx:t}}})).sendTransaction}function eJ(e,{metadata:t,login:r,openSession:n}){return function e(t,r){async function n(e){return e&&(r.metadata=e(r.metadata??{})),await eD(t,r)}return{params:r,sendTx:function(n){return e(t,{...r,steps:{...r.steps,sendTransaction:n}})},reward:function(n){return e(t,{...r,steps:{...r.steps,final:{...n,action:{key:"reward"}}}})},sharing:function(n,i){return e(t,{...r,steps:{...r.steps,final:{...i,action:{key:"sharing",options:n}}}})},display:n}}(e,{steps:{login:r??{},openSession:n??{}},metadata:t})}class eG extends ${constructor({address:e}){super(`Address "${e}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."],name:"InvalidAddressError"})}}class eK extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&void 0!==t&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}let eX=new eK(8192),eY=/^0x[a-fA-F0-9]{40}$/,eQ=new eK(8192);function eZ(e,t){let{strict:r=!0}=t??{},n=`${e}.${r}`;if(eQ.has(n))return eQ.get(n);let i=!!eY.test(e)&&(e.toLowerCase()===e||!r||function(e,t){if(eX.has(`${e}.${void 0}`))return eX.get(`${e}.${t}`);let r=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),n=eR(X(r),"bytes"),i=(t?r.substring(`${t}0x`.length):r).split("");for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(15&n[e>>1])>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join("")}`;return eX.set(`${e}.${t}`,a),a}(e)===e);return eQ.set(n,i),i}function e0(e){return"string"==typeof e[0]?e1(e):function(e){let t=0;for(let r of e)t+=r.length;let r=new Uint8Array(t),n=0;for(let t of e)r.set(t,n),n+=t.length;return r}(e)}function e1(e){return`0x${e.reduce((e,t)=>e+t.replace("0x",""),"")}`}let e2={createLink:()=>({handlerTypeDenominator:M(ei.referral),interactionData:eo.referral.createLink}),referred({referrer:e}){let t=e1([eo.referral.referred,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.referral),interactionData:t}}};async function e5(e,{walletStatus:r,frakContext:n,modalConfig:i,productId:a,options:s}){let c=!1;async function l(){if(!c)return c=!0,e3(e,{modalConfig:i,walletStatus:r})}async function u(t){let r=e2.referred({referrer:t});await eF(e,{productId:a,interaction:r})}try{let{status:e,currentWallet:t}=await e6({initialWalletStatus:r,getFreshWalletStatus:l,pushReferralInteraction:u,frakContext:n});return en.replaceUrl({url:window.location?.href,context:s?.alwaysAppendUrl?{r:t}:null}),e}catch(e){return console.log("Error processing referral",{error:e}),en.replaceUrl({url:window.location?.href,context:s?.alwaysAppendUrl?{r:r?.wallet}:null}),function(e){if(e instanceof t)switch(e.code){case o.walletNotConnected:return"no-wallet";case o.serverErrorForInteractionDelegation:return"no-session"}return"error"}(e)}}async function e6({initialWalletStatus:e,getFreshWalletStatus:t,pushReferralInteraction:r,frakContext:n}){let i=e?.wallet;return n?.r?(i||(i=await t()),i&&function(e,t){if(!eZ(e,{strict:!1}))throw new eG({address:e});if(!eZ(t,{strict:!1}))throw new eG({address:t});return e.toLowerCase()===t.toLowerCase()}(n.r,i))?{status:"self-referral",currentWallet:i}:(e?.interactionSession||(i=await t()),await r(n.r),{status:"success",currentWallet:i}):{status:"no-referrer",currentWallet:i}}async function e3(e,{modalConfig:t,walletStatus:r}){if(!r?.interactionSession){if(!t)return;let r=await eD(e,t);return r?.login?.wallet??void 0}return r.wallet??void 0}async function e4(e,{productId:t,modalConfig:r,options:n}={}){let i=en.parse({url:window.location.href}),a=await es(e);try{return await e5(e,{walletStatus:a,frakContext:i,modalConfig:r,productId:t,options:n})}catch(e){console.warn("Error processing referral",{error:e})}}let e8={openArticle({articleId:e}){let t=e1([eo.press.openArticle,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.press),interactionData:t}},readArticle({articleId:e}){let t=e1([eo.press.readArticle,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.press),interactionData:t}}};class e7 extends ${constructor({expectedLength:e,givenLength:t,type:r}){super(`ABI encoding array length mismatch for type ${r}.
|
|
15
|
+
Expected length: ${e}
|
|
16
|
+
Given length: ${t}`,{name:"AbiEncodingArrayLengthMismatchError"})}}class e9 extends ${constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${R(t)}) does not match expected size (bytes${e}).`,{name:"AbiEncodingBytesSizeMismatchError"})}}class te extends ${constructor({expectedLength:e,givenLength:t}){super(`ABI encoding params/values length mismatch.
|
|
17
|
+
Expected length (params): ${e}
|
|
18
|
+
Given length (values): ${t}`,{name:"AbiEncodingLengthMismatchError"})}}class tt extends ${constructor(e,{docsPath:t}){super(`Type "${e}" is not a valid encoding type.
|
|
19
|
+
Please provide a valid ABI type.`,{docsPath:t,name:"InvalidAbiEncodingType"})}}class tr extends ${constructor(e){super(`Value "${e}" is not a valid array.`,{name:"InvalidArrayError"})}}function tn(e,t){if("number"==typeof t&&t>0&&t>R(e)-1)throw new _({offset:t,position:"start",size:R(e)})}function ti(e,t,r){if("number"==typeof t&&"number"==typeof r&&R(e)!==r-t)throw new _({offset:r,position:"end",size:R(e)})}let ta=/^(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 to(e){let t=0;for(let r=0;r<e.length;r++){let{dynamic:n,encoded:i}=e[r];n?t+=32:t+=R(i)}let r=[],n=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(r.push(V(t+i,{size:32})),n.push(s),i+=R(s)):r.push(s)}return e0([...r,...n])}let ts={startPurchase({purchaseId:e}){let t=e1([eo.purchase.started,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.purchase),interactionData:t}},completedPurchase({purchaseId:e,proof:t}){let r=function(e,t){if(e.length!==t.length)throw new te({expectedLength:e.length,givenLength:t.length});let r=to(function({params:e,values:t}){let r=[];for(let n=0;n<e.length;n++)r.push(function e({param:t,value:r}){let n=function(e){let t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}(t.type);if(n){let[i,a]=n;return function(t,{length:r,param:n}){let i=null===r;if(!Array.isArray(t))throw new tr(t);if(!i&&t.length!==r)throw new e7({expectedLength:r,givenLength:t.length,type:`${n.type}[${r}]`});let a=!1,o=[];for(let r=0;r<t.length;r++){let i=e({param:n,value:t[r]});i.dynamic&&(a=!0),o.push(i)}if(i||a){let e=to(o);if(i){let t=V(o.length,{size:32});return{dynamic:!0,encoded:o.length>0?e0([t,e]):t}}if(a)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:e0(o.map(({encoded:e})=>e))}}(r,{length:i,param:{...t,type:a}})}if("tuple"===t.type)return function(t,{param:r}){let n=!1,i=[];for(let a=0;a<r.components.length;a++){let o=r.components[a],s=Array.isArray(t)?a:o.name,c=e({param:o,value:t[s]});i.push(c),c.dynamic&&(n=!0)}return{dynamic:n,encoded:n?to(i):e0(i.map(({encoded:e})=>e))}}(r,{param:t});if("address"===t.type)return function(e){if(!eZ(e))throw new eG({address:e});return{dynamic:!1,encoded:U(e.toLowerCase())}}(r);if("bool"===t.type)return function(e){if("boolean"!=typeof e)throw new $(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:U(j(e))}}(r);if(t.type.startsWith("uint")||t.type.startsWith("int")){let e=t.type.startsWith("int"),[,,n="256"]=ta.exec(t.type)??[];return function(e,{signed:t,size:r=256}){if("number"==typeof r){let n=2n**(BigInt(r)-(t?1n:0n))-1n,i=t?-n-1n:0n;if(e>n||e<i)throw new O({max:n.toString(),min:i.toString(),signed:t,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:V(e,{size:32,signed:t})}}(r,{signed:e,size:Number(n)})}if(t.type.startsWith("bytes"))return function(e,{param:t}){let[,r]=t.type.split("bytes"),n=R(e);if(!r){let t=e;return n%32!=0&&(t=U(t,{dir:"right",size:32*Math.ceil((e.length-2)/2/32)})),{dynamic:!0,encoded:e0([U(V(n,{size:32})),t])}}if(n!==Number.parseInt(r))throw new e9({expectedSize:Number.parseInt(r),value:e});return{dynamic:!1,encoded:U(e,{dir:"right"})}}(r,{param:t});if("string"===t.type)return function(e){let t=q(e),r=Math.ceil(R(t)/32),n=[];for(let e=0;e<r;e++)n.push(U(function(e,t,r,{strict:n}={}){return C(e,{strict:!1})?function(e,t,r,{strict:n}={}){tn(e,t);let i=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return n&&ti(i,t,r),i}(e,t,r,{strict:n}):function(e,t,r,{strict:n}={}){tn(e,t);let i=e.slice(t,r);return n&&ti(i,t,r),i}(e,t,r,{strict:n})}(t,32*e,(e+1)*32),{dir:"right"}));return{dynamic:!0,encoded:e0([U(V(R(t),{size:32})),...n])}}(r);throw new tt(t.type,{docsPath:"/docs/contract/encodeAbiParameters"})}({param:e[n],value:t[n]}));return r}({params:e,values:t}));return 0===r.length?"0x":r}([{type:"uint256"},{type:"bytes32[]"}],[BigInt(e),t]),n=e1([eo.purchase.completed,r]);return{handlerTypeDenominator:M(ei.purchase),interactionData:n}},unsafeCompletedPurchase({purchaseId:e}){let t=e1([eo.purchase.unsafeCompleted,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.purchase),interactionData:t}}},tc={open:()=>({handlerTypeDenominator:M(ei.webshop),interactionData:eo.webshop.open})},tl={customerMeeting({agencyId:e}){let t=e1([eo.retail.customerMeeting,T(e,{size:32})]);return{handlerTypeDenominator:M(ei.retail),interactionData:t}}}})(),n})());
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* [js-sha256]{@link https://github.com/emn178/js-sha256}
|
|
5
|
+
*
|
|
6
|
+
* @version 0.11.0
|
|
7
|
+
* @author Chen, Yi-Cyuan [emn178@gmail.com]
|
|
8
|
+
* @copyright Chen, Yi-Cyuan 2014-2024
|
|
9
|
+
* @license MIT
|
|
10
|
+
*/
|
package/dist/actions.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{openSso:()=>openSso,referralInteraction:()=>referralInteraction,trackPurchaseStatus:()=>trackPurchaseStatus,modalBuilder:()=>modalBuilder,processReferral:()=>processReferral,sendTransaction:()=>sendTransaction,displayModal:()=>displayModal,getProductInformation:()=>getProductInformation,displayEmbededWallet:()=>displayEmbededWallet,sendInteraction:()=>sendInteraction,siweAuthenticate:()=>siweAuthenticate,watchWalletStatus:()=>watchWalletStatus});class Deferred{_promise;_resolve;_reject;constructor(){this._promise=new Promise((e,r)=>{this._resolve=e,this._reject=r})}get promise(){return this._promise}resolve=e=>{this._resolve?.(e)};reject=e=>{this._reject?.(e)}}function watchWalletStatus(e,r){if(!r)return e.request({method:"frak_listenToWalletStatus"}).then(e=>(savePotentialToken(e.interactionToken),e));let t=new Deferred,n=!1;return e.listenerRequest({method:"frak_listenToWalletStatus"},e=>{r(e),savePotentialToken(e.interactionToken),n||(t.resolve(e),n=!0)}).then(()=>t.promise)}function savePotentialToken(e){"undefined"!=typeof window&&(e?window.sessionStorage.setItem("frak-wallet-interaction-token",e):window.sessionStorage.removeItem("frak.interaction-token"))}let external_viem_namespaceObject=require("viem");function computeProductId({domain:e}){let r=e??window.location.host;return(0,external_viem_namespaceObject.keccak256)((0,external_viem_namespaceObject.toHex)(r))}async function sendInteraction(e,{productId:r,interaction:t,validation:n}){let a=r??computeProductId(e.config);return await e.request({method:"frak_sendInteraction",params:[a,t,n]})}async function displayModal(e,{steps:r,metadata:t}){return await e.request({method:"frak_displayModal",params:[r,{...t,...e.config.metadata}]})}async function displayEmbededWallet(e,r){await e.request({method:"frak_displayEmbededWallet",params:[r,e.config.metadata]})}async function openSso(e,r){let{metadata:t}=e.config;await e.request({method:"frak_sso",params:[r,t.name,t.css]})}async function getProductInformation(e){return await e.request({method:"frak_getProductInformation"})}async function trackPurchaseStatus(e){if("undefined"==typeof window){console.warn("[Frak] No window found, can't track purchase");return}let r=window.sessionStorage.getItem("frak-wallet-interaction-token");if(!r){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":r},body:JSON.stringify(e)})}let siwe_namespaceObject=require("viem/siwe");async function siweAuthenticate(e,{siwe:r,metadata:t}){let n=e.config?.domain??window.location.host,a=r?.statement??`I confirm that I want to use my Frak wallet on: ${e.config.metadata.name}`,o={...r,statement:a,nonce:r?.nonce??(0,siwe_namespaceObject.generateSiweNonce)(),uri:r?.uri??`https://${n}`,version:r?.version??"1",domain:n};return(await displayModal(e,{metadata:t,steps:{login:{},siweAuthenticate:{siwe:o}}})).siweAuthenticate}async function sendTransaction(e,{tx:r,metadata:t}){return(await displayModal(e,{metadata:t,steps:{login:{},sendTransaction:{tx:r}}})).sendTransaction}function modalBuilder(e,{metadata:r,login:t,openSession:n}){return modalStepsBuilder(e,{steps:{login:t??{},openSession:n??{}},metadata:r})}function modalStepsBuilder(e,r){async function t(t){return t&&(r.metadata=t(r.metadata??{})),await displayModal(e,r)}return{params:r,sendTx:function(t){return modalStepsBuilder(e,{...r,steps:{...r.steps,sendTransaction:t}})},reward:function(t){return modalStepsBuilder(e,{...r,steps:{...r.steps,final:{...t,action:{key:"reward"}}}})},sharing:function(t,n){return modalStepsBuilder(e,{...r,steps:{...r.steps,final:{...n,action:{key:"sharing",options:t}}}})},display:t}}let contextKey="fCtx";function base64url_encode(e){return btoa(Array.from(e,e=>String.fromCharCode(e)).join("")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function base64url_decode(e){let r=e.length%4;return Uint8Array.from(atob(e.replace(/-/g,"+").replace(/_/g,"/").padEnd(e.length+(0===r?0:4-r),"=")),e=>e.charCodeAt(0))}function compress(e){if(e?.r)try{let r=(0,external_viem_namespaceObject.hexToBytes)(e.r);return base64url_encode(r)}catch(r){console.error("Error compressing Frak context",{e:r,context:e})}}function decompress(e){if(e&&0!==e.length)try{let r=base64url_decode(e);return{r:(0,external_viem_namespaceObject.bytesToHex)(r,{size:20})}}catch(r){console.error("Error decompressing Frak context",{e:r,context:e})}}function parse({url:e}){if(!e)return null;let r=new URL(e).searchParams.get(contextKey);return r?decompress(r):null}function update({url:e,context:r}){if(!e)return null;let t=parse({url:e}),n=t?{...t,...r}:r;if(!n.r)return null;let a=compress(n);if(!a)return null;let o=new URL(e);return o.searchParams.set(contextKey,a),o.toString()}function remove(e){let r=new URL(e);return r.searchParams.delete(contextKey),r.toString()}function replaceUrl({url:e,context:r}){let t;if(!window.location?.href||"undefined"==typeof window){console.error("No window found, can't update context");return}let n=e??window.location.href;(t=null!==r?update({url:n,context:r}):remove(n))&&window.history.replaceState(null,"",t.toString())}let FrakContextManager={compress,decompress,parse,update,remove,replaceUrl},interactionTypes={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"},retail:{customerMeeting:"0x74489004"}},productTypes={dapp:1,press:2,webshop:3,retail:4,referral:30,purchase:31},productTypesMask=Object.entries(productTypes).reduce((e,[r,t])=>(e[r]=BigInt(1)<<BigInt(t),e),{}),ReferralInteractionEncoder={createLink:()=>({handlerTypeDenominator:(0,external_viem_namespaceObject.toHex)(productTypes.referral),interactionData:interactionTypes.referral.createLink}),referred({referrer:e}){let r=(0,external_viem_namespaceObject.concatHex)([interactionTypes.referral.referred,(0,external_viem_namespaceObject.pad)(e,{size:32})]);return{handlerTypeDenominator:(0,external_viem_namespaceObject.toHex)(productTypes.referral),interactionData:r}}};class FrakRpcError extends Error{code;data;constructor(e,r,t){super(r),this.code=e,this.data=t}}class MethodNotFoundError extends FrakRpcError{constructor(e,r){super(RpcErrorCodes.methodNotFound,e,{method:r})}}class InternalError extends FrakRpcError{constructor(e){super(RpcErrorCodes.internalError,e)}}class ClientNotFound extends FrakRpcError{constructor(){super(RpcErrorCodes.clientNotConnected,"Client not found")}}let RpcErrorCodes={parseError:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internalError:-32603,serverError:-32e3,clientNotConnected:-32001,configError:-32002,corruptedResponse:-32003,clientAborted:-32004,walletNotConnected:-32005,serverErrorForInteractionDelegation:-32006};async function processReferral(e,{walletStatus:r,frakContext:t,modalConfig:n,productId:a,options:o}){let s=!1;async function c(){if(!s)return s=!0,ensureWalletConnected(e,{modalConfig:n,walletStatus:r})}async function i(r){let t=ReferralInteractionEncoder.referred({referrer:r});await sendInteraction(e,{productId:a,interaction:t})}try{let{status:e,currentWallet:n}=await processReferralLogic({initialWalletStatus:r,getFreshWalletStatus:c,pushReferralInteraction:i,frakContext:t});return FrakContextManager.replaceUrl({url:window.location?.href,context:o?.alwaysAppendUrl?{r:n}:null}),e}catch(e){return console.log("Error processing referral",{error:e}),FrakContextManager.replaceUrl({url:window.location?.href,context:o?.alwaysAppendUrl?{r:r?.wallet}:null}),mapErrorToState(e)}}async function processReferralLogic({initialWalletStatus:e,getFreshWalletStatus:r,pushReferralInteraction:t,frakContext:n}){let a=e?.wallet;return n?.r?(a||(a=await r()),a&&(0,external_viem_namespaceObject.isAddressEqual)(n.r,a))?{status:"self-referral",currentWallet:a}:(e?.interactionSession||(a=await r()),await t(n.r),{status:"success",currentWallet:a}):{status:"no-referrer",currentWallet:a}}async function ensureWalletConnected(e,{modalConfig:r,walletStatus:t}){if(!t?.interactionSession){if(!r)return;let t=await displayModal(e,r);return t?.login?.wallet??void 0}return t.wallet??void 0}function mapErrorToState(e){if(e instanceof FrakRpcError)switch(e.code){case RpcErrorCodes.walletNotConnected:return"no-wallet";case RpcErrorCodes.serverErrorForInteractionDelegation:return"no-session"}return"error"}async function referralInteraction(e,{productId:r,modalConfig:t,options:n}={}){let a=FrakContextManager.parse({url:window.location.href}),o=await watchWalletStatus(e);try{return await processReferral(e,{walletStatus:o,frakContext:a,modalConfig:t,productId:r,options:n})}catch(e){console.warn("Error processing referral",{error:e})}}var __webpack_export_target__=exports;for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__]=__webpack_exports__[__webpack_i__];__webpack_exports__.__esModule&&Object.defineProperty(__webpack_export_target__,"__esModule",{value:!0});
|