From 94714bc7cc799490f9267775bfaad18e9b601956 Mon Sep 17 00:00:00 2001 From: Xabi Losada Date: Wed, 20 Sep 2023 18:05:26 +0200 Subject: [PATCH] feat: introduce globalState hook --- dist/index.js | 2 +- src/index.js | 3 ++- src/lib/components/Widget.js | 4 ++++ src/lib/components/globalState.js | 3 +++ src/lib/vm/vm.js | 26 +++++++++++++++++++++++++- 5 files changed, 35 insertions(+), 3 deletions(-) create mode 100644 src/lib/components/globalState.js diff --git a/dist/index.js b/dist/index.js index a02adc06..5330a66e 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,2 +1,2 @@ /*! For license information please see index.js.LICENSE.txt */ -!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("react"));else if("function"==typeof define&&define.amd)define(["react"],e);else{var r="object"==typeof exports?e(require("react")):e(t.React);for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(global,(t=>(()=>{"use strict";var e={764:(t,e,r)=>{const n=r(238),o=r(665),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.lW=u,e.h2=50;const a=2147483647;function c(t){if(t>a)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,u.prototype),e}function u(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return f(t)}return s(t,e,r)}function s(t,e,r){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!u.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const r=0|y(t,e);let n=c(r);const o=n.write(t,e);return o!==r&&(n=n.slice(0,o)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(H(t,Uint8Array)){const e=new Uint8Array(t);return p(e.buffer,e.byteOffset,e.byteLength)}return h(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(H(t,ArrayBuffer)||t&&H(t.buffer,ArrayBuffer))return p(t,e,r);if("undefined"!=typeof SharedArrayBuffer&&(H(t,SharedArrayBuffer)||t&&H(t.buffer,SharedArrayBuffer)))return p(t,e,r);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return u.from(n,e,r);const o=function(t){if(u.isBuffer(t)){const e=0|d(t.length),r=c(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||V(t.length)?c(0):h(t):"Buffer"===t.type&&Array.isArray(t.data)?h(t.data):void 0}(t);if(o)return o;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function l(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function f(t){return l(t),c(t<0?0:0|d(t))}function h(t){const e=t.length<0?0:0|d(t.length),r=c(e);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|t}function y(t,e){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||H(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let o=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return W(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return K(t).length;default:if(o)return n?-1:W(t).length;e=(""+e).toLowerCase(),o=!0}}function v(t,e,r){let n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return A(this,e,r);case"utf8":case"utf-8":return j(this,e,r);case"ascii":return L(this,e,r);case"latin1":case"binary":return C(this,e,r);case"base64":return O(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,e,r){const n=t[e];t[e]=t[r],t[r]=n}function g(t,e,r,n,o){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),V(r=+r)&&(r=o?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(o)return-1;r=t.length-1}else if(r<0){if(!o)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:b(t,e,r,n,o);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):b(t,[e],r,n,o);throw new TypeError("val must be string, number or Buffer")}function b(t,e,r,n,o){let i,a=1,c=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;a=2,c/=2,u/=2,r/=2}function s(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(o){let n=-1;for(i=r;ic&&(r=c-u),i=r;i>=0;i--){let r=!0;for(let n=0;no&&(n=o):n=o;const i=e.length;let a;for(n>i/2&&(n=i/2),a=0;a>8,o=r%256,i.push(o),i.push(n);return i}(e,t.length-r),t,r,n)}function O(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function j(t,e,r){r=Math.min(t.length,r);const n=[];let o=e;for(;o239?4:e>223?3:e>191?2:1;if(o+a<=r){let r,n,c,u;switch(a){case 1:e<128&&(i=e);break;case 2:r=t[o+1],128==(192&r)&&(u=(31&e)<<6|63&r,u>127&&(i=u));break;case 3:r=t[o+1],n=t[o+2],128==(192&r)&&128==(192&n)&&(u=(15&e)<<12|(63&r)<<6|63&n,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:r=t[o+1],n=t[o+2],c=t[o+3],128==(192&r)&&128==(192&n)&&128==(192&c)&&(u=(15&e)<<18|(63&r)<<12|(63&n)<<6|63&c,u>65535&&u<1114112&&(i=u))}}null===i?(i=65533,a=1):i>65535&&(i-=65536,n.push(i>>>10&1023|55296),i=56320|1023&i),n.push(i),o+=a}return function(t){const e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);let r="",n=0;for(;nn.length?(u.isBuffer(e)||(e=u.from(e)),e.copy(n,o)):Uint8Array.prototype.set.call(n,e,o);else{if(!u.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(n,o)}o+=e.length}return n},u.byteLength=y,u.prototype._isBuffer=!0,u.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;er&&(t+=" ... "),""},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,e,r,n,o){if(H(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),e<0||r>t.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&e>=r)return 0;if(n>=o)return-1;if(e>=r)return 1;if(this===t)return 0;let i=(o>>>=0)-(n>>>=0),a=(r>>>=0)-(e>>>=0);const c=Math.min(i,a),s=this.slice(n,o),l=t.slice(e,r);for(let t=0;t>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const o=this.length-e;if((void 0===r||r>o)&&(r=o),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let i=!1;for(;;)switch(n){case"hex":return w(this,t,e,r);case"utf8":case"utf-8":return E(this,t,e,r);case"ascii":case"latin1":case"binary":return x(this,t,e,r);case"base64":return S(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const I=4096;function L(t,e,r){let n="";r=Math.min(t.length,r);for(let o=e;on)&&(r=n);let o="";for(let n=e;nr)throw new RangeError("Trying to access beyond buffer length")}function T(t,e,r,n,o,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||et.length)throw new RangeError("Index out of range")}function _(t,e,r,n,o){D(e,n,o,t,r,7);let i=Number(e&BigInt(4294967295));t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,r}function B(t,e,r,n,o){D(e,n,o,t,r,7);let i=Number(e&BigInt(4294967295));t[r+7]=i,i>>=8,t[r+6]=i,i>>=8,t[r+5]=i,i>>=8,t[r+4]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=a,a>>=8,t[r+2]=a,a>>=8,t[r+1]=a,a>>=8,t[r]=a,r+8}function U(t,e,r,n,o,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function R(t,e,r,n,i){return e=+e,r>>>=0,i||U(t,0,r,4),o.write(t,e,r,n,23,4),r+4}function M(t,e,r,n,i){return e=+e,r>>>=0,i||U(t,0,r,8),o.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){const r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t],o=1,i=0;for(;++i>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t+--e],o=1;for(;e>0&&(o*=256);)n+=this[t+--e]*o;return n},u.prototype.readUint8=u.prototype.readUInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),this[t]},u.prototype.readUint16LE=u.prototype.readUInt16LE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUint16BE=u.prototype.readUInt16BE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUint32LE=u.prototype.readUInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUint32BE=u.prototype.readUInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readBigUInt64LE=Z((function(t){J(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,o=this[++t]+256*this[++t]+65536*this[++t]+r*2**24;return BigInt(n)+(BigInt(o)<>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=e*2**24+65536*this[++t]+256*this[++t]+this[++t],o=this[++t]*2**24+65536*this[++t]+256*this[++t]+r;return(BigInt(n)<>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t],o=1,i=0;for(;++i=o&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);let n=e,o=1,i=this[t+--n];for(;n>0&&(o*=256);)i+=this[t+--n]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){t>>>=0,e||N(t,2,this.length);const r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){t>>>=0,e||N(t,2,this.length);const r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readBigInt64LE=Z((function(t){J(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=this[t+4]+256*this[t+5]+65536*this[t+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(n)<>>=0,e||N(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return t>>>=0,e||N(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return t>>>=0,e||N(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return t>>>=0,e||N(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUintLE=u.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||T(this,t,e,r,Math.pow(2,8*r)-1,0);let o=1,i=0;for(this[e]=255&t;++i>>=0,r>>>=0,n||T(this,t,e,r,Math.pow(2,8*r)-1,0);let o=r-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+r},u.prototype.writeUint8=u.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,1,255,0),this[e]=255&t,e+1},u.prototype.writeUint16LE=u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeUint16BE=u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeUint32LE=u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},u.prototype.writeUint32BE=u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigUInt64LE=Z((function(t,e=0){return _(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeBigUInt64BE=Z((function(t,e=0){return B(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){const n=Math.pow(2,8*r-1);T(this,t,e,r,n-1,-n)}let o=0,i=1,a=0;for(this[e]=255&t;++o>0)-a&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){const n=Math.pow(2,8*r-1);T(this,t,e,r,n-1,-n)}let o=r-1,i=1,a=0;for(this[e+o]=255&t;--o>=0&&(i*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigInt64LE=Z((function(t,e=0){return _(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeBigInt64BE=Z((function(t,e=0){return B(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeFloatLE=function(t,e,r){return R(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return R(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return M(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return M(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(!u.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function D(t,e,r,n,o,i){if(t>r||t3?0===e||e===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(i+1)}${n}`:`>= -(2${n} ** ${8*(i+1)-1}${n}) and < 2 ** ${8*(i+1)-1}${n}`:`>= ${e}${n} and <= ${r}${n}`,new F.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,r){J(e,"offset"),void 0!==t[e]&&void 0!==t[e+r]||z(e,t.length-(r+1))}(n,o,i)}function J(t,e){if("number"!=typeof t)throw new F.ERR_INVALID_ARG_TYPE(e,"number",t)}function z(t,e,r){if(Math.floor(t)!==t)throw J(t,r),new F.ERR_OUT_OF_RANGE(r||"offset","an integer",t);if(e<0)throw new F.ERR_BUFFER_OUT_OF_BOUNDS;throw new F.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${e}`,t)}q("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),q("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),q("ERR_OUT_OF_RANGE",(function(t,e,r){let n=`The value of "${t}" is out of range.`,o=r;return Number.isInteger(r)&&Math.abs(r)>2**32?o=G(String(r)):"bigint"==typeof r&&(o=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(o=G(o)),o+="n"),n+=` It must be ${e}. Received ${o}`,n}),RangeError);const $=/[^+/0-9A-Za-z-_]/g;function W(t,e){let r;e=e||1/0;const n=t.length;let o=null;const i=[];for(let a=0;a55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function K(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace($,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function X(t,e,r,n){let o;for(o=0;o=e.length||o>=t.length);++o)e[o+r]=t[o];return o}function H(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}const Y=function(){const t="0123456789abcdef",e=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let o=0;o<16;++o)e[n+o]=t[r]+t[o]}return e}();function Z(t){return"undefined"==typeof BigInt?Q:t}function Q(){throw new Error("BigInt not supported")}},238:t=>{t.exports=require("base64-js")},665:t=>{t.exports=require("ieee754")},359:e=>{e.exports=t}},r={};function n(t){var o=r[t];if(void 0!==o)return o.exports;var i=r[t]={exports:{}};return e[t](i,i.exports,n),i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var o={};return(()=>{n.r(o),n.d(o,{CommitButton:()=>Nr,EthersProviderContext:()=>nn,Widget:()=>_o,useAccount:()=>ae,useAccountId:()=>ce,useCache:()=>wr,useInitNear:()=>Rt,useNear:()=>qt,utils:()=>t});var t={};n.r(t),n.d(t,{ErrorFallback:()=>C,Loading:()=>L,MaxGasPerTransaction:()=>E,OneNear:()=>j,ReactKey:()=>it,StorageCostPerByte:()=>x,TGas:()=>w,availableNearBalance:()=>J,bigMax:()=>R,bigMin:()=>U,bigToString:()=>M,computeWritePermission:()=>nt,convertToStringLeaves:()=>Y,dateToString:()=>G,deepCopy:()=>ct,deepEqual:()=>ut,deepFreeze:()=>ot,displayGas:()=>q,displayNear:()=>F,displayTime:()=>D,estimateDataSize:()=>K,extractKeys:()=>X,indexMatch:()=>et,ipfsUpload:()=>$,ipfsUrl:()=>W,isArray:()=>P,isFunction:()=>_,isObject:()=>N,isReactObject:()=>at,isString:()=>T,isValidAccountId:()=>A,isoDate:()=>z,keysToCamel:()=>B,patternMatch:()=>tt,removeDuplicates:()=>H});var e=n(359),r=n.n(e);const i=require("react-singleton-hook"),a=require("near-api-js"),c=require("big.js");var u=n.n(c);const s=require("deep-equal");var l=n.n(s);const f=require("ethers");var h=n(764).lW;function p(t){return function(t){if(Array.isArray(t))return m(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||v(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}function y(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||v(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(t,e){if(t){if("string"==typeof t)return m(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(t,e):void 0}}function m(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),j(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;j(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:L(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function b(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}var w=u()(10).pow(12),E=w.mul(250),x=u()(10).pow(19),S=2,k=64,O=/^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/,j=u()(10).pow(24),I=j.div(2),L=r().createElement("span",{className:"spinner-grow spinner-grow-sm me-1",role:"status","aria-hidden":"true"}),C=function(t){var e=t.error;return r().createElement("div",{role:"alert"},r().createElement("p",null,"Something went wrong:"),r().createElement("pre",null,e.message))};function A(t){return t&&t.length>=S&&t.length<=k&&t.match(O)}var P=function(t){return Array.isArray(t)},N=function(t){return t===Object(t)&&!P(t)&&"function"!=typeof t},T=function(t){return"string"==typeof t},_=function(t){return"function"==typeof t},B=function t(e){if(N(e)){var r={};return Object.keys(e).forEach((function(n){var o;r[(o=n,o.replace(/([-_][a-z])/gi,(function(t){return t.toUpperCase().replace("-","").replace("_","")})))]=t(e[n])})),r}return P(e)?e.map((function(e){return t(e)})):e},U=function(t,e){return t&&e?t.lt(e)?t:e:t||e},R=function(t,e){return t&&e?t.gt(e)?t:e:t||e},M=function(t,e,r){if(null===t)return"???";var n=t.toFixed(),o=n.indexOf(".");if(e=e||6,r=r||7,o>0){var i=Math.min(e,Math.max(r-o,0));i>0&&(i+=1),o+i=0;a-=3)n=n.slice(0,a+1)+","+n.slice(a+1);return"0.000000"===n&&6===e&&7===r?"<0.000001":n},F=function(t){return t?t.eq(1)?r().createElement(r().Fragment,null,"1 ",r().createElement("span",{className:"text-secondary"},"yoctoNEAR")):r().createElement(r().Fragment,null,M(t.div(j))," ",r().createElement("span",{className:"text-secondary"},"NEAR")):"???"},q=function(t){return t?r().createElement(r().Fragment,null,M(t.div(w))," ",r().createElement("span",{className:"text-secondary"},"TGas")):"???"},G=function(t){return t.toLocaleString("en-us",{day:"numeric",month:"short",year:"numeric"})},D=function(t){return t.toLocaleString()},J=function(t){if(t&&!t.loading&&t.state){var e=u()(t.state.amount).sub(u()(t.state.storage_usage).mul(u()(x)));if(e.gt(I))return e.sub(I)}return u()(0)},z=function(t){return t?new Date(t).toISOString().substring(0,10):""},$=function(){var t,e=(t=g().mark((function t(e){var r;return g().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,fetch("https://ipfs.near.social/add",{method:"POST",headers:{Accept:"application/json"},body:e});case 2:return r=t.sent,t.next=5,r.json();case 5:return t.abrupt("return",t.sent.cid);case 6:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){b(i,n,o,a,c,"next",t)}function c(t){b(i,n,o,a,c,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}(),W=function(t){return"https://ipfs.near.social/ipfs/".concat(t)},K=function t(e,r){return N(e)?Object.entries(e).reduce((function(e,n){var o=y(n,2),i=o[0],a=o[1],c=N(r)?r[i]:void 0;return e+(void 0!==c?t(a,c):2*i.length+t(a,void 0)+140)}),N(r)?0:98):((null==e?void 0:e.length)||8)-(T(r)?r.length:0)},X=function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object.entries(e).map((function(e){var n=y(e,2),o=n[0],i=n[1];return N(i)?t(i,"".concat(r).concat(o,"/")):"".concat(r).concat(o)})).flat()},H=function t(e,r){var n=Object.entries(e).reduce((function(e,n){var o=y(n,2),i=o[0],a=o[1],c=N(r)?r[i]:void 0;if(N(a)){var u=N(c)?t(a,c):a;void 0!==u&&(e[i]=u)}else a!==c&&(e[i]=a);return e}),{});return Object.keys(n).length?n:void 0},V=function(t){return T(t)||null===t?t:JSON.stringify(t)},Y=function t(e){return N(e)?Object.entries(e).reduce((function(e,r){var n=y(r,2),o=n[0],i=n[1];return e[V(o)]=t(i),e}),{}):V(e)},Z=function t(e,r){var n=r[0],o="**"===n;return o?1===r.length:("*"===n||o?Object.values(e):n in e?[e[n]]:[]).some((function(e){return N(e)?r.length>1?t(e,r.slice(1)):void 0!==e[""]:1===r.length}))},Q=function t(e,r){var n=r[0];return("*"===n?Object.values(e):n in e?[e[n]]:[]).some((function(e){return 1===r.length||N(e)&&t(e,r.slice(1))}))},tt=function(t,e,r){var n=e.split("/");return"get"===t?Z(r,n):"keys"===t&&Q(r,n)},et=function(t,e,r){return Object.values(r).some((function(r){var n,o=null==r||null===(n=r.index)||void 0===n?void 0:n[t];try{return o&&JSON.stringify(JSON.parse(o).key)===JSON.stringify(e)}catch(t){return!1}}))},rt={graph:!0,post:!0,index:!0,settings:!0},nt=function(t,e){var r=N(t)?JSON.parse(JSON.stringify(t)):{};return N(e)&&Object.entries(e).forEach((function(t){var e=y(t,2),n=e[0],o=e[1];if(n in rt)if(N(o)){var i=r[n]=r[n]||{};Object.keys(o).forEach((function(t){i[t]=!0}))}else r[n]=!0;else r[n]=!0})),r},ot=function t(e){return Object.freeze(e),Object.keys(e).forEach((function(r){(function(t,e){return!!Object.getOwnPropertyDescriptor(t,e).get})(e,r)||"object"!==d(e[r])||Object.isFrozen(e[r])||t(e[r])})),e},it="$$typeof",at=function(t){return null!==t&&"object"===d(t)&&!!t[it]},ct=function t(e){return Array.isArray(e)?e.map((function(e){return t(e)})):e instanceof Map?new Map(p(e.entries()).map((function(e){var r=y(e,2),n=r[0],o=r[1];return[t(n),t(o)]}))):e instanceof Set?new Set(p(e).map((function(e){return t(e)}))):h.isBuffer(e)?h.from(e):e instanceof URL?new URL(e):e instanceof File?new File([e],e.name,{type:e.type}):e instanceof Blob?new Blob([e],{type:e.type}):e instanceof Uint8Array||e instanceof ArrayBuffer?e.slice(0):e instanceof f.ethers.BigNumber?e:e instanceof Date?new Date(e):e instanceof WebSocket?e:N(e)?at(e)?e:Object.fromEntries(Object.entries(e).map((function(e){var r=y(e,2),n=r[0],o=r[1];return[n,t(o)]}))):void 0===e||"function"==typeof e?e:JSON.parse(JSON.stringify(e))},ut=l(),st=n(764).lW;function lt(t){return lt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lt(t)}function ft(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function ht(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function mt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function gt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){mt(i,n,o,a,c,"next",t)}function c(t){mt(i,n,o,a,c,"throw",t)}a(void 0)}))}}var bt=function(t,e,r,n){return{type:"FunctionCall",params:{methodName:t,args:e,gas:r,deposit:n}}},wt={networkId:"testnet",nodeUrl:"https://rpc.testnet.near.org",archivalNodeUrl:"https://rpc.testnet.internal.near.org",contractName:"v1.social08.testnet",walletUrl:"https://wallet.testnet.near.org",wrapNearAccountId:"wrap.testnet",apiUrl:"https://discovery-api.stage.testnet.near.org",enableWeb4FastRpc:!1},Et={networkId:"mainnet",nodeUrl:"https://rpc.mainnet.near.org",archivalNodeUrl:"https://rpc.mainnet.internal.near.org",contractName:"social.near",walletUrl:"https://wallet.near.org",wrapNearAccountId:"wrap.near",apiUrl:"https://api.near.social",enableWeb4FastRpc:!1},xt={get:!0,keys:!0},St=function(){var t=gt(vt().mark((function t(e,r,n,o,i){return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.apiUrl&&r in xt){t.next=2;break}return t.abrupt("return",i());case 2:return n=n||{},o&&(n.blockHeight=o),t.prev=4,t.next=7,fetch("".concat(e.apiUrl,"/").concat(r),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});case 7:return t.next=9,t.sent.json();case 9:return t.abrupt("return",t.sent);case 12:return t.prev=12,t.t0=t.catch(4),console.log("API call failed",r,n),console.error(t.t0),t.abrupt("return",i());case 17:case"end":return t.stop()}}),t,null,[[4,12]])})));return function(e,r,n,o,i){return t.apply(this,arguments)}}();function kt(t,e,r,n,o,i){return Ot.apply(this,arguments)}function Ot(){return(Ot=gt(vt().mark((function t(e,r,n,o,i,a){var c;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.selector;case 3:return t.next=5,t.sent.wallet();case 5:return c=t.sent,t.next=8,c.signAndSendTransaction({receiverId:r,actions:[bt(n,o,null!=i?i:w.mul(30).toFixed(0),null!=a?a:"0")]});case 8:return t.abrupt("return",t.sent);case 11:throw t.prev=11,t.t0=t.catch(0),t.t0;case 14:case"end":return t.stop()}}),t,null,[[0,11]])})))).apply(this,arguments)}function jt(t,e){return It.apply(this,arguments)}function It(){return(It=gt(vt().mark((function t(e,r){var n;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=new a.Account(e.nearConnection.connection,r),t.next=3,n.state();case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function Lt(t,e){return Ct.apply(this,arguments)}function Ct(){return(Ct=gt(vt().mark((function t(e,r){var n,o,i;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.selector;case 3:return t.next=5,t.sent.wallet();case 5:return n=t.sent,o=[],i=u()(0),r.forEach((function(t){var e,r=t.contractName,n=t.methodName,a=t.args,c=t.gas,u=t.deposit,s=i.add(c),l=bt(n,a,c.toFixed(0),u.toFixed(0));(null===(e=o[o.length-1])||void 0===e?void 0:e.receiverId)!==r||s.gt(E)?(o.push({receiverId:r,actions:[]}),i=c):i=s,o[o.length-1].actions.push(l)})),t.next=11,n.signAndSendTransactions({transactions:o});case 11:return t.abrupt("return",t.sent);case 14:throw t.prev=14,t.t0=t.catch(0),t.t0;case 17:case"end":return t.stop()}}),t,null,[[0,14]])})))).apply(this,arguments)}function At(t,e,r){var n=r.viewMethods,o=void 0===n?[]:n,i=r.changeMethods,a=void 0===i?[]:i,c={near:t,contractId:e};return o.forEach((function(r){c[r]=function(n){return t.viewCall(e,r,n)}})),a.forEach((function(r){c[r]=function(n,o,i){return t.functionCall(e,r,n,o,i)}})),c}function Pt(t,e,r,n,o,i){return Nt.apply(this,arguments)}function Nt(){return(Nt=gt(vt().mark((function t(e,r,n,o,i,a){var c;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=i||{},t.next=3,e.query({request_type:"call_function",account_id:n,method_name:o,args_base64:st.from(JSON.stringify(i)).toString("base64"),block_id:r,finality:a});case 3:return c=t.sent,t.abrupt("return",c.result&&c.result.length>0&&JSON.parse(st.from(c.result).toString()));case 5:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function Tt(t,e,r,n){return _t.apply(this,arguments)}function _t(){return(_t=gt(vt().mark((function t(e,r,n,o){var i;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=n||{},i=new URL("https://rpc.web4.near.page/account/".concat(e,"/view/").concat(r)),Object.entries(n).forEach((function(t){var e=dt(t,2),r=e[0],n=e[1];void 0!==n&&i.searchParams.append("".concat(r,".json"),JSON.stringify(n))})),t.prev=3,t.next=6,fetch(i.toString());case 6:return t.next=8,t.sent.json();case 8:return t.abrupt("return",t.sent);case 11:return t.prev=11,t.t0=t.catch(3),console.log("Web4 view call failed",i.toString()),console.error(t.t0),t.abrupt("return",o());case 16:case"end":return t.stop()}}),t,null,[[3,11]])})))).apply(this,arguments)}function Bt(t){return Ut.apply(this,arguments)}function Ut(){return(Ut=gt(vt().mark((function t(e){var r,n,o,i,c,u,s,l,f,h,p,d;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.networkId,o=e.config,i=e.keyStore,c=e.selector,u=e.walletConnectCallback,s=void 0===u?function(){}:u,l=e.customElements,f=void 0===l?{}:l,o||(o={},n||(o.networkId="mainnet")),n&&!o.networkId&&(o.networkId=n),"mainnet"===o.networkId?o=Object.assign({},Et,o):"testnet"===o.networkId&&(o=Object.assign({},wt,o)),o.walletConnectCallback=s,o.customElements=Object.assign({},o.customElements,f),i=null!==(r=i)&&void 0!==r?r:new a.keyStores.BrowserLocalStorageKeyStore,t.next=9,a.connect(Object.assign({deps:{keyStore:i}},o));case 9:return h=t.sent,(p={config:o,selector:c,keyStore:i,nearConnection:h}).nearArchivalConnection=a.Connection.fromConfig({networkId:o.networkId,provider:{type:"JsonRpcProvider",args:{url:o.archivalNodeUrl}},signer:{type:"InMemorySigner",keyStore:i}}),d=function(t){var e;return"optimistic"===t||"final"===t?{finality:t,blockId:void 0}:null!=t?{finality:void 0,blockId:parseInt(t)}:{finality:null!==(e=o.defaultFinality)&&void 0!==e?e:"optimistic",blockId:void 0}},p.viewCall=function(t,e,r,n){var i=d(n),a=i.blockId,c=i.finality,u=function(){return Pt(a?p.nearArchivalConnection.provider:p.nearConnection.connection.provider,null!=a?a:void 0,t,e,r,c)},s=function(){return"optimistic"===c&&o.enableWeb4FastRpc?Tt(t,e,r,u):u()};return t!==o.contractName||!a&&"final"!==c?s():St(o,e,r,a,s)},p.block=function(t){var e=d(t);return(e.blockId?p.nearArchivalConnection.provider:p.nearConnection.connection.provider).block(e)},p.functionCall=function(t,e,r,n,o){return kt(p,t,e,r,n,o)},p.sendTransactions=function(t){return Lt(p,t)},p.contract=At(p,o.contractName,{viewMethods:["storage_balance_of","get","get_num_accounts","get_accounts_paged","is_write_permission_granted","keys"],changeMethods:["set","grant_write_permission","storage_deposit","storage_withdraw"]}),p.accountState=function(t){return jt(p,t)},t.abrupt("return",p);case 20:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var Rt=(0,i.singletonHook)({},(function(){var t=dt((0,e.useState)(null),2),r=t[0],n=t[1];return{nearPromise:r,initNear:(0,e.useMemo)((function(){return function(t){var e,r=(null===(e=t.config)||void 0===e?void 0:e.networkId)||t.networkId,o="mainnet"!==r&&"testnet"!==r,i="testnet"===r?t:ht(ht({},t),{},{networkId:"testnet",config:void 0,keyStore:void 0,selector:void 0}),a="mainnet"===r?t:ht(ht({},t),{},{networkId:"mainnet",config:void 0,keyStore:void 0,selector:void 0});return n(Promise.all([i,a].concat(o?t:[]).map(Bt)).then((function(t){return t.map((function(t){return ht(ht({},t),{},{default:t.config.networkId===r})}))})))}}),[])}})),Mt=[],Ft=(0,i.singletonHook)(Mt,(function(){var t=dt((0,e.useState)(Mt),2),r=t[0],n=t[1],o=Rt().nearPromise;return(0,e.useEffect)((function(){o&&o.then(n)}),[o]),r?{default:r.find((function(t){return t.default})),testnet:r.find((function(t){return"testnet"===t.config.networkId})),mainnet:r.find((function(t){return"mainnet"===t.config.networkId}))}:r})),qt=function(t){return Ft()[t||"default"]||null};const Gt=require("local-storage");var Dt,Jt,zt,$t,Wt=n.n(Gt);function Kt(t){return Kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kt(t)}function Xt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ht(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ht(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ht(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function Yt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Zt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Yt(i,n,o,a,c,"next",t)}function c(t){Yt(i,n,o,a,c,"throw",t)}a(void 0)}))}}var Qt="near-social-vm:v01:",te=Qt+":accountId:",ee=Qt+":pretendAccountId:",re={loading:!0,signedAccountId:null!==(Dt=Wt().get(te))&&void 0!==Dt?Dt:void 0,pretendAccountId:null!==(Jt=Wt().get(ee))&&void 0!==Jt?Jt:void 0,accountId:null!==(zt=null!==($t=Wt().get(ee))&&void 0!==$t?$t:Wt().get(te))&&void 0!==zt?zt:void 0,state:null,near:null};function ne(t,e){return oe.apply(this,arguments)}function oe(){return(oe=Zt(Vt().mark((function t(e,r){var n,o,i,c,u,s,l,f,h,p,d;return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.connectedContractId=null===(n=r)||void 0===n||null===(o=n.contract)||void 0===o?void 0:o.contractId,!e.connectedContractId||e.connectedContractId===e.config.contractName){t.next=12;break}return t.next=4,e.selector;case 4:return l=t.sent,t.next=7,l.wallet();case 7:return f=t.sent,t.next=10,f.signOut();case 10:e.connectedContractId=null,r=l.store.getState();case 12:if(e.accountId=null!==(i=null===(c=r)||void 0===c||null===(u=c.accounts)||void 0===u||null===(s=u[0])||void 0===s?void 0:s.accountId)&&void 0!==i?i:null,e.accountId){e.publicKey=null;try{"here-wallet"===(null===(h=r)||void 0===h?void 0:h.selectedWalletId)&&(p=Wt().get("herewallet:keystore"),e.publicKey=a.KeyPair.fromString(p[e.config.networkId].accounts[e.accountId]).getPublicKey())}catch(t){console.error(t)}if(!e.publicKey)try{e.publicKey=a.KeyPair.fromString(Wt().get("meteor-wallet"===(null===(d=r)||void 0===d?void 0:d.selectedWalletId)?"_meteor_wallet".concat(e.accountId,":").concat(e.config.networkId):"near-api-js:keystore:".concat(e.accountId,":").concat(e.config.networkId))).getPublicKey()}catch(t){console.error(t)}}case 14:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var ie=function(){var t=Zt(Vt().mark((function t(e,r){var n,o,i,a,c,u,s,l;return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((o=e.accountId)?(Wt().set(te,o),e.config.walletConnectCallback(o)):Wt().remove(te),i=null!==(n=Wt().get(ee))&&void 0!==n?n:void 0,a={loading:!1,signedAccountId:o,pretendAccountId:i,accountId:null!=i?i:o,state:null,near:e,refresh:function(){var t=Zt(Vt().mark((function t(){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,ie(e,r);case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),startPretending:function(){var t=Zt(Vt().mark((function t(n){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n?Wt().set(ee,n):Wt().remove(ee),t.next=3,ie(e,r);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()},!o){t.next=13;break}return t.next=7,Promise.all([e.contract.storage_balance_of({account_id:o}),e.accountState(o)]);case 7:c=t.sent,u=Xt(c,2),s=u[0],l=u[1],a.storageBalance=s,a.state=l;case 13:r(a);case 14:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),ae=(0,i.singletonHook)(re,(function(){var t=Xt((0,e.useState)(re),2),r=t[0],n=t[1],o=qt();return(0,e.useEffect)((function(){o&&o.selector.then((function(t){t.store.observable.subscribe(function(){var t=Zt(Vt().mark((function t(e){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,ne(o,e);case 2:return t.prev=2,t.next=5,ie(o,n);case 5:t.next=10;break;case 7:t.prev=7,t.t0=t.catch(2),console.error(t.t0);case 10:case"end":return t.stop()}}),t,null,[[2,7]])})));return function(e){return t.apply(this,arguments)}}())}))}),[o]),r})),ce=function(t){var e=qt(),r=ae();if(e&&(!t||e.config.networkId===t))return r.accountId};const ue=require("react-bootstrap/Modal");var se=n.n(ue);const le=require("remark-gfm");var fe=n.n(le);const he=require("react-markdown");var pe=n.n(he);const de=require("react-syntax-highlighter"),ye=require("react-syntax-highlighter/dist/esm/styles/prism"),ve=require("mdast-util-find-and-replace");var me=/@((?:(?:[a-z\d]+[-_])*[a-z\d]+\.)*(?:[a-z\d]+[-_])*[a-z\d]+)/gi;function ge(){function t(t,e,r){if(/[\w`]/.test(r.input.charAt(r.index-1))||/[/\w`]/.test(r.input.charAt(r.index+t.length))||e.length<2||e.length>64)return!1;var n={type:"text",value:t};return{type:"strong",children:[n],data:{hProperties:{accountId:e}}}}return function(e){return(0,ve.findAndReplace)(e,me,t),e}}var be=/#(\w+)/gi;function we(){function t(t,e,r){if(/[\w`]/.test(r.input.charAt(r.index-1))||/[/\w`]/.test(r.input.charAt(r.index+t.length)))return!1;var n={type:"text",value:t};return{type:"strong",children:[n],data:{hProperties:{hashtag:e}}}}return function(e){return(0,ve.findAndReplace)(e,be,t),e}}var Ee=["node","children"],xe=["node"],Se=["node"],ke=["node"],Oe=["node"],je=["node","inline","className","children"];function Ie(){return Ie=Object.assign?Object.assign.bind():function(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var Ce=function(t){var e=t.onLinkClick,n=t.text,o=t.onMention,i=t.onHashtag,a=t.syntaxHighlighterProps;return r().createElement(pe(),{plugins:[],rehypePlugins:[],remarkPlugins:[fe(),ge,we],children:n,components:{strong:function(t){var e,n,a,c,u=t.node,s=t.children,l=Le(t,Ee);return o&&null!==(e=u.properties)&&void 0!==e&&e.accountId?o(null===(a=u.properties)||void 0===a?void 0:a.accountId):i&&null!==(n=u.properties)&&void 0!==n&&n.hashtag?i(null===(c=u.properties)||void 0===c?void 0:c.hashtag):r().createElement("strong",l,s)},a:function(t){t.node;var n=Le(t,xe);return e?r().createElement("a",Ie({onClick:e},n)):r().createElement("a",Ie({target:"_blank"},n))},img:function(t){t.node;var e=Le(t,Se);return r().createElement("img",Ie({className:"img-fluid"},e))},blockquote:function(t){t.node;var e=Le(t,ke);return r().createElement("blockquote",Ie({className:"blockquote"},e))},table:function(t){t.node;var e=Le(t,Oe);return r().createElement("table",Ie({className:"table table-striped"},e))},code:function(t){t.node;var e=t.inline,n=t.className,o=t.children,i=Le(t,je),c=/language-(\w+)/.exec(n||""),u=null!=a?a:{},s=u.wrapLines,l=u.lineProps,f=u.showLineNumbers,h=u.lineNumberStyle;return!e&&c?r().createElement(de.Prism,Ie({children:String(o).replace(/\n$/,""),style:ye.tomorrow,language:c[1],PreTag:"div",wrapLines:s,lineProps:l,showLineNumbers:f,lineNumberStyle:h},i)):r().createElement("code",Ie({className:n},i),o)}}})};const Ae=require("react-uuid");var Pe=n.n(Ae);function Ne(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function De(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Je(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){De(i,n,o,a,c,"next",t)}function c(t){De(i,n,o,a,c,"throw",t)}a(void 0)}))}}var ze=x.mul(2e3),$e=x.mul(500),We=x.mul(500),Ke=x.mul(500),Xe=function(){var t=Je(Ge().mark((function t(e,r){var n;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=X(r),t.next=3,e.contract.get({keys:n});case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),He=function(){var t=Je(Ge().mark((function t(e,r,n,o){var i,a,c,s,l,f,h,p,d,y;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.selector;case 2:if(i=e.accountId){t.next=6;break}return alert("You're not logged in. Sign in to commit data."),t.abrupt("return");case 6:return t.next=8,Promise.all([e.viewCall(e.config.contractName,"get_account_storage",{account_id:i}),i!==r?e.viewCall(e.config.contractName,"is_write_permission_granted",{predecessor_id:i,key:r}):Promise.resolve(!0)]);case 8:if(a=t.sent,w=2,c=function(t){if(Array.isArray(t))return t}(b=a)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(b,w)||function(t,e){if(t){if("string"==typeof t)return qe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qe(t,e):void 0}}(b,w)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),s=c[0],l=c[1],f=u()((null==s?void 0:s.available_bytes)||"0"),v={},m=r,g=Y(n),(m=function(t){var e=function(t,e){if("object"!==Fe(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Fe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Fe(e)?e:String(e)}(m))in v?Object.defineProperty(v,m,{value:g,enumerable:!0,configurable:!0,writable:!0}):v[m]=g,h=v,p={},o){t.next=20;break}return t.next=18,Xe(e,h);case 18:p=t.sent,h=H(h,p);case 20:return d=x.mul(K(h,p)).add(s?u()(0):$e).add(l?u()(0):Ke).add(We),y=R(d.sub(f.mul(x)),s?l?u()(0):u()(1):ze),t.abrupt("return",{originalData:n,accountId:r,accountStorage:s,availableBytes:f,currentData:p,data:h,expectedDataBalance:d,deposit:y,permissionGranted:l});case 23:case"end":return t.stop()}var v,m,g,b,w}),t)})));return function(e,r,n,o){return t.apply(this,arguments)}}(),Ve=function(){var t=Je(Ge().mark((function t(e,r,n){return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.log("Committing data",r),t.next=3,e.contract.set({data:r},w.mul(100).toFixed(0),n.toFixed(0));case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}(),Ye=function(){var t=Je(Ge().mark((function t(e,r,n){var o,i;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.selector;case 2:return t.next=4,t.sent.wallet();case 4:return o=t.sent,i=[],e.publicKey&&(i.push(bt("grant_write_permission",{public_key:e.publicKey.toString(),keys:[e.accountId]},w.mul(100).toFixed(0),n.gt(0)?n.toFixed(0):"1")),n=u()(0)),i.push(bt("set",{data:r},w.mul(100).toFixed(0),n.gt(0)?n.toFixed(0):"1")),t.next=10,o.signAndSendTransaction({receiverId:e.config.contractName,actions:i});case 10:return t.abrupt("return",t.sent);case 11:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}();const Ze=require("react-bootstrap"),Qe=require("idb");function tr(t){return tr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tr(t)}function er(t,e){if(t){if("string"==typeof t)return rr(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?rr(t,e):void 0}}function rr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function or(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function ir(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){or(i,n,o,a,c,"next",t)}function c(t){or(i,n,o,a,c,"throw",t)}a(void 0)}))}}function ar(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"cacheDb",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3e3;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.dbPromise=(0,Qe.openDB)(e,1,{upgrade:function(t){t.createObjectStore(dr)}}),this.cache={},this.finalSynchronizationDelayMs=r}var e,r,n,o,i;return e=t,r=[{key:"invalidateCallbacks",value:function(t,e){var r;if(null!==(r=t.invalidationCallbacks)&&void 0!==r&&r.length){var n=t.invalidationCallbacks;t.invalidationCallbacks=[],setTimeout((function(){n.forEach((function(t){try{t()}catch(t){}}))}),e?this.finalSynchronizationDelayMs+50:50)}}},{key:"innerGet",value:(i=ir(nr().mark((function t(e){return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.dbPromise;case 2:return t.abrupt("return",t.sent.get(dr,e));case 3:case"end":return t.stop()}}),t,this)}))),function(t){return i.apply(this,arguments)})},{key:"innerSet",value:(o=ir(nr().mark((function t(e,r){return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.dbPromise;case 2:return t.abrupt("return",t.sent.put(dr,r,e));case 3:case"end":return t.stop()}}),t,this)}))),function(t,e){return o.apply(this,arguments)})},{key:"cachedPromise",value:function(t,e,r,n){var o=this;t=JSON.stringify(t);var i=this.cache[t]||{status:lr,invalidationCallbacks:[],result:null,time:(new Date).getTime()};return this.cache[t]=i,N(r)||(r={onInvalidate:r}),r.onInvalidate&&i.invalidationCallbacks.push(r.onInvalidate),!i.subscription&&r.subscribe&&function t(){i.subscription=setTimeout((function(){document.hidden?t():(i.subscription=null,i.status=pr,o.invalidateCallbacks(i,!1))}),5e3)}(),i.status===fr||i.status===hr&&i.time+3e5>(new Date).getTime()||(i.status!==lr||null!=n&&n.ignoreCache||this.innerGet(t).then((function(t){(t||null!=n&&n.forceCachedValue)&&i.status===fr&&(i.result=t,i.time=(new Date).getTime(),o.invalidateCallbacks(i,!1))})),i.status=fr,e&&e().then((function(e){i.status=hr,i.time=(new Date).getTime(),JSON.stringify(e)!==JSON.stringify(i.result)&&(i.result=e,o.innerSet(t,e),o.invalidateCallbacks(i,!1))})).catch((function(e){console.error(e),i.status=hr;var r=void 0;i.time=(new Date).getTime(),JSON.stringify(r)!==JSON.stringify(i.result)&&(i.result=r,o.innerSet(t,r),o.invalidateCallbacks(i,!1))}))),i.result}},{key:"invalidateCache",value:function(t,e){var r=this,n=[],o="".concat(t.config.apiUrl,"/index");Object.keys(this.cache).forEach((function(r){var i;try{i=JSON.parse(r)}catch(t){return void console.error("Key deserialization failed",r)}if(i.action===cr&&i.contractId===t.config.contractName&&(!i.blockId||"optimistic"===i.blockId||"final"===i.blockId))try{var a;(null===(a=i.args)||void 0===a?void 0:a.keys).some((function(t){return tt(i.methodName,t,e)}))&&n.push([r,"final"===i.blockId])}catch(t){}if(i.action===ur&&i.url===o)try{var c,u=JSON.parse(null===(c=i.options)||void 0===c?void 0:c.body),s=u.action,l=u.key;s&&l&&et(s,l,e)&&n.push([r,!0])}catch(t){}})),console.log("Cache invalidation",n),n.forEach((function(t){var e,n,o=(n=2,function(t){if(Array.isArray(t))return t}(e=t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,n)||er(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],c=r.cache[i];c.status=pr,r.invalidateCallbacks(c,a)}))}},{key:"cachedBlock",value:function(t,e,r,n){return this.cachedPromise({action:"Block",blockId:e},(function(){return t.block(e)}),r,n)}},{key:"cachedViewCall",value:function(t,e,r,n,o,i,a){return this.cachedPromise({action:cr,contractId:e,methodName:r,args:n,blockId:o},(function(){return t.viewCall(e,r,n,o)}),i,a)}},{key:"asyncFetch",value:(n=ir(nr().mark((function t(e,r){var n,o,i,a,c,u,s,l,f,h,p;return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return u=null===(n=r)||void 0===n||null===(o=n.responseType)||void 0===o?void 0:o.toLowerCase(),r={method:null===(i=r)||void 0===i?void 0:i.method,headers:null===(a=r)||void 0===a?void 0:a.headers,body:null===(c=r)||void 0===c?void 0:c.body},t.prev=2,t.next=5,fetch(e,r);case 5:if(s=t.sent,l=s.status,f=s.ok,h=s.headers.get("content-type"),!f){t.next=15;break}return t.next=12,"arraybuffer"===u?s.arrayBuffer():"blob"===u?s.blob():"formdata"===u?s.formData():"json"===u?s.json():"text"===u?s.text():h&&-1!==h.indexOf("application/json")?s.json():s.text();case 12:t.t0=t.sent,t.next=16;break;case 15:t.t0=void 0;case 16:return p=t.t0,t.abrupt("return",{ok:f,status:l,contentType:h,body:p});case 20:return t.prev=20,t.t1=t.catch(2),t.abrupt("return",{ok:!1,error:t.t1.message});case 23:case"end":return t.stop()}}),t,null,[[2,20]])}))),function(t,e){return n.apply(this,arguments)})},{key:"cachedFetch",value:function(t,e,r,n){var o=this;return this.cachedPromise({action:ur,url:t,options:e},(function(){return o.asyncFetch(t,e)}),r,n)}},{key:"cachedCustomPromise",value:function(t,e,r,n){return this.cachedPromise({action:"CustomPromise",key:t},(function(){return e()}),r,n)}},{key:"socialGet",value:function(t,e,r,n,o,i,a){if(!t)return null;var c={keys:e=(e=Array.isArray(e)?e:[e]).map((function(t){return r?"".concat(t,"/**"):"".concat(t)})),options:o},u=this.cachedViewCall(t,t.config.contractName,"get",c,n,i,a);if(null===u)return null;if(1===e.length)for(var s=e[0].split("/"),l=0;l=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function Or(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function jr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ir(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ir(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ir(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,xr),p=jr((0,e.useState)(null),2),d=p[0],y=p[1];return r().createElement(r().Fragment,null,r().createElement("button",Sr({},h,{disabled:s||!o||!!d||!n,onClick:function(t){t.preventDefault(),y("function"==typeof o?o():o),a&&a()}}),!!d&&L,i),r().createElement(Pr,{show:!!d,widgetSrc:l,data:d,force:f,onHide:function(){return y(null)},onCancel:u,onCommit:c}))};const Tr=require("react-bootstrap-typeahead"),_r=require("styled-components");var Br=n.n(_r);const Ur=require("elliptic"),Rr=require("bn.js");var Mr=n.n(Rr);const Fr=require("tweetnacl"),qr=require("iframe-resizer-react");var Gr=n.n(qr);function Dr(){return Dr=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function Un(t,e,r){return Un=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}()?Reflect.construct.bind():function(t,e,r){var n=[null];n.push.apply(n,e);var o=new(Function.bind.apply(t,n));return r&&Rn(o,r.prototype),o},Un.apply(null,arguments)}function Rn(t,e){return Rn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Rn(t,e)}function Mn(){return Mn=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r0?(c[u]={uploading:!0,cid:null},n.vm.setReactState(n.vm.state.state),$(t[0]).then((function(t){if(n.vm.alive){var e=n.vm.vmStack.resolveMemberExpression(i.expression,{requireState:!0,left:!0});e.obj[e.key]={cid:t},n.vm.setReactState(n.vm.state.state)}}))):(c[u]=null,n.vm.setReactState(n.vm.state.state))}}}else{var h=n.resolveMemberExpression(i.expression,{requireState:!0,left:!0}),p=h.obj,d=h.key;s.value=(null==p?void 0:p[d])||"",s.onChange=function(t){t.preventDefault(),p[d]=t.target.value,n.vm.setReactState(n.vm.state.state)}}})),s.key=null!==(e=s.key)&&void 0!==e?e:"".concat(this.vm.widgetSrc,"-").concat(o,"-").concat(this.vm.gIndex),delete s.dangerouslySetInnerHTML;var h,p=(0,_r.isStyledComponent)(u)&&(null==u?void 0:u.target)||o;if(s.as&&!no[s.as]&&delete s.as,s.forwardedAs&&!no[s.forwardedAs]&&delete s.forwardedAs,"img"===p?s.alt=null!==(h=s.alt)&&void 0!==h?h:"not defined":"a"===p?Object.entries(s).forEach((function(t){var e=Jn(t,2),r=e[0],n=e[1];"href"===r.toLowerCase()&&(s[r]=(0,Ue.sanitizeUrl)(n))})):"Widget"===o?(s.depth=this.vm.depth+1,s.config=[s.config].concat(Fn(this.vm.widgetConfigs)).filter(Boolean)):"CommitButton"===o&&(s.networkId=this.vm.networkId),!1===i&&t.children.length)throw new Error("And element '"+o+"' contains children, but shouldn't");var d,y,v,m,g=t.children.map((function(t,e){return n.vm.gIndex=e,n.executeExpression(t)}));if(a)return a(Xn(Xn({},s),{},{children:g}));if(u)return(0,_r.isStyledComponent)(u)?r().createElement.apply(r(),[u,Xn({},s)].concat(Fn(g))):u(Xn({children:g},s));if("Widget"===o)return r().createElement(_o,s);if("CommitButton"===o)return r().createElement(Nr,Mn({},s,{widgetSrc:this.vm.widgetSrc}),g);if("InfiniteScroll"===o)return r().createElement(Me(),s,g);if("Tooltip"===o)return r().createElement(Ze.Tooltip,s,g);if("OverlayTrigger"===o)return r().createElement(Ze.OverlayTrigger,s,g.filter((function(t){return!T(t)||!!t.trim()}))[0]);if("Typeahead"===o)return r().createElement(Tr.Typeahead,s);if("Markdown"===o)return r().createElement(Ce,s);if("Fragment"===o)return r().createElement(r().Fragment,s,g);if("IpfsImageUpload"===o)return r().createElement("div",{className:"d-inline-block",key:s.key},(null===(d=l.img)||void 0===d?void 0:d.cid)&&r().createElement("div",{className:"d-inline-block me-2 overflow-hidden align-middle",style:{width:"2.5em",height:"2.5em"}},r().createElement("img",{className:"rounded w-100 h-100",style:{objectFit:"cover"},src:W(null===(y=l.img)||void 0===y?void 0:y.cid),alt:"upload preview"})),r().createElement(Be(),Mn({multiple:!1,accepts:["image/*"],minFileSize:1,clickable:!0},s),null!==(v=l.img)&&void 0!==v&&v.uploading?r().createElement(r().Fragment,null,L," Uploading"):null!==(m=l.img)&&void 0!==m&&m.cid?"Replace":"Upload an Image"));if("Files"===o)return r().createElement(Be(),s,g);if("iframe"===o)return r().createElement(Hr,s);if("Web3Connect"===o)return r().createElement(on,s);if(c){if(o.includes("Portal"))throw new Error("Radix's \"".concat(o,"\" component is not allowed. This portal element is an optional Radix feature and isn't necessary for most use cases."));var b=g;return Array.isArray(b)&&(1===(b=b.filter((function(t){return"string"!=typeof t||""!==t.trim()}))).length?b=b[0]:0===b.length&&(b=void 0)),r().createElement(c,s,b)}if(!0===i)return r().createElement.apply(r(),[o,Xn({},s)].concat(Fn(g)));if(!1===i)return r().createElement(o,Xn({},s));throw new Error("Unsupported element: "+o)}},{key:"resolveKey",value:function(t,e){var r=e||"Identifier"!==t.type&&"JSXIdentifier"!==t.type?this.executeExpression(t):t.name;return ho(r),r}},{key:"callFunction",value:function(t,e,r,n,o){var i=this,a=ao[t];if(!0===a||void 0===a){if("Social"===t&&"getr"===e||"socialGetr"===e){if(r.length<1)throw new Error("Missing argument 'keys' for Social.getr");return this.vm.cachedSocialGet(r[0],!0,r[1],r[2],r[3])}if("Social"===t&&"get"===e||"socialGet"===e){if(r.length<1)throw new Error("Missing argument 'keys' for Social.get");return this.vm.cachedSocialGet(r[0],!1,r[1],r[2],r[3])}if("Social"===t&&"keys"===e){var c;if(r.length<1)throw new Error("Missing argument 'keys' for Social.keys");return(c=this.vm).cachedSocialKeys.apply(c,Fn(r))}if("Social"===t&&"index"===e){var u;if(r.length<2)throw new Error("Missing argument 'action' and 'key` for Social.index");return(u=this.vm).cachedIndex.apply(u,Fn(r))}if("Social"===t&&"set"===e){if(r.length<1)throw new Error("Missing argument 'data' for Social.set");return this.vm.socialSet(r[0],r[1])}if("Near"===t&&"view"===e){if(r.length<2)throw new Error("Method: Near.view. Required arguments: 'contractName', 'methodName'. Optional: 'args', 'blockId/finality', 'subscribe', 'cacheOptions'");var s=Jn(r,6),l=s[0],f=s[1],h=s[2],p=s[3],d=s[4],y=s[5];return this.vm.cachedNearView(l,f,h,p,mo(d,p),y)}if("Near"===t&&"asyncView"===e){var v;if(r.length<2)throw new Error("Method: Near.asyncView. Required arguments: 'contractName', 'methodName'. Optional: 'args', 'blockId/finality'");return(v=this.vm).asyncNearView.apply(v,Fn(r))}if("Near"===t&&"block"===e){var m=Jn(r,3),g=m[0],b=m[1],w=m[2];return this.vm.cachedNearBlock(g,mo(b,g),w)}if("Near"===t&&"call"===e){if(1===r.length){if(N(r[0]))return this.vm.confirmTransactions([r[0]]);if(P(r[0]))return this.vm.confirmTransactions(r[0]);throw new Error("Method: Near.call. Required argument: 'tx/txs'. A single argument call requires an TX object or an array of TX objects.")}var E;if(r.length<2||r.length>5)throw new Error("Method: Near.call. Required argument: 'contractName'. If the first argument is a string: 'methodName'. Optional: 'args', 'gas' (defaults to 300Tg), 'deposit' (defaults to 0)");return this.vm.confirmTransactions([{contractName:r[0],methodName:r[1],args:null!==(E=r[2])&&void 0!==E?E:{},gas:r[3],deposit:r[4]}])}if("JSON"===t&&"stringify"===e||"stringify"===e){if(r.length<1)throw new Error("Missing argument 'obj' for JSON.stringify");return po(r[0]),JSON.stringify(r[0],r[1],r[2])}if("JSON"===t&&"parse"===e){if(r.length<1)throw new Error("Missing argument 's' for JSON.parse");try{var x=JSON.parse(r[0]);return yo(x),x}catch(t){return null}}else if("Object"===t){if("keys"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.keys");return po(r[0]),Object.keys(r[0])}if("values"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.values");return po(r[0]),Object.values(r[0])}if("entries"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.entries");return po(r[0]),Object.entries(r[0])}if("assign"===e){r.forEach((function(t){return po(t)}));var S=Object.assign.apply(Object,Fn(r));return yo(S),S}if("fromEntries"===e){var k=Object.fromEntries(r[0]);return yo(k),k}}else{if("State"===t&&"init"===e||"initState"===e){if(r.length<1)throw new Error("Missing argument 'initialState' for State.init");if(null===r[0]||"object"!==Wn(r[0])||at(r[0]))throw new Error("'initialState' is not an object");if(void 0===this.vm.state.state){var O=r[0];this.vm.state.state=O,this.vm.setReactState(O)}return this.vm.state.state}if("State"===t&&"update"===e){var j;if(N(r[0]))this.vm.state.state=null!==(j=this.vm.state.state)&&void 0!==j?j:{},Object.assign(this.vm.state.state,r[0]);else if(r[0]instanceof Function){var I;this.vm.state.state=null!==(I=this.vm.state.state)&&void 0!==I?I:{},this.vm.state.state=r[0](this.vm.state.state)}if(void 0===this.vm.state.state)throw new Error("The state was not initialized");return this.vm.setReactState(this.vm.state.state),this.vm.state.state}if("State"===t&&"get"===e)return this.vm.state.state;if("Storage"===t&&"privateSet"===e){if(r.length<2)throw new Error("Missing argument 'key' or 'value' for Storage.privateSet");return this.vm.storageSet({src:this.vm.widgetSrc,type:eo},r[0],r[1])}if("Storage"===t&&"privateGet"===e){if(r.length<1)throw new Error("Missing argument 'key' for Storage.privateGet");return this.vm.storageGet({src:this.vm.widgetSrc,type:eo},r[0])}if("Storage"===t&&"set"===e){if(r.length<2)throw new Error("Missing argument 'key' or 'value' for Storage.set");return this.vm.storageSet({src:this.vm.widgetSrc,type:ro},r[0],r[1])}if("Storage"===t&&"get"===e){var L;if(r.length<1)throw new Error("Missing argument 'key' for Storage.get");return this.vm.storageGet({src:null!==(L=r[1])&&void 0!==L?L:this.vm.widgetSrc,type:ro},r[0])}var C,A,T;if("console"===t&&"log"===e)return(C=console).log.apply(C,[this.vm.widgetSrc].concat(Fn(r)));if("clipboard"===t&&"writeText"===e)return this.isTrusted?(A=navigator.clipboard).writeText.apply(A,Fn(r)):Promise.reject(new Error("Not trusted (not a click)"));if("VM"===t&&"require"===e)return(T=this.vm).vmRequire.apply(T,Fn(r));if("Ethers"===t){if("provider"===e)return this.vm.ethersProvider;if("setChain"===e){var B,U=null===(B=this.vm.ethersProviderContext)||void 0===B?void 0:B.setChain;if(!U)throw new Error("The gateway doesn't support `setChain` operation");return U.apply(void 0,Fn(r))}return this.vm.cachedEthersCall(e,r)}if("WebSocket"===t){if("WebSocket"===e){var R=Un(WebSocket,Fn(r));return this.vm.websockets.push(R),R}throw new Error("Unsupported WebSocket method")}if(void 0===a){if(co.hasOwnProperty(e))return co[e].apply(co,Fn(r));if("fetch"===e){var M;if(r.length<1)throw new Error("Method: fetch. Required arguments: 'url'. Optional: 'options'");return(M=this.vm).cachedFetch.apply(M,Fn(r))}if("asyncFetch"===e){var F;if(r.length<1)throw new Error("Method: asyncFetch. Required arguments: 'url'. Optional: 'options'");return(F=this.vm).asyncFetch.apply(F,Fn(r))}if("useCache"===e){var q;if(r.length<2)throw new Error("Method: useCache. Required arguments: 'promiseGenerator', 'dataKey'. Optional: 'options'");if(!_(r[0]))throw new Error("Method: useCache. The first argument 'promiseGenerator' must be a function");return(q=this.vm).useCache.apply(q,Fn(r))}if("useState"===e){if(this.prevStack)throw new Error("Method: useState. The hook can an only be called from the top of the stack");if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");if(r.length<1)throw new Error("Method: useState. Required arguments: 'initialState'");var G=r[0],D=this.hookIndex++,J=this.vm.hooks[D];if(J)return[J.state,J.setState];var z=function t(e){var r;return _(e)&&(e=e(null===(r=i.vm.hooks[D])||void 0===r?void 0:r.state)),i.vm.setReactHook(D,{state:e,setState:t}),e};return[z(G),z]}if("useEffect"===e){if(this.prevStack)throw new Error("Method: useEffect. The hook can an only be called from the top of the stack");if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");if(r.length<1)throw new Error("Method: useEffect. Required arguments: 'setup'. Optional: 'dependencies'");var $=r[0];if(!_($))throw new Error("Method: useEffect. The first argument 'setup' must be a function");var W=this.hookIndex++,K=r[1],X=this.vm.hooks[W];if(X){var H=X.dependencies;if(void 0!==H&&ut(H,K))return}var V=null==X?void 0:X.cleanup;return _(V)&&V(),void this.vm.setReactHook(W,{cleanup:$(),dependencies:K})}if("useMemo"===e||"useCallback"===e){if(this.prevStack)throw new Error("Method: ".concat(e,". The hook can only be called from the top of the stack"));if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");var Y="useMemo"===e,Z=Y?"factory":"callback";if(r.length<1)throw new Error("Method: ".concat(e,". Required arguments: '").concat(Z,"'. Optional: 'dependencies'"));var Q=r[0];if(!_(Q))throw new Error("Method: ".concat(e,". The first argument '").concat(Z,"' must be a function"));var tt=this.hookIndex++,et=r[1],rt=this.vm.hooks[tt];if(rt){var nt=rt.dependencies;if(void 0!==nt&&ut(nt,et))return rt.memoized}var ot=Y?Q():Q;return this.vm.setReactHook(tt,{memoized:ot,dependencies:et}),ot}if("setTimeout"===e){var it=Jn(r,2),ct=it[0],st=it[1],lt=setTimeout((function(){i.vm.alive&&ct()}),st);return this.vm.timeouts.add(lt),lt}if("setInterval"===e){if(this.vm.intervals.size>=16)throw new Error("Too many intervals. Max allowed: ".concat(16));var ft=Jn(r,2),ht=ft[0],pt=ft[1],dt=setInterval((function(){i.vm.alive&&ht()}),pt);return this.vm.intervals.add(dt),dt}if("clearTimeout"===e){var yt=r[0];return this.vm.timeouts.delete(yt),clearTimeout(yt)}if("clearInterval"===e){var vt=r[0];return this.vm.intervals.delete(vt),clearInterval(vt)}}}}else{var mt=e===t?a:a[e];if("function"==typeof mt)return o?Un(mt,Fn(r)):mt.apply(void 0,Fn(r))}if(!n)throw new Error(t&&t!==e?"Unsupported callee method '".concat(t,".").concat(e,"'"):"Unsupported callee method '".concat(e,"'"))}},{key:"resolveMemberExpression",value:function(t,e){if("Identifier"===t.type||"JSXIdentifier"===t.type){var r,n=t.name;if(ho(n),null!=e&&e.requireState&&n!==to)throw new Error("The top object should be ".concat(to));var o=null!==(r=this.stack.findObj(n))&&void 0!==r?r:this.stack.state;if(po(o),o===this.stack.state&&n in ao){if(null!=e&&e.left)throw new Error("Cannot assign to keyword '"+n+"'");return{obj:o,key:n,keyword:n}}if(null!=e&&e.left&&(!o||!(n in o)))throw new Error("Accessing undeclared identifier '".concat(t.name,"'"));return{obj:o,key:n}}if("MemberExpression"===t.type||"JSXMemberExpression"===t.type){var i,a;if("Identifier"===(null===(i=t.object)||void 0===i?void 0:i.type)||"JSXIdentifier"===(null===(a=t.object)||void 0===a?void 0:a.type)){var c=t.object.name;if(c in ao){if(null==e||!e.callee)throw new Error("Cannot dereference keyword '"+c+"' in non-call expression");return{obj:this.stack.state,key:this.resolveKey(t.property,t.computed),keyword:c}}}var u=this.executeExpression(t.object);return po(u),{obj:u,key:this.resolveKey(t.property,t.computed)}}throw new Error("Unsupported member type: '"+t.type+"'")}},{key:"getArray",value:function(t){var e=this,r=[];return t.forEach((function(t){"SpreadElement"===t.type?r.push.apply(r,Fn(e.executeExpression(t.argument))):r.push(e.executeExpression(t))})),r}},{key:"executeExpressionInternal",value:function(t){var e=this;if(!t)return null;var r=null==t?void 0:t.type;if("AssignmentExpression"===r){var n,o=this.resolveMemberExpression(t.left,{left:!0}),i=o.obj,a=o.key,c=this.executeExpression(t.right);if("="===t.operator)return i[a]=c;if("+="===t.operator)return i[a]+=c;if("-="===t.operator)return i[a]-=c;if("*="===t.operator)return i[a]*=c;if("/="===t.operator)return i[a]/=c;if("??="===t.operator)return null!==(n=i[a])&&void 0!==n?n:i[a]=c;throw new Error("Unknown AssignmentExpression operator '"+t.operator+"'")}if("ChainExpression"===r)return this.executeExpression(t.expression);if("MemberExpression"===r||"JSXMemberExpression"===r){var u=this.resolveMemberExpression(t),s=u.obj,l=u.key;return null==s?void 0:s[l]}if("Identifier"===r||"JSXIdentifier"===r)return this.stack.get(t.name);if("JSXExpressionContainer"===r)return this.executeExpression(t.expression);if("TemplateLiteral"===r){for(var f=[],h=0;h"===t.operator)return w>E;if("<="===t.operator)return w<=E;if(">="===t.operator)return w>=E;if("==="===t.operator||"=="===t.operator)return w===E;if("!=="===t.operator||"!="===t.operator)return w!==E;if("in"===t.operator)return w in E;throw new Error("Unknown BinaryExpression operator '"+t.operator+"'")}if("UnaryExpression"===r){if("delete"===t.operator){var x=this.resolveMemberExpression(t.argument,{left:!0}),S=x.obj,k=x.key;return null==S||delete S[k]}var O=this.executeExpression(t.argument);if("-"===t.operator)return-O;if("!"===t.operator)return!O;if("typeof"===t.operator)return Wn(O);throw new Error("Unknown UnaryExpression operator '"+t.operator+"'")}if("LogicalExpression"===r){var j=this.executeExpression(t.left);if("||"===t.operator)return j||this.executeExpression(t.right);if("&&"===t.operator)return j&&this.executeExpression(t.right);if("??"===t.operator)return null!=j?j:this.executeExpression(t.right);throw new Error("Unknown LogicalExpression operator '"+t.operator+"'")}if("ConditionalExpression"===r)return this.executeExpression(t.test)?this.executeExpression(t.consequent):this.executeExpression(t.alternate);if("UpdateExpression"===r){var I=this.resolveMemberExpression(t.argument,{left:!0}),L=I.obj,C=I.key;if("++"===t.operator)return t.prefix?++L[C]:L[C]++;if("--"===t.operator)return t.prefix?--L[C]:L[C]--;throw new Error("Unknown UpdateExpression operator '"+t.operator+"'")}if("ObjectExpression"===r)return t.properties.reduce((function(t,r){if("Property"===r.type)t[e.resolveKey(r.key,r.computed)]=e.executeExpression(r.value);else{if("SpreadElement"!==r.type)throw new Error("Unknown property type: "+r.type);var n=e.executeExpression(r.argument);po(n),Object.assign(t,n)}return t}),{});if("ArrayExpression"===r)return this.getArray(t.elements);if("JSXEmptyExpression"===r)return null;if("ArrowFunctionExpression"===r)return this.createFunction(t.params,t.body,t.expression);if("TaggedTemplateExpression"===r){var A,P;if("MemberExpression"!==t.tag.type&&"CallExpression"!==t.tag.type)throw new Error("TaggedTemplateExpression is only supported for `styled` components");var N=this.resolveMemberExpression("MemberExpression"===t.tag.type?t.tag:t.tag.callee,{callee:!0}),T=N.key;if("styled"!==N.keyword)throw new Error("TaggedTemplateExpression is only supported for `styled` components");if("CallExpression"===t.tag.type){var _=this.getArray(t.tag.arguments),B=null==_?void 0:_[0],U=vo(B);if(!(0,_r.isStyledComponent)(B)&&!U)throw new Error('styled() can only take `styled` components or valid Radix components (EG: "Accordion.Trigger")');A=Br()(null!=U?U:B)}else{if("keyframes"===T)A=_r.keyframes;else{if(!(T in no))throw new Error("Unsupported styled tag: "+T);A=Br()(T)}P=T}if("TemplateLiteral"!==t.quasi.type)throw new Error("Unknown quasi type: "+t.quasi.type);var R=t.quasi.quasis.map((function(t){if("TemplateElement"!==t.type)throw new Error("Unknown quasis type: "+t.type);return t.value.cooked})),M=0===t.quasi.expressions.length&&"CallExpression"!==t.tag.type,F=JSON.stringify([P].concat(Fn(R)));if(M&&this.vm.cachedStyledComponents.has(F))return this.vm.cachedStyledComponents.get(F);var q=t.quasi.expressions.map((function(t){return e.executeExpression(t)}));if(A instanceof Function){var G=A.apply(void 0,[R].concat(Fn(q)));return M&&this.vm.cachedStyledComponents.set(F,G),G}throw new Error("styled error")}throw console.log(t),new Error("Unknown expression type '"+r+"'")}},{key:"createFunction",value:function(t,e,r){var n=this;return t=t.map(Eo),function(){for(var o,i,a,c=arguments.length,u=new Array(c),s=0;s0&&(!t.test||a.executeExpression(t.test));){var c=a.executeStatement(t.body);if(c){if(c.break)break;if(!c.continue)return c}a.executeExpression(t.update)}if(this.vm.loopLimit<=0)throw new Error("Exceeded loop limit")}else if("ForOfStatement"===t.type){var u=this.newStack(),s=u.executeExpression(t.right);po(s);var l,f=Bn(s);try{var h=function(){var r=l.value;if(e.vm.loopLimit--<=0)throw new Error("Exceeded loop limit");if("VariableDeclaration"===t.left.type){if(1!==t.left.declarations.length)throw new Error("Invalid for-of statement");t.left.declarations.forEach((function(t){if("VariableDeclarator"!==t.type)throw new Error("Unknown variable declaration type '"+t.type+"'");e.stackDeclare(Eo(t.id),r)}))}else{var n=e.resolveMemberExpression(t.left,{left:!0});n.obj[n.key]=r}var o=u.executeStatement(t.body);if(o){if(o.break)return"break";if(!o.continue)return{v:o}}};for(f.s();!(l=f.n()).done;){var p=h();if("break"===p)break;if("object"===Wn(p))return p.v}}catch(t){f.e(t)}finally{f.f()}}else if("WhileStatement"===t.type){for(var d=this.newStack();this.vm.loopLimit-- >0&&d.executeExpression(t.test);){var y=d.executeStatement(t.body);if(y){if(y.break)break;if(!y.continue)return y}}if(this.vm.loopLimit<=0)throw new Error("Exceeded loop limit")}else if("IfStatement"===t.type){var v=this.executeExpression(t.test),m=this.newStack(),g=v?m.executeStatement(t.consequent):m.executeStatement(t.alternate);if(g)return g}else{if("BreakStatement"===t.type)return{break:!0};if("ContinueStatement"===t.type)return{continue:!0};if("ThrowStatement"===t.type)throw this.executeExpression(t.argument);if("TryStatement"===t.type)try{var b=this.newStack().executeStatement(t.block);if(b)return b}catch(e){if(!this.vm.alive||!t.handler)return null;if("CatchClause"!==t.handler.type)throw new Error("Unknown try statement handler type '"+t.handler.type+"'");var w=this.newStack();t.handler.param&&w.stackDeclare(go(t.handler.param),ct(e instanceof Error?{name:null==e?void 0:e.name,message:null==e?void 0:e.message,toString:function(){return e.toString()}}:e));var E=w.executeStatement(t.handler.body);if(E)return E}finally{this.vm.alive&&this.newStack().executeStatement(t.finalizer)}else{if("SwitchStatement"!==t.type)throw new Error("Unknown token type '"+t.type+"'");var x,S=this.executeExpression(t.discriminant),k=this.newStack(),O=!1,j=Bn(t.cases);try{for(j.s();!(x=j.n()).done;){var I=x.value;if("SwitchCase"!==I.type)throw new Error("Unknown switch case type '"+I.type+"'");if(!O&&I.test){if(k.executeExpression(I.test)!==S)continue;O=!0}if(O){var L,C=!1,A=Bn(I.consequent);try{for(A.s();!(L=A.n()).done;){var P=L.value,N=k.executeStatement(P);if(N){if(N.break){C=!0;break}return N}}}catch(t){A.e(t)}finally{A.f()}if(C)break}}}catch(t){j.e(t)}finally{j.f()}}}}return null}}]),t}(),ko=function(){function t(e){var r,n=this;qn(this,t);var o,i=e.near,a=e.rawCode,c=e.setReactState,u=e.cache,s=e.refreshCache,l=e.confirmTransactions,h=e.depth,p=e.widgetSrc,d=e.requestCommit,y=e.version,v=e.widgetConfigs,m=e.ethersProviderContext,g=e.isModule;this.alive=!0,this.isModule=g,this.rawCode=a,this.near=i;try{this.code=(o=a)in lo?lo[o]:lo[o]=fo.parse(o,so),this.compileError=null}catch(t){this.code=null,this.compileError=t,console.error(t)}this.code?(this.setReactState=c?function(t){return c({hooks:n.hooks,state:N(t)?Object.assign({},t):t})}:function(){throw new Error("State is unavailable for modules")},this.setReactHook=c?function(t,e){n.hooks[t]=e,c({hooks:n.hooks,state:n.state.state})}:function(){throw new Error("State is unavailable for modules")},this.cache=u,this.refreshCache=s,this.confirmTransactions=l,this.depth=null!=h?h:0,this.widgetSrc=p,this.requestCommit=d,this.version=y,this.cachedStyledComponents=new Map,this.widgetConfigs=v,this.ethersProviderContext=m,this.ethersProvider=null!=m&&m.provider?new f.ethers.providers.Web3Provider(m.provider):null,this.timeouts=new Set,this.intervals=new Set,this.websockets=[],this.vmInstances=new Map,this.networkId=(null===(r=v.findLast((function(t){return t&&t.networkId})))||void 0===r?void 0:r.networkId)||i.config.networkId):this.alive=!1}return Dn(t,[{key:"stop",value:function(){this.alive&&(this.alive=!1,this.timeouts.forEach((function(t){return clearTimeout(t)})),this.intervals.forEach((function(t){return clearInterval(t)})),this.websockets.forEach((function(t){return t.close()})),this.vmInstances.forEach((function(t){return t.stop()})))}},{key:"cachedPromise",value:function(t,e){var r=this;return ct(t({onInvalidate:function(){r.alive&&r.refreshCache()},subscribe:!!e}))}},{key:"cachedSocialGet",value:function(t,e,r,n,o){var i=this;return t=Array.isArray(t)?t:[t],this.cachedPromise((function(a){return i.cache.socialGet(i.near,t,e,r,n,a,o)}),null==n?void 0:n.subscribe)}},{key:"storageGet",value:function(t,e){var r=this;return this.cachedPromise((function(n){return r.cache.localStorageGet(t,e,n)}))}},{key:"storageSet",value:function(t,e,r){return this.cache.localStorageSet(t,e,r)}},{key:"cachedSocialKeys",value:function(t,e,r,n){var o=this;return t=Array.isArray(t)?t:[t],this.cachedPromise((function(i){return o.cache.cachedViewCall(o.near,o.near.config.contractName,"keys",{keys:t,options:r},e,i,n)}),null==r?void 0:r.subscribe)}},{key:"asyncNearView",value:function(t,e,r,n){return this.near.viewCall(t,e,r,n)}},{key:"cachedEthersCall",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(r){return o.cache.cachedEthersCall(o.ethersProvider,t,e,r,n)}),r)}},{key:"cachedNearView",value:function(t,e,r,n,o,i){var a=this;return this.cachedPromise((function(o){return a.cache.cachedViewCall(a.near,t,e,r,n,o,i)}),o)}},{key:"cachedNearBlock",value:function(t,e,r){var n=this;return this.cachedPromise((function(e){return n.cache.cachedBlock(n.near,t,e,r)}),e)}},{key:"asyncFetch",value:function(t,e){return this.cache.asyncFetch(t,e)}},{key:"cachedFetch",value:function(t,e,r){var n=this;return this.cachedPromise((function(o){return n.cache.cachedFetch(t,e,o,r)}),null==e?void 0:e.subscribe)}},{key:"cachedIndex",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(i){return o.cache.socialIndex(o.near,t,e,r,i,n)}),null==r?void 0:r.subscribe)}},{key:"useCache",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(r){return o.cache.cachedCustomPromise({widgetSrc:o.widgetSrc,dataKey:e},t,r,n)}),null==r?void 0:r.subscribe)}},{key:"socialSet",value:function(t,e){return this.requestCommit({data:t,force:null==e?void 0:e.force,onCommit:null==e?void 0:e.onCommit,onCancel:null==e?void 0:e.onCancel})}},{key:"vmRequire",value:function(t){var e=Jn(t.split("@"),2),r=e[0],n=e[1],o=this.cachedSocialGet(r.toString(),!1,n,void 0);return o?this.getVmInstance(o,t).execCode({context:ct(this.context),forwardedProps:this.forwardedProps}):o}},{key:"getVmInstance",value:function(e,r){if(this.vmInstances.has(r)){var n=this.vmInstances.get(r);if(n.rawCode===e)return n;n.stop(),this.vmInstances.delete(r)}var o=new t({near:this.near,rawCode:e,cache:this.cache,refreshCache:this.refreshCache,confirmTransactions:this.confirmTransactions,depth:this.depth+1,widgetSrc:r,requestCommit:this.requestCommit,version:this.version,widgetConfigs:this.widgetConfigs,ethersProviderContext:this.ethersProviderContext,isModule:!0});return this.vmInstances.set(r,o),o}},{key:"renderCode",value:function(t){if(this.compileError)return r().createElement("div",{className:"alert alert-danger"},"Compilation error:",r().createElement("pre",null,this.compileError.message),r().createElement("pre",null,this.compileError.stack));if(!this.alive)return r().createElement("div",{className:"alert alert-danger"},"VM is dead");var e=this.execCode(t);return at(e)||"string"==typeof e||"number"==typeof e?e:r().createElement("pre",null,JSON.stringify(e,void 0,2))}},{key:"execCode",value:function(t){var e=t.props,r=t.context,n=t.reactState,o=t.forwardedProps;if(this.compileError)throw this.compileError;if(this.depth>=32)return"Too deep";this.gIndex=0;var i=null!=n?n:{},a=i.hooks,c=i.state;this.hooks=a,this.state={props:N(e)?Object.assign({},e):e,context:r,state:c,nacl:Yn,get elliptic(){return delete this.elliptic,this.elliptic=Zr()(Ur),this.elliptic},ethers:Zn,nanoid:Qn},this.forwardedProps=o,this.loopLimit=1e6,this.vmStack=new So(this,void 0,this.state);var u=this.vmStack.executeStatement(this.code);if(null!=u&&u.break)throw new Error("BreakStatement outside of a loop");if(null!=u&&u.continue)throw new Error("ContinueStatement outside of a loop");return null==u?void 0:u.result}}]),t}();const Oo=require("react-error-boundary");function jo(t){return jo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jo(t)}var Io=["loading","src","code","depth","config","props"];function Lo(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Co(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,Io),p=Po((0,e.useState)(0),2),d=p[0],y=p[1],v=Po((0,e.useState)(null),2),m=v[0],g=v[1],b=Po((0,e.useState)(null),2),E=b[0],x=b[1],S=Po((0,e.useState)({hooks:[],state:void 0}),2),k=S[0],O=S[1],j=Po((0,e.useState)(0),2),I=j[0],A=j[1],P=Po((0,e.useState)({}),2),B=P[0],U=P[1],R=Po((0,e.useState)(null),2),M=R[0],F=R[1],q=Po((0,e.useState)(null),2),G=q[0],D=q[1],J=Po((0,e.useState)(null),2),z=J[0],$=J[1],W=Po((0,e.useState)(null),2),K=W[0],X=W[1],H=Po((0,e.useState)(null),2),V=H[0],Y=H[1],Z=Po((0,e.useState)(null),2),Q=Z[0],tt=Z[1],et=(0,e.useContext)(nn),rt=V&&(null===(o=V.findLast((function(t){return t&&t.networkId})))||void 0===o?void 0:o.networkId),nt=wr(rt),ot=qt(rt),it=ce(rt),at=Po((0,e.useState)(null),2),st=at[0],lt=at[1];(0,e.useEffect)((function(){var t=l?Array.isArray(l)?l:[l]:[];ut(t,V)||Y(t)}),[l,V]),(0,e.useEffect)((function(){var t=function(t,e,r){var n,o=t?{src:t}:e?{code:e}:null,i=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=No(t))){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}(r||[]);try{for(i.s();!(n=i.n()).done;){var a,c=n.value;if(null!==(a=o)&&void 0!==a&&a.src){var u,s=o.src,l=N(null==c?void 0:c.redirectMap)&&c.redirectMap[s];if(!l)try{l=_(null==c?void 0:c.redirect)&&c.redirect(s)}catch(t){}if(T(l))o={src:l};else if(T(null===(u=l)||void 0===u?void 0:u.code))return{code:l.code}}}}catch(t){i.e(t)}finally{i.f()}return o}(a,c,V);ut(t,Q)||tt(t)}),[a,c,V,Q]),(0,e.useEffect)((function(){if(ot)if(null!=Q&&Q.src){var t=Q.src,e=Po(t.split("@"),2),r=e[0],n=e[1],o=nt.socialGet(ot,r.toString(),!1,n,void 0,(function(){y(d+1)}));g(o),x(t)}else null!=Q&&Q.code&&(g(Q.code),x(null))}),[ot,Q,d]),(0,e.useEffect)((function(){F(null),lt(null),m||void 0===m&<(r().createElement("div",{className:"alert alert-danger"},'Source code for "',E,'" is not found'))}),[m,E]);var ft=(0,e.useCallback)((function(t){if(!ot||!t||0===t.length)return null;t=t.map((function(t){return{contractName:t.contractName,methodName:t.methodName,args:t.args||{},deposit:t.deposit?u()(t.deposit):u()(0),gas:t.gas?u()(t.gas):w.mul(30)}})),console.log("confirm txs",t),D(t)}),[ot]),ht=(0,e.useCallback)((function(t){if(!ot)return null;console.log("commit requested",t),$(t)}),[ot]);return(0,e.useEffect)((function(){if(ot&&m){O({hooks:[],state:void 0});var t=new ko({near:ot,rawCode:m,setReactState:O,cache:nt,refreshCache:function(){A((function(t){return t+1}))},confirmTransactions:ft,depth:s,widgetSrc:E,requestCommit:ht,version:Pe()(),widgetConfigs:V,ethersProviderContext:et});return F(t),function(){t.stop()}}}),[E,ot,m,s,ht,ft,V,et]),(0,e.useEffect)((function(){ot&&U({loading:!1,accountId:null!=it?it:null,widgetSrc:E,networkId:ot.config.networkId})}),[ot,it,E]),(0,e.useLayoutEffect)((function(){if(M){var t={props:f||{},context:B,reactState:k,cacheNonce:I,version:M.version,forwardedProps:Co(Co({},h),{},{ref:n})};if(!ut(t,K)){X(ct(t));try{var e;lt(null!==(e=M.renderCode(t))&&void 0!==e?e:"Execution failed")}catch(t){lt(r().createElement("div",{className:"alert alert-danger"},"Execution error:",r().createElement("pre",null,t.message),r().createElement("pre",null,t.stack))),console.error(t)}}}}),[M,f,B,k,I,K,n,h]),null!=st?r().createElement(Oo.ErrorBoundary,{FallbackComponent:C,onReset:function(){lt(null)},resetKeys:[st]},r().createElement(r().Fragment,null,st,G&&r().createElement(Te,{transactions:G,onHide:function(){return D(null)},networkId:rt}),z&&r().createElement(Pr,{show:!0,widgetSrc:E,data:z.data,force:z.force,onHide:function(){return $(null)},onCommit:z.onCommit,onCancel:z.onCancel,networkId:rt}))):null!=i?i:L}))})(),o})())); \ No newline at end of file +!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("react"));else if("function"==typeof define&&define.amd)define(["react"],e);else{var r="object"==typeof exports?e(require("react")):e(t.React);for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(global,(t=>(()=>{"use strict";var e={764:(t,e,r)=>{const n=r(238),o=r(665),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.lW=u,e.h2=50;const a=2147483647;function c(t){if(t>a)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,u.prototype),e}function u(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return f(t)}return s(t,e,r)}function s(t,e,r){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!u.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const r=0|y(t,e);let n=c(r);const o=n.write(t,e);return o!==r&&(n=n.slice(0,o)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(H(t,Uint8Array)){const e=new Uint8Array(t);return p(e.buffer,e.byteOffset,e.byteLength)}return h(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(H(t,ArrayBuffer)||t&&H(t.buffer,ArrayBuffer))return p(t,e,r);if("undefined"!=typeof SharedArrayBuffer&&(H(t,SharedArrayBuffer)||t&&H(t.buffer,SharedArrayBuffer)))return p(t,e,r);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return u.from(n,e,r);const o=function(t){if(u.isBuffer(t)){const e=0|d(t.length),r=c(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||V(t.length)?c(0):h(t):"Buffer"===t.type&&Array.isArray(t.data)?h(t.data):void 0}(t);if(o)return o;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function l(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function f(t){return l(t),c(t<0?0:0|d(t))}function h(t){const e=t.length<0?0:0|d(t.length),r=c(e);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|t}function y(t,e){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||H(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let o=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return W(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return K(t).length;default:if(o)return n?-1:W(t).length;e=(""+e).toLowerCase(),o=!0}}function v(t,e,r){let n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return A(this,e,r);case"utf8":case"utf-8":return j(this,e,r);case"ascii":return L(this,e,r);case"latin1":case"binary":return C(this,e,r);case"base64":return O(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,e,r){const n=t[e];t[e]=t[r],t[r]=n}function g(t,e,r,n,o){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),V(r=+r)&&(r=o?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(o)return-1;r=t.length-1}else if(r<0){if(!o)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:b(t,e,r,n,o);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):b(t,[e],r,n,o);throw new TypeError("val must be string, number or Buffer")}function b(t,e,r,n,o){let i,a=1,c=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;a=2,c/=2,u/=2,r/=2}function s(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(o){let n=-1;for(i=r;ic&&(r=c-u),i=r;i>=0;i--){let r=!0;for(let n=0;no&&(n=o):n=o;const i=e.length;let a;for(n>i/2&&(n=i/2),a=0;a>8,o=r%256,i.push(o),i.push(n);return i}(e,t.length-r),t,r,n)}function O(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function j(t,e,r){r=Math.min(t.length,r);const n=[];let o=e;for(;o239?4:e>223?3:e>191?2:1;if(o+a<=r){let r,n,c,u;switch(a){case 1:e<128&&(i=e);break;case 2:r=t[o+1],128==(192&r)&&(u=(31&e)<<6|63&r,u>127&&(i=u));break;case 3:r=t[o+1],n=t[o+2],128==(192&r)&&128==(192&n)&&(u=(15&e)<<12|(63&r)<<6|63&n,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:r=t[o+1],n=t[o+2],c=t[o+3],128==(192&r)&&128==(192&n)&&128==(192&c)&&(u=(15&e)<<18|(63&r)<<12|(63&n)<<6|63&c,u>65535&&u<1114112&&(i=u))}}null===i?(i=65533,a=1):i>65535&&(i-=65536,n.push(i>>>10&1023|55296),i=56320|1023&i),n.push(i),o+=a}return function(t){const e=t.length;if(e<=I)return String.fromCharCode.apply(String,t);let r="",n=0;for(;nn.length?(u.isBuffer(e)||(e=u.from(e)),e.copy(n,o)):Uint8Array.prototype.set.call(n,e,o);else{if(!u.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(n,o)}o+=e.length}return n},u.byteLength=y,u.prototype._isBuffer=!0,u.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;er&&(t+=" ... "),""},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,e,r,n,o){if(H(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),e<0||r>t.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&e>=r)return 0;if(n>=o)return-1;if(e>=r)return 1;if(this===t)return 0;let i=(o>>>=0)-(n>>>=0),a=(r>>>=0)-(e>>>=0);const c=Math.min(i,a),s=this.slice(n,o),l=t.slice(e,r);for(let t=0;t>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const o=this.length-e;if((void 0===r||r>o)&&(r=o),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let i=!1;for(;;)switch(n){case"hex":return w(this,t,e,r);case"utf8":case"utf-8":return E(this,t,e,r);case"ascii":case"latin1":case"binary":return x(this,t,e,r);case"base64":return S(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const I=4096;function L(t,e,r){let n="";r=Math.min(t.length,r);for(let o=e;on)&&(r=n);let o="";for(let n=e;nr)throw new RangeError("Trying to access beyond buffer length")}function T(t,e,r,n,o,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||et.length)throw new RangeError("Index out of range")}function _(t,e,r,n,o){D(e,n,o,t,r,7);let i=Number(e&BigInt(4294967295));t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,r}function B(t,e,r,n,o){D(e,n,o,t,r,7);let i=Number(e&BigInt(4294967295));t[r+7]=i,i>>=8,t[r+6]=i,i>>=8,t[r+5]=i,i>>=8,t[r+4]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=a,a>>=8,t[r+2]=a,a>>=8,t[r+1]=a,a>>=8,t[r]=a,r+8}function U(t,e,r,n,o,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function R(t,e,r,n,i){return e=+e,r>>>=0,i||U(t,0,r,4),o.write(t,e,r,n,23,4),r+4}function M(t,e,r,n,i){return e=+e,r>>>=0,i||U(t,0,r,8),o.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){const r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t],o=1,i=0;for(;++i>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t+--e],o=1;for(;e>0&&(o*=256);)n+=this[t+--e]*o;return n},u.prototype.readUint8=u.prototype.readUInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),this[t]},u.prototype.readUint16LE=u.prototype.readUInt16LE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUint16BE=u.prototype.readUInt16BE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUint32LE=u.prototype.readUInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUint32BE=u.prototype.readUInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readBigUInt64LE=Z((function(t){J(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,o=this[++t]+256*this[++t]+65536*this[++t]+r*2**24;return BigInt(n)+(BigInt(o)<>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=e*2**24+65536*this[++t]+256*this[++t]+this[++t],o=this[++t]*2**24+65536*this[++t]+256*this[++t]+r;return(BigInt(n)<>>=0,e>>>=0,r||N(t,e,this.length);let n=this[t],o=1,i=0;for(;++i=o&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);let n=e,o=1,i=this[t+--n];for(;n>0&&(o*=256);)i+=this[t+--n]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){t>>>=0,e||N(t,2,this.length);const r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){t>>>=0,e||N(t,2,this.length);const r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readBigInt64LE=Z((function(t){J(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=this[t+4]+256*this[t+5]+65536*this[t+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const n=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(n)<>>=0,e||N(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return t>>>=0,e||N(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return t>>>=0,e||N(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return t>>>=0,e||N(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUintLE=u.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||T(this,t,e,r,Math.pow(2,8*r)-1,0);let o=1,i=0;for(this[e]=255&t;++i>>=0,r>>>=0,n||T(this,t,e,r,Math.pow(2,8*r)-1,0);let o=r-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+r},u.prototype.writeUint8=u.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,1,255,0),this[e]=255&t,e+1},u.prototype.writeUint16LE=u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeUint16BE=u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeUint32LE=u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},u.prototype.writeUint32BE=u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigUInt64LE=Z((function(t,e=0){return _(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeBigUInt64BE=Z((function(t,e=0){return B(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){const n=Math.pow(2,8*r-1);T(this,t,e,r,n-1,-n)}let o=0,i=1,a=0;for(this[e]=255&t;++o>0)-a&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){const n=Math.pow(2,8*r-1);T(this,t,e,r,n-1,-n)}let o=r-1,i=1,a=0;for(this[e+o]=255&t;--o>=0&&(i*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||T(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigInt64LE=Z((function(t,e=0){return _(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeBigInt64BE=Z((function(t,e=0){return B(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeFloatLE=function(t,e,r){return R(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return R(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return M(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return M(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(!u.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o=n+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function D(t,e,r,n,o,i){if(t>r||t3?0===e||e===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(i+1)}${n}`:`>= -(2${n} ** ${8*(i+1)-1}${n}) and < 2 ** ${8*(i+1)-1}${n}`:`>= ${e}${n} and <= ${r}${n}`,new F.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,r){J(e,"offset"),void 0!==t[e]&&void 0!==t[e+r]||z(e,t.length-(r+1))}(n,o,i)}function J(t,e){if("number"!=typeof t)throw new F.ERR_INVALID_ARG_TYPE(e,"number",t)}function z(t,e,r){if(Math.floor(t)!==t)throw J(t,r),new F.ERR_OUT_OF_RANGE(r||"offset","an integer",t);if(e<0)throw new F.ERR_BUFFER_OUT_OF_BOUNDS;throw new F.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${e}`,t)}q("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),q("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),q("ERR_OUT_OF_RANGE",(function(t,e,r){let n=`The value of "${t}" is out of range.`,o=r;return Number.isInteger(r)&&Math.abs(r)>2**32?o=G(String(r)):"bigint"==typeof r&&(o=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(o=G(o)),o+="n"),n+=` It must be ${e}. Received ${o}`,n}),RangeError);const $=/[^+/0-9A-Za-z-_]/g;function W(t,e){let r;e=e||1/0;const n=t.length;let o=null;const i=[];for(let a=0;a55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function K(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace($,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function X(t,e,r,n){let o;for(o=0;o=e.length||o>=t.length);++o)e[o+r]=t[o];return o}function H(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}const Y=function(){const t="0123456789abcdef",e=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let o=0;o<16;++o)e[n+o]=t[r]+t[o]}return e}();function Z(t){return"undefined"==typeof BigInt?Q:t}function Q(){throw new Error("BigInt not supported")}},238:t=>{t.exports=require("base64-js")},665:t=>{t.exports=require("ieee754")},359:e=>{e.exports=t}},r={};function n(t){var o=r[t];if(void 0!==o)return o.exports;var i=r[t]={exports:{}};return e[t](i,i.exports,n),i.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var o={};return(()=>{n.r(o),n.d(o,{CommitButton:()=>Nr,EthersProviderContext:()=>nn,GlobalStateContext:()=>jo,Widget:()=>Bo,useAccount:()=>ae,useAccountId:()=>ce,useCache:()=>wr,useInitNear:()=>Rt,useNear:()=>qt,utils:()=>t});var t={};n.r(t),n.d(t,{ErrorFallback:()=>C,Loading:()=>L,MaxGasPerTransaction:()=>E,OneNear:()=>j,ReactKey:()=>it,StorageCostPerByte:()=>x,TGas:()=>w,availableNearBalance:()=>J,bigMax:()=>R,bigMin:()=>U,bigToString:()=>M,computeWritePermission:()=>nt,convertToStringLeaves:()=>Y,dateToString:()=>G,deepCopy:()=>ct,deepEqual:()=>ut,deepFreeze:()=>ot,displayGas:()=>q,displayNear:()=>F,displayTime:()=>D,estimateDataSize:()=>K,extractKeys:()=>X,indexMatch:()=>et,ipfsUpload:()=>$,ipfsUrl:()=>W,isArray:()=>P,isFunction:()=>_,isObject:()=>N,isReactObject:()=>at,isString:()=>T,isValidAccountId:()=>A,isoDate:()=>z,keysToCamel:()=>B,patternMatch:()=>tt,removeDuplicates:()=>H});var e=n(359),r=n.n(e);const i=require("react-singleton-hook"),a=require("near-api-js"),c=require("big.js");var u=n.n(c);const s=require("deep-equal");var l=n.n(s);const f=require("ethers");var h=n(764).lW;function p(t){return function(t){if(Array.isArray(t))return m(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||v(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}function y(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||v(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(t,e){if(t){if("string"==typeof t)return m(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(t,e):void 0}}function m(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),j(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;j(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:L(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function b(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}var w=u()(10).pow(12),E=w.mul(250),x=u()(10).pow(19),S=2,k=64,O=/^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/,j=u()(10).pow(24),I=j.div(2),L=r().createElement("span",{className:"spinner-grow spinner-grow-sm me-1",role:"status","aria-hidden":"true"}),C=function(t){var e=t.error;return r().createElement("div",{role:"alert"},r().createElement("p",null,"Something went wrong:"),r().createElement("pre",null,e.message))};function A(t){return t&&t.length>=S&&t.length<=k&&t.match(O)}var P=function(t){return Array.isArray(t)},N=function(t){return t===Object(t)&&!P(t)&&"function"!=typeof t},T=function(t){return"string"==typeof t},_=function(t){return"function"==typeof t},B=function t(e){if(N(e)){var r={};return Object.keys(e).forEach((function(n){var o;r[(o=n,o.replace(/([-_][a-z])/gi,(function(t){return t.toUpperCase().replace("-","").replace("_","")})))]=t(e[n])})),r}return P(e)?e.map((function(e){return t(e)})):e},U=function(t,e){return t&&e?t.lt(e)?t:e:t||e},R=function(t,e){return t&&e?t.gt(e)?t:e:t||e},M=function(t,e,r){if(null===t)return"???";var n=t.toFixed(),o=n.indexOf(".");if(e=e||6,r=r||7,o>0){var i=Math.min(e,Math.max(r-o,0));i>0&&(i+=1),o+i=0;a-=3)n=n.slice(0,a+1)+","+n.slice(a+1);return"0.000000"===n&&6===e&&7===r?"<0.000001":n},F=function(t){return t?t.eq(1)?r().createElement(r().Fragment,null,"1 ",r().createElement("span",{className:"text-secondary"},"yoctoNEAR")):r().createElement(r().Fragment,null,M(t.div(j))," ",r().createElement("span",{className:"text-secondary"},"NEAR")):"???"},q=function(t){return t?r().createElement(r().Fragment,null,M(t.div(w))," ",r().createElement("span",{className:"text-secondary"},"TGas")):"???"},G=function(t){return t.toLocaleString("en-us",{day:"numeric",month:"short",year:"numeric"})},D=function(t){return t.toLocaleString()},J=function(t){if(t&&!t.loading&&t.state){var e=u()(t.state.amount).sub(u()(t.state.storage_usage).mul(u()(x)));if(e.gt(I))return e.sub(I)}return u()(0)},z=function(t){return t?new Date(t).toISOString().substring(0,10):""},$=function(){var t,e=(t=g().mark((function t(e){var r;return g().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,fetch("https://ipfs.near.social/add",{method:"POST",headers:{Accept:"application/json"},body:e});case 2:return r=t.sent,t.next=5,r.json();case 5:return t.abrupt("return",t.sent.cid);case 6:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){b(i,n,o,a,c,"next",t)}function c(t){b(i,n,o,a,c,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}(),W=function(t){return"https://ipfs.near.social/ipfs/".concat(t)},K=function t(e,r){return N(e)?Object.entries(e).reduce((function(e,n){var o=y(n,2),i=o[0],a=o[1],c=N(r)?r[i]:void 0;return e+(void 0!==c?t(a,c):2*i.length+t(a,void 0)+140)}),N(r)?0:98):((null==e?void 0:e.length)||8)-(T(r)?r.length:0)},X=function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object.entries(e).map((function(e){var n=y(e,2),o=n[0],i=n[1];return N(i)?t(i,"".concat(r).concat(o,"/")):"".concat(r).concat(o)})).flat()},H=function t(e,r){var n=Object.entries(e).reduce((function(e,n){var o=y(n,2),i=o[0],a=o[1],c=N(r)?r[i]:void 0;if(N(a)){var u=N(c)?t(a,c):a;void 0!==u&&(e[i]=u)}else a!==c&&(e[i]=a);return e}),{});return Object.keys(n).length?n:void 0},V=function(t){return T(t)||null===t?t:JSON.stringify(t)},Y=function t(e){return N(e)?Object.entries(e).reduce((function(e,r){var n=y(r,2),o=n[0],i=n[1];return e[V(o)]=t(i),e}),{}):V(e)},Z=function t(e,r){var n=r[0],o="**"===n;return o?1===r.length:("*"===n||o?Object.values(e):n in e?[e[n]]:[]).some((function(e){return N(e)?r.length>1?t(e,r.slice(1)):void 0!==e[""]:1===r.length}))},Q=function t(e,r){var n=r[0];return("*"===n?Object.values(e):n in e?[e[n]]:[]).some((function(e){return 1===r.length||N(e)&&t(e,r.slice(1))}))},tt=function(t,e,r){var n=e.split("/");return"get"===t?Z(r,n):"keys"===t&&Q(r,n)},et=function(t,e,r){return Object.values(r).some((function(r){var n,o=null==r||null===(n=r.index)||void 0===n?void 0:n[t];try{return o&&JSON.stringify(JSON.parse(o).key)===JSON.stringify(e)}catch(t){return!1}}))},rt={graph:!0,post:!0,index:!0,settings:!0},nt=function(t,e){var r=N(t)?JSON.parse(JSON.stringify(t)):{};return N(e)&&Object.entries(e).forEach((function(t){var e=y(t,2),n=e[0],o=e[1];if(n in rt)if(N(o)){var i=r[n]=r[n]||{};Object.keys(o).forEach((function(t){i[t]=!0}))}else r[n]=!0;else r[n]=!0})),r},ot=function t(e){return Object.freeze(e),Object.keys(e).forEach((function(r){(function(t,e){return!!Object.getOwnPropertyDescriptor(t,e).get})(e,r)||"object"!==d(e[r])||Object.isFrozen(e[r])||t(e[r])})),e},it="$$typeof",at=function(t){return null!==t&&"object"===d(t)&&!!t[it]},ct=function t(e){return Array.isArray(e)?e.map((function(e){return t(e)})):e instanceof Map?new Map(p(e.entries()).map((function(e){var r=y(e,2),n=r[0],o=r[1];return[t(n),t(o)]}))):e instanceof Set?new Set(p(e).map((function(e){return t(e)}))):h.isBuffer(e)?h.from(e):e instanceof URL?new URL(e):e instanceof File?new File([e],e.name,{type:e.type}):e instanceof Blob?new Blob([e],{type:e.type}):e instanceof Uint8Array||e instanceof ArrayBuffer?e.slice(0):e instanceof f.ethers.BigNumber?e:e instanceof Date?new Date(e):e instanceof WebSocket?e:N(e)?at(e)?e:Object.fromEntries(Object.entries(e).map((function(e){var r=y(e,2),n=r[0],o=r[1];return[n,t(o)]}))):void 0===e||"function"==typeof e?e:JSON.parse(JSON.stringify(e))},ut=l(),st=n(764).lW;function lt(t){return lt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lt(t)}function ft(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function ht(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function mt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function gt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){mt(i,n,o,a,c,"next",t)}function c(t){mt(i,n,o,a,c,"throw",t)}a(void 0)}))}}var bt=function(t,e,r,n){return{type:"FunctionCall",params:{methodName:t,args:e,gas:r,deposit:n}}},wt={networkId:"testnet",nodeUrl:"https://rpc.testnet.near.org",archivalNodeUrl:"https://rpc.testnet.internal.near.org",contractName:"v1.social08.testnet",walletUrl:"https://wallet.testnet.near.org",wrapNearAccountId:"wrap.testnet",apiUrl:"https://discovery-api.stage.testnet.near.org",enableWeb4FastRpc:!1},Et={networkId:"mainnet",nodeUrl:"https://rpc.mainnet.near.org",archivalNodeUrl:"https://rpc.mainnet.internal.near.org",contractName:"social.near",walletUrl:"https://wallet.near.org",wrapNearAccountId:"wrap.near",apiUrl:"https://api.near.social",enableWeb4FastRpc:!1},xt={get:!0,keys:!0},St=function(){var t=gt(vt().mark((function t(e,r,n,o,i){return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.apiUrl&&r in xt){t.next=2;break}return t.abrupt("return",i());case 2:return n=n||{},o&&(n.blockHeight=o),t.prev=4,t.next=7,fetch("".concat(e.apiUrl,"/").concat(r),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});case 7:return t.next=9,t.sent.json();case 9:return t.abrupt("return",t.sent);case 12:return t.prev=12,t.t0=t.catch(4),console.log("API call failed",r,n),console.error(t.t0),t.abrupt("return",i());case 17:case"end":return t.stop()}}),t,null,[[4,12]])})));return function(e,r,n,o,i){return t.apply(this,arguments)}}();function kt(t,e,r,n,o,i){return Ot.apply(this,arguments)}function Ot(){return(Ot=gt(vt().mark((function t(e,r,n,o,i,a){var c;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.selector;case 3:return t.next=5,t.sent.wallet();case 5:return c=t.sent,t.next=8,c.signAndSendTransaction({receiverId:r,actions:[bt(n,o,null!=i?i:w.mul(30).toFixed(0),null!=a?a:"0")]});case 8:return t.abrupt("return",t.sent);case 11:throw t.prev=11,t.t0=t.catch(0),t.t0;case 14:case"end":return t.stop()}}),t,null,[[0,11]])})))).apply(this,arguments)}function jt(t,e){return It.apply(this,arguments)}function It(){return(It=gt(vt().mark((function t(e,r){var n;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=new a.Account(e.nearConnection.connection,r),t.next=3,n.state();case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function Lt(t,e){return Ct.apply(this,arguments)}function Ct(){return(Ct=gt(vt().mark((function t(e,r){var n,o,i;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.selector;case 3:return t.next=5,t.sent.wallet();case 5:return n=t.sent,o=[],i=u()(0),r.forEach((function(t){var e,r=t.contractName,n=t.methodName,a=t.args,c=t.gas,u=t.deposit,s=i.add(c),l=bt(n,a,c.toFixed(0),u.toFixed(0));(null===(e=o[o.length-1])||void 0===e?void 0:e.receiverId)!==r||s.gt(E)?(o.push({receiverId:r,actions:[]}),i=c):i=s,o[o.length-1].actions.push(l)})),t.next=11,n.signAndSendTransactions({transactions:o});case 11:return t.abrupt("return",t.sent);case 14:throw t.prev=14,t.t0=t.catch(0),t.t0;case 17:case"end":return t.stop()}}),t,null,[[0,14]])})))).apply(this,arguments)}function At(t,e,r){var n=r.viewMethods,o=void 0===n?[]:n,i=r.changeMethods,a=void 0===i?[]:i,c={near:t,contractId:e};return o.forEach((function(r){c[r]=function(n){return t.viewCall(e,r,n)}})),a.forEach((function(r){c[r]=function(n,o,i){return t.functionCall(e,r,n,o,i)}})),c}function Pt(t,e,r,n,o,i){return Nt.apply(this,arguments)}function Nt(){return(Nt=gt(vt().mark((function t(e,r,n,o,i,a){var c;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=i||{},t.next=3,e.query({request_type:"call_function",account_id:n,method_name:o,args_base64:st.from(JSON.stringify(i)).toString("base64"),block_id:r,finality:a});case 3:return c=t.sent,t.abrupt("return",c.result&&c.result.length>0&&JSON.parse(st.from(c.result).toString()));case 5:case"end":return t.stop()}}),t)})))).apply(this,arguments)}function Tt(t,e,r,n){return _t.apply(this,arguments)}function _t(){return(_t=gt(vt().mark((function t(e,r,n,o){var i;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=n||{},i=new URL("https://rpc.web4.near.page/account/".concat(e,"/view/").concat(r)),Object.entries(n).forEach((function(t){var e=dt(t,2),r=e[0],n=e[1];void 0!==n&&i.searchParams.append("".concat(r,".json"),JSON.stringify(n))})),t.prev=3,t.next=6,fetch(i.toString());case 6:return t.next=8,t.sent.json();case 8:return t.abrupt("return",t.sent);case 11:return t.prev=11,t.t0=t.catch(3),console.log("Web4 view call failed",i.toString()),console.error(t.t0),t.abrupt("return",o());case 16:case"end":return t.stop()}}),t,null,[[3,11]])})))).apply(this,arguments)}function Bt(t){return Ut.apply(this,arguments)}function Ut(){return(Ut=gt(vt().mark((function t(e){var r,n,o,i,c,u,s,l,f,h,p,d;return vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.networkId,o=e.config,i=e.keyStore,c=e.selector,u=e.walletConnectCallback,s=void 0===u?function(){}:u,l=e.customElements,f=void 0===l?{}:l,o||(o={},n||(o.networkId="mainnet")),n&&!o.networkId&&(o.networkId=n),"mainnet"===o.networkId?o=Object.assign({},Et,o):"testnet"===o.networkId&&(o=Object.assign({},wt,o)),o.walletConnectCallback=s,o.customElements=Object.assign({},o.customElements,f),i=null!==(r=i)&&void 0!==r?r:new a.keyStores.BrowserLocalStorageKeyStore,t.next=9,a.connect(Object.assign({deps:{keyStore:i}},o));case 9:return h=t.sent,(p={config:o,selector:c,keyStore:i,nearConnection:h}).nearArchivalConnection=a.Connection.fromConfig({networkId:o.networkId,provider:{type:"JsonRpcProvider",args:{url:o.archivalNodeUrl}},signer:{type:"InMemorySigner",keyStore:i}}),d=function(t){var e;return"optimistic"===t||"final"===t?{finality:t,blockId:void 0}:null!=t?{finality:void 0,blockId:parseInt(t)}:{finality:null!==(e=o.defaultFinality)&&void 0!==e?e:"optimistic",blockId:void 0}},p.viewCall=function(t,e,r,n){var i=d(n),a=i.blockId,c=i.finality,u=function(){return Pt(a?p.nearArchivalConnection.provider:p.nearConnection.connection.provider,null!=a?a:void 0,t,e,r,c)},s=function(){return"optimistic"===c&&o.enableWeb4FastRpc?Tt(t,e,r,u):u()};return t!==o.contractName||!a&&"final"!==c?s():St(o,e,r,a,s)},p.block=function(t){var e=d(t);return(e.blockId?p.nearArchivalConnection.provider:p.nearConnection.connection.provider).block(e)},p.functionCall=function(t,e,r,n,o){return kt(p,t,e,r,n,o)},p.sendTransactions=function(t){return Lt(p,t)},p.contract=At(p,o.contractName,{viewMethods:["storage_balance_of","get","get_num_accounts","get_accounts_paged","is_write_permission_granted","keys"],changeMethods:["set","grant_write_permission","storage_deposit","storage_withdraw"]}),p.accountState=function(t){return jt(p,t)},t.abrupt("return",p);case 20:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var Rt=(0,i.singletonHook)({},(function(){var t=dt((0,e.useState)(null),2),r=t[0],n=t[1];return{nearPromise:r,initNear:(0,e.useMemo)((function(){return function(t){var e,r=(null===(e=t.config)||void 0===e?void 0:e.networkId)||t.networkId,o="mainnet"!==r&&"testnet"!==r,i="testnet"===r?t:ht(ht({},t),{},{networkId:"testnet",config:void 0,keyStore:void 0,selector:void 0}),a="mainnet"===r?t:ht(ht({},t),{},{networkId:"mainnet",config:void 0,keyStore:void 0,selector:void 0});return n(Promise.all([i,a].concat(o?t:[]).map(Bt)).then((function(t){return t.map((function(t){return ht(ht({},t),{},{default:t.config.networkId===r})}))})))}}),[])}})),Mt=[],Ft=(0,i.singletonHook)(Mt,(function(){var t=dt((0,e.useState)(Mt),2),r=t[0],n=t[1],o=Rt().nearPromise;return(0,e.useEffect)((function(){o&&o.then(n)}),[o]),r?{default:r.find((function(t){return t.default})),testnet:r.find((function(t){return"testnet"===t.config.networkId})),mainnet:r.find((function(t){return"mainnet"===t.config.networkId}))}:r})),qt=function(t){return Ft()[t||"default"]||null};const Gt=require("local-storage");var Dt,Jt,zt,$t,Wt=n.n(Gt);function Kt(t){return Kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kt(t)}function Xt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ht(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ht(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ht(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function Yt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Zt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Yt(i,n,o,a,c,"next",t)}function c(t){Yt(i,n,o,a,c,"throw",t)}a(void 0)}))}}var Qt="near-social-vm:v01:",te=Qt+":accountId:",ee=Qt+":pretendAccountId:",re={loading:!0,signedAccountId:null!==(Dt=Wt().get(te))&&void 0!==Dt?Dt:void 0,pretendAccountId:null!==(Jt=Wt().get(ee))&&void 0!==Jt?Jt:void 0,accountId:null!==(zt=null!==($t=Wt().get(ee))&&void 0!==$t?$t:Wt().get(te))&&void 0!==zt?zt:void 0,state:null,near:null};function ne(t,e){return oe.apply(this,arguments)}function oe(){return(oe=Zt(Vt().mark((function t(e,r){var n,o,i,c,u,s,l,f,h,p,d;return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.connectedContractId=null===(n=r)||void 0===n||null===(o=n.contract)||void 0===o?void 0:o.contractId,!e.connectedContractId||e.connectedContractId===e.config.contractName){t.next=12;break}return t.next=4,e.selector;case 4:return l=t.sent,t.next=7,l.wallet();case 7:return f=t.sent,t.next=10,f.signOut();case 10:e.connectedContractId=null,r=l.store.getState();case 12:if(e.accountId=null!==(i=null===(c=r)||void 0===c||null===(u=c.accounts)||void 0===u||null===(s=u[0])||void 0===s?void 0:s.accountId)&&void 0!==i?i:null,e.accountId){e.publicKey=null;try{"here-wallet"===(null===(h=r)||void 0===h?void 0:h.selectedWalletId)&&(p=Wt().get("herewallet:keystore"),e.publicKey=a.KeyPair.fromString(p[e.config.networkId].accounts[e.accountId]).getPublicKey())}catch(t){console.error(t)}if(!e.publicKey)try{e.publicKey=a.KeyPair.fromString(Wt().get("meteor-wallet"===(null===(d=r)||void 0===d?void 0:d.selectedWalletId)?"_meteor_wallet".concat(e.accountId,":").concat(e.config.networkId):"near-api-js:keystore:".concat(e.accountId,":").concat(e.config.networkId))).getPublicKey()}catch(t){console.error(t)}}case 14:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var ie=function(){var t=Zt(Vt().mark((function t(e,r){var n,o,i,a,c,u,s,l;return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((o=e.accountId)?(Wt().set(te,o),e.config.walletConnectCallback(o)):Wt().remove(te),i=null!==(n=Wt().get(ee))&&void 0!==n?n:void 0,a={loading:!1,signedAccountId:o,pretendAccountId:i,accountId:null!=i?i:o,state:null,near:e,refresh:function(){var t=Zt(Vt().mark((function t(){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,ie(e,r);case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),startPretending:function(){var t=Zt(Vt().mark((function t(n){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n?Wt().set(ee,n):Wt().remove(ee),t.next=3,ie(e,r);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()},!o){t.next=13;break}return t.next=7,Promise.all([e.contract.storage_balance_of({account_id:o}),e.accountState(o)]);case 7:c=t.sent,u=Xt(c,2),s=u[0],l=u[1],a.storageBalance=s,a.state=l;case 13:r(a);case 14:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),ae=(0,i.singletonHook)(re,(function(){var t=Xt((0,e.useState)(re),2),r=t[0],n=t[1],o=qt();return(0,e.useEffect)((function(){o&&o.selector.then((function(t){t.store.observable.subscribe(function(){var t=Zt(Vt().mark((function t(e){return Vt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,ne(o,e);case 2:return t.prev=2,t.next=5,ie(o,n);case 5:t.next=10;break;case 7:t.prev=7,t.t0=t.catch(2),console.error(t.t0);case 10:case"end":return t.stop()}}),t,null,[[2,7]])})));return function(e){return t.apply(this,arguments)}}())}))}),[o]),r})),ce=function(t){var e=qt(),r=ae();if(e&&(!t||e.config.networkId===t))return r.accountId};const ue=require("react-bootstrap/Modal");var se=n.n(ue);const le=require("remark-gfm");var fe=n.n(le);const he=require("react-markdown");var pe=n.n(he);const de=require("react-syntax-highlighter"),ye=require("react-syntax-highlighter/dist/esm/styles/prism"),ve=require("mdast-util-find-and-replace");var me=/@((?:(?:[a-z\d]+[-_])*[a-z\d]+\.)*(?:[a-z\d]+[-_])*[a-z\d]+)/gi;function ge(){function t(t,e,r){if(/[\w`]/.test(r.input.charAt(r.index-1))||/[/\w`]/.test(r.input.charAt(r.index+t.length))||e.length<2||e.length>64)return!1;var n={type:"text",value:t};return{type:"strong",children:[n],data:{hProperties:{accountId:e}}}}return function(e){return(0,ve.findAndReplace)(e,me,t),e}}var be=/#(\w+)/gi;function we(){function t(t,e,r){if(/[\w`]/.test(r.input.charAt(r.index-1))||/[/\w`]/.test(r.input.charAt(r.index+t.length)))return!1;var n={type:"text",value:t};return{type:"strong",children:[n],data:{hProperties:{hashtag:e}}}}return function(e){return(0,ve.findAndReplace)(e,be,t),e}}var Ee=["node","children"],xe=["node"],Se=["node"],ke=["node"],Oe=["node"],je=["node","inline","className","children"];function Ie(){return Ie=Object.assign?Object.assign.bind():function(t){for(var e=1;e=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var Ce=function(t){var e=t.onLinkClick,n=t.text,o=t.onMention,i=t.onHashtag,a=t.syntaxHighlighterProps;return r().createElement(pe(),{plugins:[],rehypePlugins:[],remarkPlugins:[fe(),ge,we],children:n,components:{strong:function(t){var e,n,a,c,u=t.node,s=t.children,l=Le(t,Ee);return o&&null!==(e=u.properties)&&void 0!==e&&e.accountId?o(null===(a=u.properties)||void 0===a?void 0:a.accountId):i&&null!==(n=u.properties)&&void 0!==n&&n.hashtag?i(null===(c=u.properties)||void 0===c?void 0:c.hashtag):r().createElement("strong",l,s)},a:function(t){t.node;var n=Le(t,xe);return e?r().createElement("a",Ie({onClick:e},n)):r().createElement("a",Ie({target:"_blank"},n))},img:function(t){t.node;var e=Le(t,Se);return r().createElement("img",Ie({className:"img-fluid"},e))},blockquote:function(t){t.node;var e=Le(t,ke);return r().createElement("blockquote",Ie({className:"blockquote"},e))},table:function(t){t.node;var e=Le(t,Oe);return r().createElement("table",Ie({className:"table table-striped"},e))},code:function(t){t.node;var e=t.inline,n=t.className,o=t.children,i=Le(t,je),c=/language-(\w+)/.exec(n||""),u=null!=a?a:{},s=u.wrapLines,l=u.lineProps,f=u.showLineNumbers,h=u.lineNumberStyle;return!e&&c?r().createElement(de.Prism,Ie({children:String(o).replace(/\n$/,""),style:ye.tomorrow,language:c[1],PreTag:"div",wrapLines:s,lineProps:l,showLineNumbers:f,lineNumberStyle:h},i)):r().createElement("code",Ie({className:n},i),o)}}})};const Ae=require("react-uuid");var Pe=n.n(Ae);function Ne(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function De(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Je(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){De(i,n,o,a,c,"next",t)}function c(t){De(i,n,o,a,c,"throw",t)}a(void 0)}))}}var ze=x.mul(2e3),$e=x.mul(500),We=x.mul(500),Ke=x.mul(500),Xe=function(){var t=Je(Ge().mark((function t(e,r){var n;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=X(r),t.next=3,e.contract.get({keys:n});case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),He=function(){var t=Je(Ge().mark((function t(e,r,n,o){var i,a,c,s,l,f,h,p,d,y;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.selector;case 2:if(i=e.accountId){t.next=6;break}return alert("You're not logged in. Sign in to commit data."),t.abrupt("return");case 6:return t.next=8,Promise.all([e.viewCall(e.config.contractName,"get_account_storage",{account_id:i}),i!==r?e.viewCall(e.config.contractName,"is_write_permission_granted",{predecessor_id:i,key:r}):Promise.resolve(!0)]);case 8:if(a=t.sent,w=2,c=function(t){if(Array.isArray(t))return t}(b=a)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(b,w)||function(t,e){if(t){if("string"==typeof t)return qe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qe(t,e):void 0}}(b,w)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),s=c[0],l=c[1],f=u()((null==s?void 0:s.available_bytes)||"0"),v={},m=r,g=Y(n),(m=function(t){var e=function(t,e){if("object"!==Fe(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Fe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Fe(e)?e:String(e)}(m))in v?Object.defineProperty(v,m,{value:g,enumerable:!0,configurable:!0,writable:!0}):v[m]=g,h=v,p={},o){t.next=20;break}return t.next=18,Xe(e,h);case 18:p=t.sent,h=H(h,p);case 20:return d=x.mul(K(h,p)).add(s?u()(0):$e).add(l?u()(0):Ke).add(We),y=R(d.sub(f.mul(x)),s?l?u()(0):u()(1):ze),t.abrupt("return",{originalData:n,accountId:r,accountStorage:s,availableBytes:f,currentData:p,data:h,expectedDataBalance:d,deposit:y,permissionGranted:l});case 23:case"end":return t.stop()}var v,m,g,b,w}),t)})));return function(e,r,n,o){return t.apply(this,arguments)}}(),Ve=function(){var t=Je(Ge().mark((function t(e,r,n){return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.log("Committing data",r),t.next=3,e.contract.set({data:r},w.mul(100).toFixed(0),n.toFixed(0));case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}(),Ye=function(){var t=Je(Ge().mark((function t(e,r,n){var o,i;return Ge().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.selector;case 2:return t.next=4,t.sent.wallet();case 4:return o=t.sent,i=[],e.publicKey&&(i.push(bt("grant_write_permission",{public_key:e.publicKey.toString(),keys:[e.accountId]},w.mul(100).toFixed(0),n.gt(0)?n.toFixed(0):"1")),n=u()(0)),i.push(bt("set",{data:r},w.mul(100).toFixed(0),n.gt(0)?n.toFixed(0):"1")),t.next=10,o.signAndSendTransaction({receiverId:e.config.contractName,actions:i});case 10:return t.abrupt("return",t.sent);case 11:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}();const Ze=require("react-bootstrap"),Qe=require("idb");function tr(t){return tr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tr(t)}function er(t,e){if(t){if("string"==typeof t)return rr(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?rr(t,e):void 0}}function rr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function or(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function ir(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){or(i,n,o,a,c,"next",t)}function c(t){or(i,n,o,a,c,"throw",t)}a(void 0)}))}}function ar(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"cacheDb",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3e3;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.dbPromise=(0,Qe.openDB)(e,1,{upgrade:function(t){t.createObjectStore(dr)}}),this.cache={},this.finalSynchronizationDelayMs=r}var e,r,n,o,i;return e=t,r=[{key:"invalidateCallbacks",value:function(t,e){var r;if(null!==(r=t.invalidationCallbacks)&&void 0!==r&&r.length){var n=t.invalidationCallbacks;t.invalidationCallbacks=[],setTimeout((function(){n.forEach((function(t){try{t()}catch(t){}}))}),e?this.finalSynchronizationDelayMs+50:50)}}},{key:"innerGet",value:(i=ir(nr().mark((function t(e){return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.dbPromise;case 2:return t.abrupt("return",t.sent.get(dr,e));case 3:case"end":return t.stop()}}),t,this)}))),function(t){return i.apply(this,arguments)})},{key:"innerSet",value:(o=ir(nr().mark((function t(e,r){return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.dbPromise;case 2:return t.abrupt("return",t.sent.put(dr,r,e));case 3:case"end":return t.stop()}}),t,this)}))),function(t,e){return o.apply(this,arguments)})},{key:"cachedPromise",value:function(t,e,r,n){var o=this;t=JSON.stringify(t);var i=this.cache[t]||{status:lr,invalidationCallbacks:[],result:null,time:(new Date).getTime()};return this.cache[t]=i,N(r)||(r={onInvalidate:r}),r.onInvalidate&&i.invalidationCallbacks.push(r.onInvalidate),!i.subscription&&r.subscribe&&function t(){i.subscription=setTimeout((function(){document.hidden?t():(i.subscription=null,i.status=pr,o.invalidateCallbacks(i,!1))}),5e3)}(),i.status===fr||i.status===hr&&i.time+3e5>(new Date).getTime()||(i.status!==lr||null!=n&&n.ignoreCache||this.innerGet(t).then((function(t){(t||null!=n&&n.forceCachedValue)&&i.status===fr&&(i.result=t,i.time=(new Date).getTime(),o.invalidateCallbacks(i,!1))})),i.status=fr,e&&e().then((function(e){i.status=hr,i.time=(new Date).getTime(),JSON.stringify(e)!==JSON.stringify(i.result)&&(i.result=e,o.innerSet(t,e),o.invalidateCallbacks(i,!1))})).catch((function(e){console.error(e),i.status=hr;var r=void 0;i.time=(new Date).getTime(),JSON.stringify(r)!==JSON.stringify(i.result)&&(i.result=r,o.innerSet(t,r),o.invalidateCallbacks(i,!1))}))),i.result}},{key:"invalidateCache",value:function(t,e){var r=this,n=[],o="".concat(t.config.apiUrl,"/index");Object.keys(this.cache).forEach((function(r){var i;try{i=JSON.parse(r)}catch(t){return void console.error("Key deserialization failed",r)}if(i.action===cr&&i.contractId===t.config.contractName&&(!i.blockId||"optimistic"===i.blockId||"final"===i.blockId))try{var a;(null===(a=i.args)||void 0===a?void 0:a.keys).some((function(t){return tt(i.methodName,t,e)}))&&n.push([r,"final"===i.blockId])}catch(t){}if(i.action===ur&&i.url===o)try{var c,u=JSON.parse(null===(c=i.options)||void 0===c?void 0:c.body),s=u.action,l=u.key;s&&l&&et(s,l,e)&&n.push([r,!0])}catch(t){}})),console.log("Cache invalidation",n),n.forEach((function(t){var e,n,o=(n=2,function(t){if(Array.isArray(t))return t}(e=t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(e,n)||er(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],c=r.cache[i];c.status=pr,r.invalidateCallbacks(c,a)}))}},{key:"cachedBlock",value:function(t,e,r,n){return this.cachedPromise({action:"Block",blockId:e},(function(){return t.block(e)}),r,n)}},{key:"cachedViewCall",value:function(t,e,r,n,o,i,a){return this.cachedPromise({action:cr,contractId:e,methodName:r,args:n,blockId:o},(function(){return t.viewCall(e,r,n,o)}),i,a)}},{key:"asyncFetch",value:(n=ir(nr().mark((function t(e,r){var n,o,i,a,c,u,s,l,f,h,p;return nr().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return u=null===(n=r)||void 0===n||null===(o=n.responseType)||void 0===o?void 0:o.toLowerCase(),r={method:null===(i=r)||void 0===i?void 0:i.method,headers:null===(a=r)||void 0===a?void 0:a.headers,body:null===(c=r)||void 0===c?void 0:c.body},t.prev=2,t.next=5,fetch(e,r);case 5:if(s=t.sent,l=s.status,f=s.ok,h=s.headers.get("content-type"),!f){t.next=15;break}return t.next=12,"arraybuffer"===u?s.arrayBuffer():"blob"===u?s.blob():"formdata"===u?s.formData():"json"===u?s.json():"text"===u?s.text():h&&-1!==h.indexOf("application/json")?s.json():s.text();case 12:t.t0=t.sent,t.next=16;break;case 15:t.t0=void 0;case 16:return p=t.t0,t.abrupt("return",{ok:f,status:l,contentType:h,body:p});case 20:return t.prev=20,t.t1=t.catch(2),t.abrupt("return",{ok:!1,error:t.t1.message});case 23:case"end":return t.stop()}}),t,null,[[2,20]])}))),function(t,e){return n.apply(this,arguments)})},{key:"cachedFetch",value:function(t,e,r,n){var o=this;return this.cachedPromise({action:ur,url:t,options:e},(function(){return o.asyncFetch(t,e)}),r,n)}},{key:"cachedCustomPromise",value:function(t,e,r,n){return this.cachedPromise({action:"CustomPromise",key:t},(function(){return e()}),r,n)}},{key:"socialGet",value:function(t,e,r,n,o,i,a){if(!t)return null;var c={keys:e=(e=Array.isArray(e)?e:[e]).map((function(t){return r?"".concat(t,"/**"):"".concat(t)})),options:o},u=this.cachedViewCall(t,t.config.contractName,"get",c,n,i,a);if(null===u)return null;if(1===e.length)for(var s=e[0].split("/"),l=0;l=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:j(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function Or(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function jr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ir(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ir(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ir(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,xr),p=jr((0,e.useState)(null),2),d=p[0],y=p[1];return r().createElement(r().Fragment,null,r().createElement("button",Sr({},h,{disabled:s||!o||!!d||!n,onClick:function(t){t.preventDefault(),y("function"==typeof o?o():o),a&&a()}}),!!d&&L,i),r().createElement(Pr,{show:!!d,widgetSrc:l,data:d,force:f,onHide:function(){return y(null)},onCancel:u,onCommit:c}))};const Tr=require("react-bootstrap-typeahead"),_r=require("styled-components");var Br=n.n(_r);const Ur=require("elliptic"),Rr=require("bn.js");var Mr=n.n(Rr);const Fr=require("tweetnacl"),qr=require("iframe-resizer-react");var Gr=n.n(qr);function Dr(){return Dr=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function Un(t,e,r){return Un=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}()?Reflect.construct.bind():function(t,e,r){var n=[null];n.push.apply(n,e);var o=new(Function.bind.apply(t,n));return r&&Rn(o,r.prototype),o},Un.apply(null,arguments)}function Rn(t,e){return Rn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Rn(t,e)}function Mn(){return Mn=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r0?(c[u]={uploading:!0,cid:null},n.vm.setReactState(n.vm.state.state),$(t[0]).then((function(t){if(n.vm.alive){var e=n.vm.vmStack.resolveMemberExpression(i.expression,{requireState:!0,left:!0});e.obj[e.key]={cid:t},n.vm.setReactState(n.vm.state.state)}}))):(c[u]=null,n.vm.setReactState(n.vm.state.state))}}}else{var h=n.resolveMemberExpression(i.expression,{requireState:!0,left:!0}),p=h.obj,d=h.key;s.value=(null==p?void 0:p[d])||"",s.onChange=function(t){t.preventDefault(),p[d]=t.target.value,n.vm.setReactState(n.vm.state.state)}}})),s.key=null!==(e=s.key)&&void 0!==e?e:"".concat(this.vm.widgetSrc,"-").concat(o,"-").concat(this.vm.gIndex),delete s.dangerouslySetInnerHTML;var h,p=(0,_r.isStyledComponent)(u)&&(null==u?void 0:u.target)||o;if(s.as&&!no[s.as]&&delete s.as,s.forwardedAs&&!no[s.forwardedAs]&&delete s.forwardedAs,"img"===p?s.alt=null!==(h=s.alt)&&void 0!==h?h:"not defined":"a"===p?Object.entries(s).forEach((function(t){var e=Jn(t,2),r=e[0],n=e[1];"href"===r.toLowerCase()&&(s[r]=(0,Ue.sanitizeUrl)(n))})):"Widget"===o?(s.depth=this.vm.depth+1,s.config=[s.config].concat(Fn(this.vm.widgetConfigs)).filter(Boolean)):"CommitButton"===o&&(s.networkId=this.vm.networkId),!1===i&&t.children.length)throw new Error("And element '"+o+"' contains children, but shouldn't");if("GlobalStateProvider"===o){if(!s.value)throw new Error("GlobalStateProvider requires a value prop");if(!P(s.value)||2!==s.value.length)throw new Error("Invalid value prop for GlobalStateProvider");this.vm.globalStateContext=s.value}var d,y,v,m,g=t.children.map((function(t,e){return n.vm.gIndex=e,n.executeExpression(t)}));if(a)return a(Xn(Xn({},s),{},{children:g}));if(u)return(0,_r.isStyledComponent)(u)?r().createElement.apply(r(),[u,Xn({},s)].concat(Fn(g))):u(Xn({children:g},s));if("Widget"===o)return r().createElement(Bo,s);if("CommitButton"===o)return r().createElement(Nr,Mn({},s,{widgetSrc:this.vm.widgetSrc}),g);if("InfiniteScroll"===o)return r().createElement(Me(),s,g);if("Tooltip"===o)return r().createElement(Ze.Tooltip,s,g);if("OverlayTrigger"===o)return r().createElement(Ze.OverlayTrigger,s,g.filter((function(t){return!T(t)||!!t.trim()}))[0]);if("Typeahead"===o)return r().createElement(Tr.Typeahead,s);if("Markdown"===o)return r().createElement(Ce,s);if("Fragment"===o)return r().createElement(r().Fragment,s,g);if("IpfsImageUpload"===o)return r().createElement("div",{className:"d-inline-block",key:s.key},(null===(d=l.img)||void 0===d?void 0:d.cid)&&r().createElement("div",{className:"d-inline-block me-2 overflow-hidden align-middle",style:{width:"2.5em",height:"2.5em"}},r().createElement("img",{className:"rounded w-100 h-100",style:{objectFit:"cover"},src:W(null===(y=l.img)||void 0===y?void 0:y.cid),alt:"upload preview"})),r().createElement(Be(),Mn({multiple:!1,accepts:["image/*"],minFileSize:1,clickable:!0},s),null!==(v=l.img)&&void 0!==v&&v.uploading?r().createElement(r().Fragment,null,L," Uploading"):null!==(m=l.img)&&void 0!==m&&m.cid?"Replace":"Upload an Image"));if("Files"===o)return r().createElement(Be(),s,g);if("iframe"===o)return r().createElement(Hr,s);if("Web3Connect"===o)return r().createElement(on,s);if(c){if(o.includes("Portal"))throw new Error("Radix's \"".concat(o,"\" component is not allowed. This portal element is an optional Radix feature and isn't necessary for most use cases."));var b=g;return Array.isArray(b)&&(1===(b=b.filter((function(t){return"string"!=typeof t||""!==t.trim()}))).length?b=b[0]:0===b.length&&(b=void 0)),r().createElement(c,s,b)}if(!0===i)return r().createElement.apply(r(),[o,Xn({},s)].concat(Fn(g)));if(!1===i)return r().createElement(o,Xn({},s));throw new Error("Unsupported element: "+o)}},{key:"resolveKey",value:function(t,e){var r=e||"Identifier"!==t.type&&"JSXIdentifier"!==t.type?this.executeExpression(t):t.name;return ho(r),r}},{key:"callFunction",value:function(t,e,r,n,o){var i=this,a=ao[t];if(!0===a||void 0===a){if("Social"===t&&"getr"===e||"socialGetr"===e){if(r.length<1)throw new Error("Missing argument 'keys' for Social.getr");return this.vm.cachedSocialGet(r[0],!0,r[1],r[2],r[3])}if("Social"===t&&"get"===e||"socialGet"===e){if(r.length<1)throw new Error("Missing argument 'keys' for Social.get");return this.vm.cachedSocialGet(r[0],!1,r[1],r[2],r[3])}if("Social"===t&&"keys"===e){var c;if(r.length<1)throw new Error("Missing argument 'keys' for Social.keys");return(c=this.vm).cachedSocialKeys.apply(c,Fn(r))}if("Social"===t&&"index"===e){var u;if(r.length<2)throw new Error("Missing argument 'action' and 'key` for Social.index");return(u=this.vm).cachedIndex.apply(u,Fn(r))}if("Social"===t&&"set"===e){if(r.length<1)throw new Error("Missing argument 'data' for Social.set");return this.vm.socialSet(r[0],r[1])}if("Near"===t&&"view"===e){if(r.length<2)throw new Error("Method: Near.view. Required arguments: 'contractName', 'methodName'. Optional: 'args', 'blockId/finality', 'subscribe', 'cacheOptions'");var s=Jn(r,6),l=s[0],f=s[1],h=s[2],p=s[3],d=s[4],y=s[5];return this.vm.cachedNearView(l,f,h,p,mo(d,p),y)}if("Near"===t&&"asyncView"===e){var v;if(r.length<2)throw new Error("Method: Near.asyncView. Required arguments: 'contractName', 'methodName'. Optional: 'args', 'blockId/finality'");return(v=this.vm).asyncNearView.apply(v,Fn(r))}if("Near"===t&&"block"===e){var m=Jn(r,3),g=m[0],b=m[1],w=m[2];return this.vm.cachedNearBlock(g,mo(b,g),w)}if("Near"===t&&"call"===e){if(1===r.length){if(N(r[0]))return this.vm.confirmTransactions([r[0]]);if(P(r[0]))return this.vm.confirmTransactions(r[0]);throw new Error("Method: Near.call. Required argument: 'tx/txs'. A single argument call requires an TX object or an array of TX objects.")}var E;if(r.length<2||r.length>5)throw new Error("Method: Near.call. Required argument: 'contractName'. If the first argument is a string: 'methodName'. Optional: 'args', 'gas' (defaults to 300Tg), 'deposit' (defaults to 0)");return this.vm.confirmTransactions([{contractName:r[0],methodName:r[1],args:null!==(E=r[2])&&void 0!==E?E:{},gas:r[3],deposit:r[4]}])}if("JSON"===t&&"stringify"===e||"stringify"===e){if(r.length<1)throw new Error("Missing argument 'obj' for JSON.stringify");return po(r[0]),JSON.stringify(r[0],r[1],r[2])}if("JSON"===t&&"parse"===e){if(r.length<1)throw new Error("Missing argument 's' for JSON.parse");try{var x=JSON.parse(r[0]);return yo(x),x}catch(t){return null}}else if("Object"===t){if("keys"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.keys");return po(r[0]),Object.keys(r[0])}if("values"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.values");return po(r[0]),Object.values(r[0])}if("entries"===e){if(r.length<1)throw new Error("Missing argument 'obj' for Object.entries");return po(r[0]),Object.entries(r[0])}if("assign"===e){r.forEach((function(t){return po(t)}));var S=Object.assign.apply(Object,Fn(r));return yo(S),S}if("fromEntries"===e){var k=Object.fromEntries(r[0]);return yo(k),k}}else{if("State"===t&&"init"===e||"initState"===e){if(r.length<1)throw new Error("Missing argument 'initialState' for State.init");if(null===r[0]||"object"!==Wn(r[0])||at(r[0]))throw new Error("'initialState' is not an object");if(void 0===this.vm.state.state){var O=r[0];this.vm.state.state=O,this.vm.setReactState(O)}return this.vm.state.state}if("State"===t&&"update"===e){var j;if(N(r[0]))this.vm.state.state=null!==(j=this.vm.state.state)&&void 0!==j?j:{},Object.assign(this.vm.state.state,r[0]);else if(r[0]instanceof Function){var I;this.vm.state.state=null!==(I=this.vm.state.state)&&void 0!==I?I:{},this.vm.state.state=r[0](this.vm.state.state)}if(void 0===this.vm.state.state)throw new Error("The state was not initialized");return this.vm.setReactState(this.vm.state.state),this.vm.state.state}if("State"===t&&"get"===e)return this.vm.state.state;if("Storage"===t&&"privateSet"===e){if(r.length<2)throw new Error("Missing argument 'key' or 'value' for Storage.privateSet");return this.vm.storageSet({src:this.vm.widgetSrc,type:eo},r[0],r[1])}if("Storage"===t&&"privateGet"===e){if(r.length<1)throw new Error("Missing argument 'key' for Storage.privateGet");return this.vm.storageGet({src:this.vm.widgetSrc,type:eo},r[0])}if("Storage"===t&&"set"===e){if(r.length<2)throw new Error("Missing argument 'key' or 'value' for Storage.set");return this.vm.storageSet({src:this.vm.widgetSrc,type:ro},r[0],r[1])}if("Storage"===t&&"get"===e){var L;if(r.length<1)throw new Error("Missing argument 'key' for Storage.get");return this.vm.storageGet({src:null!==(L=r[1])&&void 0!==L?L:this.vm.widgetSrc,type:ro},r[0])}var C,A,B;if("console"===t&&"log"===e)return(C=console).log.apply(C,[this.vm.widgetSrc].concat(Fn(r)));if("clipboard"===t&&"writeText"===e)return this.isTrusted?(A=navigator.clipboard).writeText.apply(A,Fn(r)):Promise.reject(new Error("Not trusted (not a click)"));if("VM"===t&&"require"===e)return(B=this.vm).vmRequire.apply(B,Fn(r));if("Ethers"===t){if("provider"===e)return this.vm.ethersProvider;if("setChain"===e){var U,R=null===(U=this.vm.ethersProviderContext)||void 0===U?void 0:U.setChain;if(!R)throw new Error("The gateway doesn't support `setChain` operation");return R.apply(void 0,Fn(r))}return this.vm.cachedEthersCall(e,r)}if("useGlobalState"===e){if(r.length<1||!T(r[0]))throw new Error("Method: useGlobalState. Requires string argument");var M=Jn(this.vm.globalStateContext,2),F=M[0],q=M[1];return[F[r[0]],function(t){return q(Xn(Xn({},F),{},Hn({},r[0],t)))}]}if("WebSocket"===t){if("WebSocket"===e){var G=Un(WebSocket,Fn(r));return this.vm.websockets.push(G),G}throw new Error("Unsupported WebSocket method")}if(void 0===a){if(co.hasOwnProperty(e))return co[e].apply(co,Fn(r));if("fetch"===e){var D;if(r.length<1)throw new Error("Method: fetch. Required arguments: 'url'. Optional: 'options'");return(D=this.vm).cachedFetch.apply(D,Fn(r))}if("asyncFetch"===e){var J;if(r.length<1)throw new Error("Method: asyncFetch. Required arguments: 'url'. Optional: 'options'");return(J=this.vm).asyncFetch.apply(J,Fn(r))}if("useCache"===e){var z;if(r.length<2)throw new Error("Method: useCache. Required arguments: 'promiseGenerator', 'dataKey'. Optional: 'options'");if(!_(r[0]))throw new Error("Method: useCache. The first argument 'promiseGenerator' must be a function");return(z=this.vm).useCache.apply(z,Fn(r))}if("useState"===e){if(this.prevStack)throw new Error("Method: useState. The hook can an only be called from the top of the stack");if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");if(r.length<1)throw new Error("Method: useState. Required arguments: 'initialState'");var $=r[0],W=this.hookIndex++,K=this.vm.hooks[W];if(K)return[K.state,K.setState];var X=function t(e){var r;return _(e)&&(e=e(null===(r=i.vm.hooks[W])||void 0===r?void 0:r.state)),i.vm.setReactHook(W,{state:e,setState:t}),e};return[X($),X]}if("useEffect"===e){if(this.prevStack)throw new Error("Method: useEffect. The hook can an only be called from the top of the stack");if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");if(r.length<1)throw new Error("Method: useEffect. Required arguments: 'setup'. Optional: 'dependencies'");var H=r[0];if(!_(H))throw new Error("Method: useEffect. The first argument 'setup' must be a function");var V=this.hookIndex++,Y=r[1],Z=this.vm.hooks[V];if(Z){var Q=Z.dependencies;if(void 0!==Q&&ut(Q,Y))return}var tt=null==Z?void 0:Z.cleanup;return _(tt)&&tt(),void this.vm.setReactHook(V,{cleanup:H(),dependencies:Y})}if("useMemo"===e||"useCallback"===e){if(this.prevStack)throw new Error("Method: ".concat(e,". The hook can only be called from the top of the stack"));if(!this.vm.hooks)throw new Error("Hooks are unavailable for modules");var et="useMemo"===e,rt=et?"factory":"callback";if(r.length<1)throw new Error("Method: ".concat(e,". Required arguments: '").concat(rt,"'. Optional: 'dependencies'"));var nt=r[0];if(!_(nt))throw new Error("Method: ".concat(e,". The first argument '").concat(rt,"' must be a function"));var ot=this.hookIndex++,it=r[1],ct=this.vm.hooks[ot];if(ct){var st=ct.dependencies;if(void 0!==st&&ut(st,it))return ct.memoized}var lt=et?nt():nt;return this.vm.setReactHook(ot,{memoized:lt,dependencies:it}),lt}if("setTimeout"===e){var ft=Jn(r,2),ht=ft[0],pt=ft[1],dt=setTimeout((function(){i.vm.alive&&ht()}),pt);return this.vm.timeouts.add(dt),dt}if("setInterval"===e){if(this.vm.intervals.size>=16)throw new Error("Too many intervals. Max allowed: ".concat(16));var yt=Jn(r,2),vt=yt[0],mt=yt[1],gt=setInterval((function(){i.vm.alive&&vt()}),mt);return this.vm.intervals.add(gt),gt}if("clearTimeout"===e){var bt=r[0];return this.vm.timeouts.delete(bt),clearTimeout(bt)}if("clearInterval"===e){var wt=r[0];return this.vm.intervals.delete(wt),clearInterval(wt)}}}}else{var Et=e===t?a:a[e];if("function"==typeof Et)return o?Un(Et,Fn(r)):Et.apply(void 0,Fn(r))}if(!n)throw new Error(t&&t!==e?"Unsupported callee method '".concat(t,".").concat(e,"'"):"Unsupported callee method '".concat(e,"'"))}},{key:"resolveMemberExpression",value:function(t,e){if("Identifier"===t.type||"JSXIdentifier"===t.type){var r,n=t.name;if(ho(n),null!=e&&e.requireState&&n!==to)throw new Error("The top object should be ".concat(to));var o=null!==(r=this.stack.findObj(n))&&void 0!==r?r:this.stack.state;if(po(o),o===this.stack.state&&n in ao){if(null!=e&&e.left)throw new Error("Cannot assign to keyword '"+n+"'");return{obj:o,key:n,keyword:n}}if(null!=e&&e.left&&(!o||!(n in o)))throw new Error("Accessing undeclared identifier '".concat(t.name,"'"));return{obj:o,key:n}}if("MemberExpression"===t.type||"JSXMemberExpression"===t.type){var i,a;if("Identifier"===(null===(i=t.object)||void 0===i?void 0:i.type)||"JSXIdentifier"===(null===(a=t.object)||void 0===a?void 0:a.type)){var c=t.object.name;if(c in ao){if(null==e||!e.callee)throw new Error("Cannot dereference keyword '"+c+"' in non-call expression");return{obj:this.stack.state,key:this.resolveKey(t.property,t.computed),keyword:c}}}var u=this.executeExpression(t.object);return po(u),{obj:u,key:this.resolveKey(t.property,t.computed)}}throw new Error("Unsupported member type: '"+t.type+"'")}},{key:"getArray",value:function(t){var e=this,r=[];return t.forEach((function(t){"SpreadElement"===t.type?r.push.apply(r,Fn(e.executeExpression(t.argument))):r.push(e.executeExpression(t))})),r}},{key:"executeExpressionInternal",value:function(t){var e=this;if(!t)return null;var r=null==t?void 0:t.type;if("AssignmentExpression"===r){var n,o=this.resolveMemberExpression(t.left,{left:!0}),i=o.obj,a=o.key,c=this.executeExpression(t.right);if("="===t.operator)return i[a]=c;if("+="===t.operator)return i[a]+=c;if("-="===t.operator)return i[a]-=c;if("*="===t.operator)return i[a]*=c;if("/="===t.operator)return i[a]/=c;if("??="===t.operator)return null!==(n=i[a])&&void 0!==n?n:i[a]=c;throw new Error("Unknown AssignmentExpression operator '"+t.operator+"'")}if("ChainExpression"===r)return this.executeExpression(t.expression);if("MemberExpression"===r||"JSXMemberExpression"===r){var u=this.resolveMemberExpression(t),s=u.obj,l=u.key;return null==s?void 0:s[l]}if("Identifier"===r||"JSXIdentifier"===r)return this.stack.get(t.name);if("JSXExpressionContainer"===r)return this.executeExpression(t.expression);if("TemplateLiteral"===r){for(var f=[],h=0;h"===t.operator)return w>E;if("<="===t.operator)return w<=E;if(">="===t.operator)return w>=E;if("==="===t.operator||"=="===t.operator)return w===E;if("!=="===t.operator||"!="===t.operator)return w!==E;if("in"===t.operator)return w in E;throw new Error("Unknown BinaryExpression operator '"+t.operator+"'")}if("UnaryExpression"===r){if("delete"===t.operator){var x=this.resolveMemberExpression(t.argument,{left:!0}),S=x.obj,k=x.key;return null==S||delete S[k]}var O=this.executeExpression(t.argument);if("-"===t.operator)return-O;if("!"===t.operator)return!O;if("typeof"===t.operator)return Wn(O);throw new Error("Unknown UnaryExpression operator '"+t.operator+"'")}if("LogicalExpression"===r){var j=this.executeExpression(t.left);if("||"===t.operator)return j||this.executeExpression(t.right);if("&&"===t.operator)return j&&this.executeExpression(t.right);if("??"===t.operator)return null!=j?j:this.executeExpression(t.right);throw new Error("Unknown LogicalExpression operator '"+t.operator+"'")}if("ConditionalExpression"===r)return this.executeExpression(t.test)?this.executeExpression(t.consequent):this.executeExpression(t.alternate);if("UpdateExpression"===r){var I=this.resolveMemberExpression(t.argument,{left:!0}),L=I.obj,C=I.key;if("++"===t.operator)return t.prefix?++L[C]:L[C]++;if("--"===t.operator)return t.prefix?--L[C]:L[C]--;throw new Error("Unknown UpdateExpression operator '"+t.operator+"'")}if("ObjectExpression"===r)return t.properties.reduce((function(t,r){if("Property"===r.type)t[e.resolveKey(r.key,r.computed)]=e.executeExpression(r.value);else{if("SpreadElement"!==r.type)throw new Error("Unknown property type: "+r.type);var n=e.executeExpression(r.argument);po(n),Object.assign(t,n)}return t}),{});if("ArrayExpression"===r)return this.getArray(t.elements);if("JSXEmptyExpression"===r)return null;if("ArrowFunctionExpression"===r)return this.createFunction(t.params,t.body,t.expression);if("TaggedTemplateExpression"===r){var A,P;if("MemberExpression"!==t.tag.type&&"CallExpression"!==t.tag.type)throw new Error("TaggedTemplateExpression is only supported for `styled` components");var N=this.resolveMemberExpression("MemberExpression"===t.tag.type?t.tag:t.tag.callee,{callee:!0}),T=N.key;if("styled"!==N.keyword)throw new Error("TaggedTemplateExpression is only supported for `styled` components");if("CallExpression"===t.tag.type){var _=this.getArray(t.tag.arguments),B=null==_?void 0:_[0],U=vo(B);if(!(0,_r.isStyledComponent)(B)&&!U)throw new Error('styled() can only take `styled` components or valid Radix components (EG: "Accordion.Trigger")');A=Br()(null!=U?U:B)}else{if("keyframes"===T)A=_r.keyframes;else{if(!(T in no))throw new Error("Unsupported styled tag: "+T);A=Br()(T)}P=T}if("TemplateLiteral"!==t.quasi.type)throw new Error("Unknown quasi type: "+t.quasi.type);var R=t.quasi.quasis.map((function(t){if("TemplateElement"!==t.type)throw new Error("Unknown quasis type: "+t.type);return t.value.cooked})),M=0===t.quasi.expressions.length&&"CallExpression"!==t.tag.type,F=JSON.stringify([P].concat(Fn(R)));if(M&&this.vm.cachedStyledComponents.has(F))return this.vm.cachedStyledComponents.get(F);var q=t.quasi.expressions.map((function(t){return e.executeExpression(t)}));if(A instanceof Function){var G=A.apply(void 0,[R].concat(Fn(q)));return M&&this.vm.cachedStyledComponents.set(F,G),G}throw new Error("styled error")}throw console.log(t),new Error("Unknown expression type '"+r+"'")}},{key:"createFunction",value:function(t,e,r){var n=this;return t=t.map(Eo),function(){for(var o,i,a,c=arguments.length,u=new Array(c),s=0;s0&&(!t.test||a.executeExpression(t.test));){var c=a.executeStatement(t.body);if(c){if(c.break)break;if(!c.continue)return c}a.executeExpression(t.update)}if(this.vm.loopLimit<=0)throw new Error("Exceeded loop limit")}else if("ForOfStatement"===t.type){var u=this.newStack(),s=u.executeExpression(t.right);po(s);var l,f=Bn(s);try{var h=function(){var r=l.value;if(e.vm.loopLimit--<=0)throw new Error("Exceeded loop limit");if("VariableDeclaration"===t.left.type){if(1!==t.left.declarations.length)throw new Error("Invalid for-of statement");t.left.declarations.forEach((function(t){if("VariableDeclarator"!==t.type)throw new Error("Unknown variable declaration type '"+t.type+"'");e.stackDeclare(Eo(t.id),r)}))}else{var n=e.resolveMemberExpression(t.left,{left:!0});n.obj[n.key]=r}var o=u.executeStatement(t.body);if(o){if(o.break)return"break";if(!o.continue)return{v:o}}};for(f.s();!(l=f.n()).done;){var p=h();if("break"===p)break;if("object"===Wn(p))return p.v}}catch(t){f.e(t)}finally{f.f()}}else if("WhileStatement"===t.type){for(var d=this.newStack();this.vm.loopLimit-- >0&&d.executeExpression(t.test);){var y=d.executeStatement(t.body);if(y){if(y.break)break;if(!y.continue)return y}}if(this.vm.loopLimit<=0)throw new Error("Exceeded loop limit")}else if("IfStatement"===t.type){var v=this.executeExpression(t.test),m=this.newStack(),g=v?m.executeStatement(t.consequent):m.executeStatement(t.alternate);if(g)return g}else{if("BreakStatement"===t.type)return{break:!0};if("ContinueStatement"===t.type)return{continue:!0};if("ThrowStatement"===t.type)throw this.executeExpression(t.argument);if("TryStatement"===t.type)try{var b=this.newStack().executeStatement(t.block);if(b)return b}catch(e){if(!this.vm.alive||!t.handler)return null;if("CatchClause"!==t.handler.type)throw new Error("Unknown try statement handler type '"+t.handler.type+"'");var w=this.newStack();t.handler.param&&w.stackDeclare(go(t.handler.param),ct(e instanceof Error?{name:null==e?void 0:e.name,message:null==e?void 0:e.message,toString:function(){return e.toString()}}:e));var E=w.executeStatement(t.handler.body);if(E)return E}finally{this.vm.alive&&this.newStack().executeStatement(t.finalizer)}else{if("SwitchStatement"!==t.type)throw new Error("Unknown token type '"+t.type+"'");var x,S=this.executeExpression(t.discriminant),k=this.newStack(),O=!1,j=Bn(t.cases);try{for(j.s();!(x=j.n()).done;){var I=x.value;if("SwitchCase"!==I.type)throw new Error("Unknown switch case type '"+I.type+"'");if(!O&&I.test){if(k.executeExpression(I.test)!==S)continue;O=!0}if(O){var L,C=!1,A=Bn(I.consequent);try{for(A.s();!(L=A.n()).done;){var P=L.value,N=k.executeStatement(P);if(N){if(N.break){C=!0;break}return N}}}catch(t){A.e(t)}finally{A.f()}if(C)break}}}catch(t){j.e(t)}finally{j.f()}}}}return null}}]),t}(),ko=function(){function t(e){var r,n=this;qn(this,t);var o,i=e.near,a=e.rawCode,c=e.setReactState,u=e.cache,s=e.refreshCache,l=e.confirmTransactions,h=e.depth,p=e.widgetSrc,d=e.requestCommit,y=e.version,v=e.widgetConfigs,m=e.ethersProviderContext,g=e.globalStateContext,b=e.isModule;this.alive=!0,this.isModule=b,this.rawCode=a,this.near=i;try{this.code=(o=a)in lo?lo[o]:lo[o]=fo.parse(o,so),this.compileError=null}catch(t){this.code=null,this.compileError=t,console.error(t)}this.code?(this.setReactState=c?function(t){return c({hooks:n.hooks,state:N(t)?Object.assign({},t):t})}:function(){throw new Error("State is unavailable for modules")},this.setReactHook=c?function(t,e){n.hooks[t]=e,c({hooks:n.hooks,state:n.state.state})}:function(){throw new Error("State is unavailable for modules")},this.cache=u,this.refreshCache=s,this.confirmTransactions=l,this.depth=null!=h?h:0,this.widgetSrc=p,this.requestCommit=d,this.version=y,this.cachedStyledComponents=new Map,this.widgetConfigs=v,this.ethersProviderContext=m,this.ethersProvider=null!=m&&m.provider?new f.ethers.providers.Web3Provider(m.provider):null,this.globalStateContext=g,this.timeouts=new Set,this.intervals=new Set,this.websockets=[],this.vmInstances=new Map,this.networkId=(null===(r=v.findLast((function(t){return t&&t.networkId})))||void 0===r?void 0:r.networkId)||i.config.networkId):this.alive=!1}return Dn(t,[{key:"stop",value:function(){this.alive&&(this.alive=!1,this.timeouts.forEach((function(t){return clearTimeout(t)})),this.intervals.forEach((function(t){return clearInterval(t)})),this.websockets.forEach((function(t){return t.close()})),this.vmInstances.forEach((function(t){return t.stop()})))}},{key:"cachedPromise",value:function(t,e){var r=this;return ct(t({onInvalidate:function(){r.alive&&r.refreshCache()},subscribe:!!e}))}},{key:"cachedSocialGet",value:function(t,e,r,n,o){var i=this;return t=Array.isArray(t)?t:[t],this.cachedPromise((function(a){return i.cache.socialGet(i.near,t,e,r,n,a,o)}),null==n?void 0:n.subscribe)}},{key:"storageGet",value:function(t,e){var r=this;return this.cachedPromise((function(n){return r.cache.localStorageGet(t,e,n)}))}},{key:"storageSet",value:function(t,e,r){return this.cache.localStorageSet(t,e,r)}},{key:"cachedSocialKeys",value:function(t,e,r,n){var o=this;return t=Array.isArray(t)?t:[t],this.cachedPromise((function(i){return o.cache.cachedViewCall(o.near,o.near.config.contractName,"keys",{keys:t,options:r},e,i,n)}),null==r?void 0:r.subscribe)}},{key:"asyncNearView",value:function(t,e,r,n){return this.near.viewCall(t,e,r,n)}},{key:"cachedEthersCall",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(r){return o.cache.cachedEthersCall(o.ethersProvider,t,e,r,n)}),r)}},{key:"cachedNearView",value:function(t,e,r,n,o,i){var a=this;return this.cachedPromise((function(o){return a.cache.cachedViewCall(a.near,t,e,r,n,o,i)}),o)}},{key:"cachedNearBlock",value:function(t,e,r){var n=this;return this.cachedPromise((function(e){return n.cache.cachedBlock(n.near,t,e,r)}),e)}},{key:"asyncFetch",value:function(t,e){return this.cache.asyncFetch(t,e)}},{key:"cachedFetch",value:function(t,e,r){var n=this;return this.cachedPromise((function(o){return n.cache.cachedFetch(t,e,o,r)}),null==e?void 0:e.subscribe)}},{key:"cachedIndex",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(i){return o.cache.socialIndex(o.near,t,e,r,i,n)}),null==r?void 0:r.subscribe)}},{key:"useCache",value:function(t,e,r,n){var o=this;return this.cachedPromise((function(r){return o.cache.cachedCustomPromise({widgetSrc:o.widgetSrc,dataKey:e},t,r,n)}),null==r?void 0:r.subscribe)}},{key:"socialSet",value:function(t,e){return this.requestCommit({data:t,force:null==e?void 0:e.force,onCommit:null==e?void 0:e.onCommit,onCancel:null==e?void 0:e.onCancel})}},{key:"vmRequire",value:function(t){var e=Jn(t.split("@"),2),r=e[0],n=e[1],o=this.cachedSocialGet(r.toString(),!1,n,void 0);return o?this.getVmInstance(o,t).execCode({context:ct(this.context),forwardedProps:this.forwardedProps}):o}},{key:"getVmInstance",value:function(e,r){if(this.vmInstances.has(r)){var n=this.vmInstances.get(r);if(n.rawCode===e)return n;n.stop(),this.vmInstances.delete(r)}var o=new t({near:this.near,rawCode:e,cache:this.cache,refreshCache:this.refreshCache,confirmTransactions:this.confirmTransactions,depth:this.depth+1,widgetSrc:r,requestCommit:this.requestCommit,version:this.version,widgetConfigs:this.widgetConfigs,ethersProviderContext:this.ethersProviderContext,isModule:!0});return this.vmInstances.set(r,o),o}},{key:"renderCode",value:function(t){if(this.compileError)return r().createElement("div",{className:"alert alert-danger"},"Compilation error:",r().createElement("pre",null,this.compileError.message),r().createElement("pre",null,this.compileError.stack));if(!this.alive)return r().createElement("div",{className:"alert alert-danger"},"VM is dead");var e=this.execCode(t);return at(e)||"string"==typeof e||"number"==typeof e?e:r().createElement("pre",null,JSON.stringify(e,void 0,2))}},{key:"execCode",value:function(t){var e=t.props,r=t.context,n=t.reactState,o=t.forwardedProps;if(this.compileError)throw this.compileError;if(this.depth>=32)return"Too deep";this.gIndex=0;var i=null!=n?n:{},a=i.hooks,c=i.state;this.hooks=a,this.state={props:N(e)?Object.assign({},e):e,context:r,state:c,nacl:Yn,get elliptic(){return delete this.elliptic,this.elliptic=Zr()(Ur),this.elliptic},ethers:Zn,nanoid:Qn},this.forwardedProps=o,this.loopLimit=1e6,this.vmStack=new So(this,void 0,this.state);var u=this.vmStack.executeStatement(this.code);if(null!=u&&u.break)throw new Error("BreakStatement outside of a loop");if(null!=u&&u.continue)throw new Error("ContinueStatement outside of a loop");return null==u?void 0:u.result}}]),t}();const Oo=require("react-error-boundary");var jo=r().createContext(null);function Io(t){return Io="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Io(t)}var Lo=["loading","src","code","depth","config","props"];function Co(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ao(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,Lo),p=No((0,e.useState)(0),2),d=p[0],y=p[1],v=No((0,e.useState)(null),2),m=v[0],g=v[1],b=No((0,e.useState)(null),2),E=b[0],x=b[1],S=No((0,e.useState)({hooks:[],state:void 0}),2),k=S[0],O=S[1],j=No((0,e.useState)(0),2),I=j[0],A=j[1],P=No((0,e.useState)({}),2),B=P[0],U=P[1],R=No((0,e.useState)(null),2),M=R[0],F=R[1],q=No((0,e.useState)(null),2),G=q[0],D=q[1],J=No((0,e.useState)(null),2),z=J[0],$=J[1],W=No((0,e.useState)(null),2),K=W[0],X=W[1],H=No((0,e.useState)(null),2),V=H[0],Y=H[1],Z=No((0,e.useState)(null),2),Q=Z[0],tt=Z[1],et=(0,e.useContext)(nn),rt=(0,e.useContext)(jo),nt=V&&(null===(o=V.findLast((function(t){return t&&t.networkId})))||void 0===o?void 0:o.networkId),ot=wr(nt),it=qt(nt),at=ce(nt),st=No((0,e.useState)(null),2),lt=st[0],ft=st[1];(0,e.useEffect)((function(){var t=l?Array.isArray(l)?l:[l]:[];ut(t,V)||Y(t)}),[l,V]),(0,e.useEffect)((function(){var t=function(t,e,r){var n,o=t?{src:t}:e?{code:e}:null,i=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=To(t))){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}(r||[]);try{for(i.s();!(n=i.n()).done;){var a,c=n.value;if(null!==(a=o)&&void 0!==a&&a.src){var u,s=o.src,l=N(null==c?void 0:c.redirectMap)&&c.redirectMap[s];if(!l)try{l=_(null==c?void 0:c.redirect)&&c.redirect(s)}catch(t){}if(T(l))o={src:l};else if(T(null===(u=l)||void 0===u?void 0:u.code))return{code:l.code}}}}catch(t){i.e(t)}finally{i.f()}return o}(a,c,V);ut(t,Q)||tt(t)}),[a,c,V,Q]),(0,e.useEffect)((function(){if(it)if(null!=Q&&Q.src){var t=Q.src,e=No(t.split("@"),2),r=e[0],n=e[1],o=ot.socialGet(it,r.toString(),!1,n,void 0,(function(){y(d+1)}));g(o),x(t)}else null!=Q&&Q.code&&(g(Q.code),x(null))}),[it,Q,d]),(0,e.useEffect)((function(){F(null),ft(null),m||void 0===m&&ft(r().createElement("div",{className:"alert alert-danger"},'Source code for "',E,'" is not found'))}),[m,E]);var ht=(0,e.useCallback)((function(t){if(!it||!t||0===t.length)return null;t=t.map((function(t){return{contractName:t.contractName,methodName:t.methodName,args:t.args||{},deposit:t.deposit?u()(t.deposit):u()(0),gas:t.gas?u()(t.gas):w.mul(30)}})),console.log("confirm txs",t),D(t)}),[it]),pt=(0,e.useCallback)((function(t){if(!it)return null;console.log("commit requested",t),$(t)}),[it]);return(0,e.useEffect)((function(){if(it&&m){O({hooks:[],state:void 0});var t=new ko({near:it,rawCode:m,setReactState:O,cache:ot,refreshCache:function(){A((function(t){return t+1}))},confirmTransactions:ht,depth:s,widgetSrc:E,requestCommit:pt,version:Pe()(),widgetConfigs:V,ethersProviderContext:et,globalStateContext:rt});return F(t),function(){t.stop()}}}),[E,it,m,s,pt,ht,V,et,rt]),(0,e.useEffect)((function(){it&&U({loading:!1,accountId:null!=at?at:null,widgetSrc:E,networkId:it.config.networkId})}),[it,at,E]),(0,e.useLayoutEffect)((function(){if(M){var t={props:f||{},context:B,reactState:k,cacheNonce:I,version:M.version,forwardedProps:Ao(Ao({},h),{},{ref:n})};if(!ut(t,K)){X(ct(t));try{var e;ft(null!==(e=M.renderCode(t))&&void 0!==e?e:"Execution failed")}catch(t){ft(r().createElement("div",{className:"alert alert-danger"},"Execution error:",r().createElement("pre",null,t.message),r().createElement("pre",null,t.stack))),console.error(t)}}}}),[M,f,B,k,I,K,n,h]),null!=lt?r().createElement(Oo.ErrorBoundary,{FallbackComponent:C,onReset:function(){ft(null)},resetKeys:[lt]},r().createElement(r().Fragment,null,lt,G&&r().createElement(Te,{transactions:G,onHide:function(){return D(null)},networkId:nt}),z&&r().createElement(Pr,{show:!0,widgetSrc:E,data:z.data,force:z.force,onHide:function(){return $(null)},onCommit:z.onCommit,onCancel:z.onCancel,networkId:nt}))):null!=i?i:L}))})(),o})())); \ No newline at end of file diff --git a/src/index.js b/src/index.js index c301e5eb..b834136c 100644 --- a/src/index.js +++ b/src/index.js @@ -6,7 +6,7 @@ import { useCache } from "./lib/data/cache"; import * as utils from "./lib/data/utils"; import { CommitButton } from "./lib/components/Commit"; import { EthersProviderContext } from "./lib/components/ethers"; - +import { GlobalStateContext } from "./lib/components/globalState"; export { Widget, CommitButton, @@ -17,4 +17,5 @@ export { useAccountId, utils, EthersProviderContext, + GlobalStateContext, }; diff --git a/src/lib/components/Widget.js b/src/lib/components/Widget.js index 8e3f0793..9a8e1420 100644 --- a/src/lib/components/Widget.js +++ b/src/lib/components/Widget.js @@ -25,6 +25,7 @@ import { useAccountId } from "../data/account"; import Big from "big.js"; import uuid from "react-uuid"; import { EthersProviderContext } from "./ethers"; +import { GlobalStateContext } from "./globalState"; const computeSrcOrCode = (src, code, configs) => { let srcOrCode = src ? { src } : code ? { code } : null; @@ -74,6 +75,7 @@ export const Widget = React.forwardRef((props, forwardedRef) => { const [configs, setConfigs] = useState(null); const [srcOrCode, setSrcOrCode] = useState(null); const ethersProviderContext = useContext(EthersProviderContext); + const globalStateContext = useContext(GlobalStateContext); const networkId = configs && @@ -189,6 +191,7 @@ export const Widget = React.forwardRef((props, forwardedRef) => { version: uuid(), widgetConfigs: configs, ethersProviderContext, + globalStateContext, }); setVm(vm); return () => { @@ -203,6 +206,7 @@ export const Widget = React.forwardRef((props, forwardedRef) => { confirmTransactions, configs, ethersProviderContext, + globalStateContext ]); useEffect(() => { diff --git a/src/lib/components/globalState.js b/src/lib/components/globalState.js new file mode 100644 index 00000000..3771b612 --- /dev/null +++ b/src/lib/components/globalState.js @@ -0,0 +1,3 @@ +import React from "react"; + +export const GlobalStateContext = React.createContext(null); diff --git a/src/lib/vm/vm.js b/src/lib/vm/vm.js index f258d0d5..8ef5f9c3 100644 --- a/src/lib/vm/vm.js +++ b/src/lib/vm/vm.js @@ -175,6 +175,7 @@ const ApprovedTagsSimple = { const ApprovedTagsCustom = { Widget: false, CommitButton: true, + GlobalStateProvider: true, IpfsImageUpload: false, Markdown: false, Fragment: true, @@ -621,6 +622,16 @@ class VmStack { ); } + if (element === "GlobalStateProvider") { + if(!attributes.value) { + throw new Error("GlobalStateProvider requires a value prop"); + } + if(!isArray(attributes.value) || attributes.value.length !== 2) { + throw new Error("Invalid value prop for GlobalStateProvider"); + } + this.vm.globalStateContext = attributes.value; + } + const children = code.children.map((child, i) => { this.vm.gIndex = i; return this.executeExpression(child); @@ -995,6 +1006,18 @@ class VmStack { return f(...args); } return this.vm.cachedEthersCall(callee, args); + } else if (callee === "useGlobalState") { + if(args.length < 1 || !isString(args[0])) { + throw new Error("Method: useGlobalState. Requires string argument"); + } + const [globalState, setGlobalState] = this.vm.globalStateContext + return [ + globalState[args[0]], + (value) => setGlobalState({ + ...globalState, + [args[0]]: value, + }) + ]; } else if (keyword === "WebSocket") { if (callee === "WebSocket") { const websocket = new WebSocket(...args); @@ -1875,6 +1898,7 @@ export default class VM { version, widgetConfigs, ethersProviderContext, + globalStateContext, isModule, } = options; @@ -1931,7 +1955,7 @@ export default class VM { this.ethersProvider = ethersProviderContext?.provider ? new ethers.providers.Web3Provider(ethersProviderContext.provider) : null; - + this.globalStateContext = globalStateContext; this.timeouts = new Set(); this.intervals = new Set(); this.websockets = [];