decred.org/dcrdex@v1.0.3/client/webserver/site/dist/entry.js (about) 1 /*! For license information please see entry.js.LICENSE.txt */ 2 (()=>{var e={633:(e,t,n)=>{var r=n(738).default;function a(){"use strict";e.exports=a=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},n=Object.prototype,o=n.hasOwnProperty,s=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},c=i.iterator||"@@iterator",l=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function d(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(e){d=function(e,t,n){return e[t]=n}}function h(e,t,n,r){var a=t&&t.prototype instanceof v?t:v,o=Object.create(a.prototype),i=new I(r||[]);return s(o,"_invoke",{value:S(e,n,i)}),o}function p(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=h;var f={};function v(){}function m(){}function g(){}var y={};d(y,c,(function(){return this}));var b=Object.getPrototypeOf,x=b&&b(b(A([])));x&&x!==n&&o.call(x,c)&&(y=x);var k=g.prototype=v.prototype=Object.create(y);function w(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(a,s,i,c){var l=p(e[a],e,s);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==r(d)&&o.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,i,c)}),(function(e){n("throw",e,i,c)})):t.resolve(d).then((function(e){u.value=e,i(u)}),(function(e){return n("throw",e,i,c)}))}c(l.arg)}var a;s(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,a){n(e,r,t,a)}))}return a=a?a.then(o,o):o()}})}function S(e,t,n){var r="suspendedStart";return function(a,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===a)throw o;return{value:void 0,done:!0}}for(n.method=a,n.arg=o;;){var s=n.delegate;if(s){var i=F(s,n);if(i){if(i===f)continue;return i}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=p(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}function F(e,t){var n=t.method,r=e.iterator[n];if(void 0===r)return t.delegate=null,"throw"===n&&e.iterator.return&&(t.method="return",t.arg=void 0,F(e,t),"throw"===t.method)||"return"!==n&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var a=p(r,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,f;var o=a.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function D(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function I(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function A(e){if(e){var t=e[c];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function t(){for(;++n<e.length;)if(o.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return r.next=r}}return{next:R}}function R(){return{value:void 0,done:!0}}return m.prototype=g,s(k,"constructor",{value:g,configurable:!0}),s(g,"constructor",{value:m,configurable:!0}),m.displayName=d(g,u,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===m||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,d(e,u,"GeneratorFunction")),e.prototype=Object.create(k),e},t.awrap=function(e){return{__await:e}},w(C.prototype),d(C.prototype,l,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,r,a,o){void 0===o&&(o=Promise);var s=new C(h(e,n,r,a),o);return t.isGeneratorFunction(n)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},w(k),d(k,u,"Generator"),d(k,c,(function(){return this})),d(k,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=A,I.prototype={constructor:I,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(D),!e)for(var t in this)"t"===t.charAt(0)&&o.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return s.type="throw",s.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r],s=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var i=o.call(a,"catchLoc"),c=o.call(a,"finallyLoc");if(i&&c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(i){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var s=a?a.completion:{};return s.type=e,s.arg=t,a?(this.method="next",this.next=a.finallyLoc,f):this.complete(s)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),D(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;D(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:A(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},t}e.exports=a,e.exports.__esModule=!0,e.exports.default=e.exports},738:e=>{function t(n){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},756:(e,t,n)=>{var r=n(633)();e.exports=r;try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}},t={};function n(r){var a=t[r];if(void 0!==a)return a.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t,n){if(t){if("string"==typeof t)return e(t,n);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)?e(t,n):void 0}}function r(n){return function(t){if(Array.isArray(t))return e(t)}(n)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||t(n)||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 a(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,s,i=[],c=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(i.push(r.value),i.length!==t);c=!0);}catch(e){l=!0,a=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(l)throw a}}return i}}(e,n)||t(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.")}()}function o(e,t,n,r,a,o,s){try{var i=e[o](s),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,a)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var s=e.apply(t,n);function i(e){o(s,r,a,i,c,"next",e)}function c(e){o(s,r,a,i,c,"throw",e)}i(void 0)}))}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function l(e){var t=function(e){if("object"!==c(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===c(t)?t:String(t)}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,l(r.key),r)}}function d(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function h(e,t,n){return(t=l(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=n(756),f=n.n(p);function v(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}function g(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&m(e,t)}function y(e,t){if(t&&("object"===c(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return v(e)}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var k=function(){function e(){i(this,e)}return d(e,null,[{key:"setCookie",value:function(e,t){var n=new Date;n.setTime(n.getTime()+31536e7);var r="expires="+n.toUTCString();document.cookie=e+"="+t+";"+r+";path=/"}},{key:"getCookie",value:function(e){var t,n=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return x(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?x(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}(document.cookie.split(";"));try{for(n.s();!(t=n.n()).done;){var r=a(t.value.split("="),2),o=r[0],s=r[1];if(o.trim()===e)return s}}catch(e){n.e(e)}finally{n.f()}return null}},{key:"removeCookie",value:function(e){document.cookie="".concat(e,"=;expires=Thu, 01 Jan 1970 00:00:01 GMT;")}},{key:"isDark",value:function(){return"1"===e.fetchLocal(e.darkModeLK)}},{key:"storeLocal",value:function(e,t){window.localStorage.setItem(e,JSON.stringify(t))}},{key:"fetchLocal",value:function(e){var t=window.localStorage.getItem(e);return null!==t?JSON.parse(t):null}},{key:"removeLocal",value:function(e){window.localStorage.removeItem(e)}}]),e}();function w(e,t,n){return C.apply(this,arguments)}function C(){return(C=s(f().mark((function e(t,n,r){var a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,window.fetch(n,{method:t,headers:new window.Headers({"content-type":"application/json"}),body:r});case 3:if(200===(a=e.sent).status){e.next=6;break}throw a;case 6:return e.next=8,a.json();case 8:return(o=e.sent).requestSuccessful=!0,e.abrupt("return",o);case 13:return e.prev=13,e.t0=e.catch(0),e.t0.requestSuccessful=!1,e.next=18,e.t0.text();case 18:return e.t0.msg=e.sent,e.abrupt("return",e.t0);case 20:case"end":return e.stop()}}),e,null,[[0,13]])})))).apply(this,arguments)}function S(e,t){return F.apply(this,arguments)}function F(){return(F=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",w("POST",t,JSON.stringify(n)));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function T(e){return D.apply(this,arguments)}function D(){return(D=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",w("GET",t));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}h(k,"darkModeLK","darkMode"),h(k,"authCK","dexauth"),h(k,"pwKeyCK","sessionkey"),h(k,"popupsLK","popups"),h(k,"loggersLK","loggers"),h(k,"recordersLK","recorders"),h(k,"lastMarketLK","selectedMarket"),h(k,"depthZoomLK","depthZoom"),h(k,"lastMMMarketLK","mmMarket"),h(k,"optionsExpansionLK","mmOptsExpand"),h(k,"leftMarketDockLK","leftmarketdock"),h(k,"selectedAssetLK","selectedasset"),h(k,"notificationsLK","notifications"),h(k,"orderDisclaimerAckedLK","ordAck"),h(k,"lastCandleDurationLK","lastCandleDuration"),h(k,"localeSpecsKey","localeSpecsLK"),h(k,"localeKey","localeLK"),null===k.fetchLocal(k.darkModeLK)&&k.storeLocal(k.darkModeLK,"1"),null===k.fetchLocal(k.popupsLK)&&k.storeLocal(k.popupsLK,"1"),null===k.fetchLocal(k.leftMarketDockLK)&&k.storeLocal(k.leftMarketDockLK,"1");var I,A=function(e){return e[e.walletErr=0]="walletErr",e[e.walletAuthErr=1]="walletAuthErr",e[e.walletBalanceErr=2]="walletBalanceErr",e[e.dupeDEXErr=3]="dupeDEXErr",e[e.assetSupportErr=4]="assetSupportErr",e[e.registerErr=5]="registerErr",e[e.signatureErr=6]="signatureErr",e[e.zeroFeeErr=7]="zeroFeeErr",e[e.feeMismatchErr=8]="feeMismatchErr",e[e.feeSendErr=9]="feeSendErr",e[e.passwordErr=10]="passwordErr",e[e.emptyHostErr=11]="emptyHostErr",e[e.connectionErr=12]="connectionErr",e[e.acctKeyErr=13]="acctKeyErr",e[e.unknownOrderErr=14]="unknownOrderErr",e[e.orderParamsErr=15]="orderParamsErr",e[e.dbErr=16]="dbErr",e[e.authErr=17]="authErr",e[e.connectWalletErr=18]="connectWalletErr",e[e.missingWalletErr=19]="missingWalletErr",e[e.encryptionErr=20]="encryptionErr",e[e.decodeErr=21]="decodeErr",e[e.accountVerificationErr=22]="accountVerificationErr",e[e.accountProofErr=23]="accountProofErr",e[e.parseKeyErr=24]="parseKeyErr",e[e.marketErr=25]="marketErr",e[e.addressParseErr=26]="addressParseErr",e[e.addrErr=27]="addrErr",e[e.fileReadErr=28]="fileReadErr",e[e.unknownDEXErr=29]="unknownDEXErr",e[e.accountRetrieveErr=30]="accountRetrieveErr",e[e.accountDisableErr=31]="accountDisableErr",e[e.suspendedAcctErr=32]="suspendedAcctErr",e[e.existenceCheckErr=33]="existenceCheckErr",e[e.createWalletErr=34]="createWalletErr",e[e.activeOrdersErr=35]="activeOrdersErr",e[e.newAddrErr=36]="newAddrErr",e}({}),R="NO_PASS_ERROR_MSG",E="BUY",B="SELL",P="VERSION_NOT_SUPPORTED",L="NO_ASSET_WALLET",O="EXECUTED",M="BOOKED",q="CANCELING",N="PASSWORD_NOT_MATCH",W="UNKNOWN",V="SETTLING",U="CANCELED",_="REVOKED",j="NONE_SELECTED",H="API_ERROR",z="LOCKED",G="INVALID_ADDRESS_MSG",X="LIMIT_ORDER",K="MARKET_ORDER",Q="MATCH_STATUS_REDEMPTION_SENT",Y="MATCH_REDEMPTION_CONFIRMED",J="MATCH_STATUS_REFUND_PENDING",Z="ORDER_ACCELERATION_ERR_MSG",$="DISCONNECTED",ee="BROWSER_NTFN_ENABLED",te="ORDER_BUTTON_BUY_BALANCE_ERROR",ne="ORDER_BUTTON_SELL_BALANCE_ERROR",re="ORDER_BUTTON_QTY_ERROR",ae="ORDER_BUTTON_QTY_RATE_ERROR",oe="CREATE_ASSET_WALLET_MSG",se="TRADING_TIER_UPDATED",ie="INVALID_TIER_VALUE",ce="MATCH_BUFFER",le="NO_PLACEMENTS",ue="INVALID_VALUE",de="NO_ZERO",he="BOTTYPE_BASIC_MM",pe="BOTTYPE_ARB_MM",fe="BOTTYPE_SIMPLE_ARB",ve="CEXBALANCE_ERR",me="PENDING",ge="COMPLETE",ye="CEX_NOT_CONNECTED";function be(e,t,n){return xe.apply(this,arguments)}function xe(){return(xe=s(f().mark((function e(t,n,r){var a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r){e.next=5;break}if(!(a=k.fetchLocal(k.localeSpecsKey))||a.lang!==t||a.commitHash!==n){e.next=5;break}return I=k.fetchLocal(k.localeKey),e.abrupt("return");case 5:return e.next=7,S("/api/locale",t);case 7:I=e.sent,k.storeLocal(k.localeSpecsKey,{lang:t,commitHash:n}),k.storeLocal(k.localeKey,I);case 10:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ke(e,t){return function(e,t){return e.replace(/{{\s?([^{}\s]*)\s?}}/g,(function(e,n){return t[n]}))}(I[e],t||{})}function we(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ce(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ce(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}window.clearLocale=function(){k.removeLocal(k.localeSpecsKey),k.removeLocal(k.localeKey)};var Se=new window.DOMParser,Fe={0:"btc",42:"dcr",2:"ltc",5:"dash",20:"dgb",22:"mona",28:"vtc",3:"doge",145:"bch",60:"eth",60001:"usdc.eth",60002:"usdt.eth",60003:"matic.eth",136:"firo",133:"zec",966:"polygon",966001:"usdc.polygon",966002:"weth.polygon",966003:"wbtc.polygon",966004:"usdt.polygon",147:"zcl"},Te={};!function(){for(var e=0,t=Object.keys(Fe);e<t.length;e++){var n=t[e];Te[Fe[parseInt(n)]]=parseInt(n)}}();var De=Object.values(Fe),Ie=1e8,Ae=Math.round(Math.log10(Ie)),Re=navigator.languages.filter((function(e){return"c"!==e})),Ee=new Intl.NumberFormat(Re,{maximumFractionDigits:0}),Be=new Intl.NumberFormat(Re,{minimumSignificantDigits:4,maximumSignificantDigits:4}),Pe={},Le={};function Oe(e,t){return Me(Le,e,e,t)}function Me(e,t,n,r){var a="".concat(t,"-").concat(n),o=e[a];return o||(o=new Intl.NumberFormat(null!=r?r:Re,{minimumFractionDigits:t,maximumFractionDigits:n}),e[a]=o),o}function qe(e,t){var n=8;if(t){var r=t.conventional.conversionFactor;e/=r,n=Math.round(Math.log10(r))}return[e,n]}var Ne=function(){function e(){i(this,e)}var t,n;return d(e,null,[{key:"idel",value:function(e,t){return e.querySelector("#".concat(t))}},{key:"bind",value:function(e,t,n,r){var a,o=we(Array.isArray(t)?t:[t]);try{for(o.s();!(a=o.n()).done;){var s=a.value;e.addEventListener(s,n,r)}}catch(e){o.e(e)}finally{o.f()}}},{key:"unbind",value:function(e,t,n){e.removeEventListener(t,n)}},{key:"noderize",value:function(e){return Se.parseFromString(e,"text/html")}},{key:"mouseInElement",value:function(e,t){if(t.contains(e.target))return!0;var n=t.getBoundingClientRect();return e.pageX>=n.left&&e.pageX<=n.right&&e.pageY>=n.top&&e.pageY<=n.bottom}},{key:"layoutMetrics",value:function(e){var t=e.getBoundingClientRect(),n=document.documentElement,r=t.top+n.scrollTop,a=t.left+n.scrollLeft,o=e.offsetWidth,s=e.offsetHeight;return{bodyTop:r,bodyLeft:a,width:o,height:s,centerX:a+o/2,centerY:r+s/2}}},{key:"descendentMetrics",value:function(t,n){var r=e.layoutMetrics(t),a=e.layoutMetrics(n);return{bodyTop:a.bodyTop-r.bodyTop,bodyLeft:a.bodyLeft-r.bodyLeft,width:a.width,height:a.height,centerX:a.centerX-r.bodyLeft,centerY:a.centerY-r.bodyTop}}},{key:"empty",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var r=0,a=t;r<a.length;r++)for(var o=a[r];o.firstChild;)o.removeChild(o.firstChild)}},{key:"setContent",value:function(t){e.empty(t);for(var n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];for(var o=0,s=r;o<s.length;o++){var i=s[o];t.appendChild(i)}}},{key:"hide",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var r=0,a=t;r<a.length;r++)a[r].classList.add("d-hide")}},{key:"show",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var r=0,a=t;r<a.length;r++)a[r].classList.remove("d-hide")}},{key:"showTemporarily",value:function(e){for(var t=this,n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];this.show.apply(this,r),setTimeout((function(){t.hide.apply(t,r)}),e)}},{key:"setVis",value:function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];t?e.show.apply(e,r):e.hide.apply(e,r)}},{key:"isHidden",value:function(e){return e.classList.contains("d-hide")}},{key:"isDisplayed",value:function(e){return!e.classList.contains("d-hide")}},{key:"animate",value:(n=s(f().mark((function e(t,n,r){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new We(t,n,r).wait();case 2:case"end":return e.stop()}}),e)}))),function(e,t,r){return n.apply(this,arguments)})},{key:"blink",value:(t=s(f().mark((function t(n){var r,o,s,i,c;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=k.isDark()?[255,255,255]:[0,0,0],o=a(r,3),s=o[0],i=o[1],c=o[2],e.animate(1e3,(function(e){n.style.outline="2px solid rgba(".concat(s,", ").concat(i,", ").concat(c,", ").concat((2-2*e)%1,")")}));case 3:case"end":return t.stop()}}),t)}))),function(e){return t.apply(this,arguments)})},{key:"applySelector",value:function(e,t){return Array.from(e.querySelectorAll(t))}},{key:"kids",value:function(e){return Array.from(e.children)}},{key:"safeSelector",value:function(e,t){return e.querySelector(t)||(console.warn("no element found for selector '".concat(t,"' on element ->"),e),document.createElement("div"))}},{key:"idDescendants",value:function(t){var n,r={},a=we(e.applySelector(t,"[id]"));try{for(a.s();!(n=a.n()).done;){var o=n.value;r[o.id]=o}}catch(e){a.e(e)}finally{a.f()}return r}},{key:"formatCoinValue",value:function(e,t){var n=a(qe(e,t),2),r=n[0],o=n[1];return Number.isInteger(r)?Ee.format(r):function(e){return Me(Pe,2,e)}(o).format(r)}},{key:"conventionalCoinValue",value:function(e,t){return a(qe(e,t),1)[0]}},{key:"formatRateFullPrecision",value:function(e,t,n,r){var a=e*(t.conventional.conversionFactor/n.conventional.conversionFactor)/Ie,o=Ae-Math.floor(Math.log10(r))-Math.floor(Math.log10(t.conventional.conversionFactor)-Math.log10(n.conventional.conversionFactor));return o<=0?Ee.format(a):Oe(o).format(a)}},{key:"formatFourSigFigs",value:function(e,t){return function(e,t,n,r){var a,o;if(n>=1e3)return e.format(n);var s=t.format(n);return"number"!=typeof r||(null!==(a=null===(o=t.formatToParts(n).filter((function(e){return"fraction"===e.type}))[0])||void 0===o?void 0:o.value)&&void 0!==a?a:"").length<=r?s:Oe(r,void 0).format(n)}(Ee,Be,e,t)}},{key:"formatInt",value:function(e){return Ee.format(e)}},{key:"formatFullPrecision",value:function(e,t){var n=a(qe(e,t),2),r=n[0];return Oe(n[1]).format(r)}},{key:"formatFiatConversion",value:function(e,t,n){if(!t||0===t)return ke("UNAVAILABLE");var r=a(qe(e,n),1)[0]*t;return Oe(2).format(r)}},{key:"languages",value:function(){return Re}},{key:"formatFiatValue",value:function(e){return Oe(2).format(e)}},{key:"bestConversion",value:function(e,t,n){for(var r=function(e,t){var n,r=(h(n={},e.atomicUnit,1),h(n,e.conventional.unit,e.conventional.conversionFactor),n);if(e.denominations&&t){var a,o=we(e.denominations);try{for(o.s();!(a=o.n()).done;){var s=a.value;t[s.unit]&&(r[s.unit]=s.conversionFactor)}}catch(e){o.e(e)}finally{o.f()}}return r}(t,n),a=[],o=function(t){return Math.abs(Math.log10(e/t[1])-1)},s=0,i=Object.entries(r);s<i.length;s++){var c=i[s];a.push([c[0],o(c)])}var l=a.reduce((function(e,t){return t[1]<e[1]?t:e})),u=l[0],d=r[u];return[e/d,Math.round(Math.log10(d)),u]}},{key:"formatBestUnitsFullPrecision",value:function(e,t,n){var r=a(this.bestConversion(e,t,n),3),o=r[0],s=r[1],i=r[2];return Number.isInteger(o)?[Ee.format(o),i]:[Oe(s).format(o),i]}},{key:"formatBestUnitsFourSigFigs",value:function(t,n,r){var o=a(this.bestConversion(t,n,r),3),s=o[0],i=o[1],c=o[2];return[e.formatFourSigFigs(s,i),c]}},{key:"formatBestRateElement",value:function(t,n,r,a,o){e.formatBestValueElement(t,n,r,a,o),e.setText(t,"[data-denom]",a.feeRateDenom)}},{key:"formatBestValueElement",value:function(t,n,r,o,s){var i=a(this.formatBestUnitsFourSigFigs(r,o,s),2),c=i[0],l=i[1];e.setText(t,"[data-value]",c),e.setText(t,"[data-unit]",l);var u=e.safeSelector(t,"[data-unit-box]");u.dataset.atoms=String(r),u.dataset.assetID=String(n)}},{key:"conventionalRateStep",value:function(e,t,n){var r=[n.conventional.conversionFactor,t.conventional.conversionFactor];return e/Ie*(r[1]/r[0])}},{key:"logoPath",value:function(e){return-1===De.indexOf(e)&&(e=e.substring(0,1)),e=e.split(".")[0],"/img/coins/".concat(e,".png")}},{key:"bipSymbol",value:function(e){return Fe[e]}},{key:"bipIDFromSymbol",value:function(e){return Te[e]}},{key:"bipCEXSymbol",value:function(e){var t=Fe[e];if(!t||""===t)return"";var n=t.split(".");return"weth"===n[0]?"eth":n[0]}},{key:"logoPathFromID",value:function(t){return e.logoPath(Fe[t])}},{key:"symbolize",value:function(t,n){var r=t.unitInfo.conventional.unit,a=document.createElement("span");a.textContent=r.toUpperCase();var o=t.symbol.split(".");if(2!==o.length)return a;var s=o[1],i=document.createElement("span");if(i.appendChild(a),n){var c=document.createElement("img");return c.src=e.logoPath(s),c.classList.add("token-parent"),i.appendChild(c),i}var l=document.createElement("sup");return l.textContent=s.toUpperCase(),l.classList.add("token-parent"),i.appendChild(l),i}},{key:"shortSymbol",value:function(e){return e.split(".")[0].toUpperCase()}},{key:"setText",value:function(t,n,r){var a,o=we(e.applySelector(t,n));try{for(o.s();!(a=o.n()).done;)a.value.textContent=r}catch(e){o.e(e)}finally{o.f()}}},{key:"setSrc",value:function(t,n,r){var a,o=we(e.applySelector(t,n));try{for(o.s();!(a=o.n()).done;)a.value.src=r}catch(e){o.e(e)}finally{o.f()}}},{key:"cleanTemplates",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.forEach((function(e){e.remove(),e.removeAttribute("id")}))}},{key:"tmplElement",value:function(e,t){return e.querySelector('[data-tmpl="'.concat(t,'"]'))||document.createElement("div")}},{key:"parseTemplate",value:function(t){var n,r={},a=we(e.applySelector(t,"[data-tmpl]"));try{for(a.s();!(n=a.n()).done;){var o=n.value;r[o.dataset.tmpl||""]=o}}catch(e){a.e(e)}finally{a.f()}return r}},{key:"timeSince",value:function(t){return e.formatDuration((new Date).getTime()-t)}},{key:"hmsSince",value:function(e){var t=(new Date).getTime()/1e3-e,n=String(Math.floor(t/3600));t%=3600;var r=String(Math.floor(t/60)),a=String(Math.floor(t%60));return"".concat(n.padStart(2,"0"),":").concat(r.padStart(2,"0"),":").concat(a.padStart(2,"0"))}},{key:"formatDuration",value:function(e){var t,n,r,o,s,i,c=Math.floor(e),l="",u=0,d=function(e,t){return(e>0||u>0)&&u++,e>0&&(l+="".concat(e," ").concat(t," ")),u>=2},h=a(Qe(c,He),2);if(t=h[0],c=h[1],d(t,"y"))return l;var p=a(Qe(c,ze),2);if(n=p[0],c=p[1],d(n,"mo"))return l;var f=a(Qe(c,Ge),2);if(r=f[0],c=f[1],d(r,"d"))return l;var v=a(Qe(c,Xe),2);if(o=v[0],c=v[1],d(o,"h"))return l;var m=a(Qe(c,Ke),2);if(s=m[0],c=m[1],d(s,"m"))return l;var g=a(Qe(c,1e3),2);return i=g[0],c=g[1],d(i,"s"),l||"0 s"}},{key:"disableMouseWheel",value:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];for(var a=0,o=n;a<o.length;a++){var s=o[a];e.bind(s,"wheel",(function(){}),{passive:!0})}}},{key:"showFormError",value:function(t,n){t.textContent=n,e.show(t)}},{key:"showFiatValue",value:function(t,n,r,a){r?(t.textContent=e.formatFiatConversion(n,r,a),e.show(t.parentElement)):e.hide(t.parentElement)}}]),e}(),We=function(){function e(t,n,r,a){i(this,e),h(this,"done",void 0),h(this,"endAnimation",void 0),h(this,"thread",void 0),this.done=a,this.thread=this.run(t,n,r)}var t,n,r;return d(e,[{key:"run",value:(r=s(f().mark((function t(n,r,a){var o,s,i,c,l,u;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=n>=0?n:31536e7,o=a?Ve[a]:Ve.linear,s=(new Date).getTime(),i=n===e.Forever?Number.MAX_SAFE_INTEGER:s+n,c=i-s,l=1e3/30,u=s,this.endAnimation=!1;case 8:if(!(u<i)){t.next=17;break}if(!this.endAnimation){t.next=11;break}return t.abrupt("return",this.runCompletionFunction());case 11:return r(o((u-s)/c)),t.next=14,je(l);case 14:u=(new Date).getTime(),t.next=8;break;case 17:r(1),this.runCompletionFunction();case 19:case"end":return t.stop()}}),t,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"wait",value:(n=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.thread;case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"stop",value:function(){this.endAnimation=!0}},{key:"stopAndWait",value:(t=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.stop(),e.next=3,this.wait();case 3:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"runCompletionFunction",value:function(){this.done&&this.done()}}]),e}();h(We,"Forever",void 0),We.Forever=-1;var Ve={linear:function(e){return e},easeIn:function(e){return e*e},easeOut:function(e){return e*(2-e)},easeInHard:function(e){return e*e*e},easeOutHard:function(e){return--e*e*e+1},easeOutElastic:function(e){var t=2*Math.PI/3;return 0===e?0:1===e?1:Math.pow(2,-10*e)*Math.sin((10*e-.75)*t)+1}},Ue=function(){function e(t){i(this,e),h(this,"icons",void 0),h(this,"status",void 0);var n=function(e){return t.querySelector("[data-state=".concat(e,"]"))};this.icons={},this.icons.sleeping=n("sleeping"),this.icons.locked=n("locked"),this.icons.unlocked=n("unlocked"),this.icons.nowallet=n("nowallet"),this.icons.syncing=n("syncing"),this.icons.nopeers=n("nopeers"),this.icons.disabled=n("disabled"),this.status=n("status")}return d(e,[{key:"sleeping",value:function(){var e=this.icons;Ne.hide(e.locked,e.unlocked,e.nowallet,e.syncing,e.disabled),Ne.show(e.sleeping),this.status&&(this.status.textContent=ke("OFF"))}},{key:"locked",value:function(){var e=this.icons;Ne.hide(e.unlocked,e.nowallet,e.sleeping,e.disabled),Ne.show(e.locked),this.status&&(this.status.textContent=ke(z))}},{key:"unlocked",value:function(){var e=this.icons;Ne.hide(e.locked,e.nowallet,e.sleeping,e.disabled),Ne.show(e.unlocked),this.status&&(this.status.textContent=ke("READY"))}},{key:"nowallet",value:function(){var e=this.icons;Ne.hide(e.locked,e.unlocked,e.sleeping,e.syncing,e.disabled),Ne.show(e.nowallet),this.status&&(this.status.textContent=ke("NO_WALLET"))}},{key:"disabled",value:function(){var e=this.icons;Ne.hide(e.locked,e.unlocked,e.sleeping,e.syncing,e.nowallet,e.nopeers),Ne.show(e.disabled),e.disabled.dataset.tooltip=ke("DISABLED_MSG")}},{key:"setSyncing",value:function(e){var t=this.icons.syncing;if(e&&e.running&&!e.disabled){if(0===e.peerCount)return Ne.show(this.icons.nopeers),void Ne.hide(t);if(Ne.hide(this.icons.nopeers),!e.synced)return Ne.show(t),void(t.dataset.tooltip=ke("WALLET_SYNC_PROGRESS",{syncProgress:(100*e.syncProgress).toFixed(1)}));Ne.hide(t)}else Ne.hide(t)}},{key:"readWallet",value:function(e){if(this.setSyncing(e),!e)return this.nowallet();switch(!0){case e.disabled:this.disabled();break;case!e.running:this.sleeping();break;case!e.open:this.locked();break;case e.open:this.unlocked();break;default:console.error("wallet in unknown state",e)}}}]),e}(),_e=function(){function e(t,n,r,a){var o=this;i(this,e),h(this,"toggle",void 0),h(this,"toggling",void 0),this.toggle=t,0===t.children.length&&t.appendChild(document.createElement("div")),Ne.bind(t,"click",function(){var e=s(f().mark((function e(r){var s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r.stopPropagation(),Ne.hide(n),s=!t.classList.contains("on"),o.toggling=!0,e.prev=4,e.next=7,a(s);case 7:e.next=15;break;case 9:return e.prev=9,e.t0=e.catch(4),o.toggling=!1,Ne.show(n),n.textContent=ke(H,{msg:e.t0.msg||String(e.t0)}),e.abrupt("return");case 15:o.toggling=!1;case 16:case"end":return e.stop()}}),e,null,[[4,9]])})));return function(t){return e.apply(this,arguments)}}()),this.setState(r)}return d(e,[{key:"setState",value:function(e){e?this.toggle.classList.add("on"):this.toggle.classList.remove("on")}}]),e}();function je(e){return new Promise((function(t){return setTimeout(t,e)}))}var He=31536e6,ze=2592e6,Ge=864e5,Xe=36e5,Ke=6e4;function Qe(e,t){var n=Math.floor(e/t);return[n,e-n*t]}var Ye=function(){function e(t,n){var r,a,o,s=this;i(this,e),h(this,"input",void 0),h(this,"prec",void 0),h(this,"fmt",void 0),h(this,"changed",void 0),h(this,"set",void 0),h(this,"min",void 0),this.input=t,this.prec=null!==(r=n.prec)&&void 0!==r?r:0,this.fmt=n.sigFigs?et:$e,this.changed=null!==(a=n.changed)&&void 0!==a?a:function(){},this.set=n.set,this.min=null!==(o=n.min)&&void 0!==o?o:0,Ne.bind(t,"change",(function(){s.inputChanged()}))}return d(e,[{key:"inputChanged",value:function(){var e=this.changed;e&&e(this.value())}},{key:"setValue",value:function(e){this.input.value=String(e),e=this.value(),this.set&&this.set(e,this.input.value)}},{key:"value",value:function(){var e=this.input,t=this.min,n=this.prec,r=a((0,this.fmt)(Math.max(tt(e.value,null!=t?t:0),null!=t?t:0),null!=n?n:0),2),o=r[0],s=r[1];return e.value=s,o}}]),e}(),Je=function(e){g(a,e);var t,n,r=(t=a,n=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(e){return!1}}(),function(){var e,r=b(t);if(n){var a=b(this).constructor;e=Reflect.construct(r,arguments,a)}else e=r.apply(this,arguments);return y(this,e)});function a(e,t){var n,o;i(this,a),h(v(o=r.call(this,Ne.safeSelector(e,"input"),t)),"inc",void 0),h(v(o),"opts",void 0),o.opts=t,o.inc=null!==(n=t.inc)&&void 0!==n?n:1;var s=Ne.safeSelector(e,".ico-arrowup"),c=Ne.safeSelector(e,".ico-arrowdown");return Ne.bind(s,"click",(function(){o.increment(1)})),Ne.bind(c,"click",(function(){o.increment(-1)})),o}return d(a,[{key:"setIncrementAndMinimum",value:function(e,t){this.inc=e,this.min=t}},{key:"increment",value:function(e){var t=this.inc,n=this.min;this.input.value=String(Math.max(this.value()+e*t,n)),this.inputChanged()}}]),a}(Ye),Ze=function(){function e(t,n){var r=this;i(this,e),h(this,"track",void 0),h(this,"ball",void 0),h(this,"r",void 0),h(this,"changed",void 0),this.changed=n,this.r=0;var a=document.createElement("div");a.dataset.tmpl="color",t.appendChild(a);var o=this.track=document.createElement("div");o.dataset.tmpl="track",a.appendChild(o);var s=this.ball=document.createElement("div");s.dataset.tmpl="ball",o.appendChild(s),Ne.bind(t,"mousedown",(function(e){if(0===e.button){e.preventDefault(),e.stopPropagation();var t=e.pageX,n=o.clientWidth,a=r.r*n,i=function(e){e.preventDefault();var o=function(e){return Math.max(Math.min(a+(e.pageX-t),n),0)}(e);r.r=o/n,s.style.left="".concat(100*r.r,"%"),r.changed(r.r)};Ne.bind(document,"mousemove",i),Ne.bind(document,"mouseup",(function e(t){i(t),Ne.unbind(document,"mousemove",i),Ne.unbind(document,"mouseup",e)}))}})),Ne.bind(t,"click",(function(e){if(0===e.button){var t=e.pageX,n=Ne.layoutMetrics(o);r.r=nt((t-n.bodyLeft)/n.width,0,1),s.style.left="".concat(r.r*n.width,"px"),r.changed(r.r)}}))}return d(e,[{key:"setValue",value:function(e){this.r=nt(e,0,1),this.ball.style.left="".concat(100*this.r,"%")}}]),e}();function $e(e,t){var n=Math.pow(10,null!=t?t:0),r=(e=Math.round(e*n)/n).toFixed(t);if(t>0){for(;r.endsWith("0");)r=r.substring(0,r.length-1);r.endsWith(".")&&(r=r.substring(0,r.length-1))}return[e,r]}function et(e,t){var n=Math.floor(Math.log10(Math.abs(e)));return n>=3?[Math.round(e),e.toFixed(0)]:$e(e,Math.min(4-n,t))}function tt(e,t){var n=parseFloat((null!=e?e:"").replace(/,/g,""));return isNaN(n)?null!=t?t:0:n}function nt(e,t,n){return e<t?t:e>n?n:e}function rt(e,t,n,r){return at.apply(this,arguments)}function at(){return(at=s(f().mark((function e(t,n,r,a){var o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,navigator.clipboard.writeText(t);case 3:e.next=8;break;case 5:e.prev=5,e.t0=e.catch(0),console.error("Unable to copy: ",e.t0);case 8:o=n.style.color,s=r.style.color,n.style.color=a,r.style.color=a,setTimeout((function(){n.style.color=o,r.style.color=s}),350);case 13:case"end":return e.stop()}}),e,null,[[0,5]])})))).apply(this,arguments)}var ot,st,it,ct,lt=function(){function e(){i(this,e)}return d(e,[{key:"unload",value:function(){}}]),e}(),ut=function(e){return e[e.Disconnected=0]="Disconnected",e[e.Connected=1]="Connected",e[e.InvalidCert=2]="InvalidCert",e}({}),dt=function(e){return e[e.Approved=0]="Approved",e[e.Pending=1]="Pending",e[e.NotApproved=2]="NotApproved",e}({}),ht=function(e){return e[e.WalletDefault=0]="WalletDefault",e[e.UserAdded=1]="UserAdded",e[e.Discovered=2]="Discovered",e}({}),pt=2147483647;function ft(){return ot}function vt(e){var t=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(e){return!1}}();return function(){var n,r=b(e);if(t){var a=b(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return y(this,n)}}function mt(e){var t=[e.booleanOptTmpl,e.rangeOptTmpl,e.orderOptTmpl];it=t[0],ct=t[1],st=t[2]}var gt=new Intl.NumberFormat(Ne.languages(),{minimumSignificantDigits:3,maximumSignificantDigits:3}),yt=d((function e(t,n,r){var a=this;i(this,e),h(this,"opt",void 0),h(this,"node",void 0),h(this,"tmpl",void 0),h(this,"on",void 0),this.opt=t;var o=this.node=st.cloneNode(!0),s=this.tmpl=Ne.parseTemplate(o);s.optName.textContent=t.displayname,s.tooltip.dataset.tooltip=t.description,n?s.chainIcon.src=Ne.logoPath(n):Ne.hide(s.chainIcon),this.on=!1,Ne.bind(o,"click",(function(){a.on||(a.on=!0,o.classList.add("selected"),r.enable())})),Ne.bind(s.toggle,"click",(function(e){a.on&&(e.stopPropagation(),a.on=!1,o.classList.remove("selected"),r.disable())}))})),bt=function(e){g(n,e);var t=vt(n);function n(e,r,a,o){var s;if(i(this,n),h(v(s=t.call(this,e,r,{enable:function(){return s.enable()},disable:function(){return s.disable()}})),"control",void 0),h(v(s),"changed",void 0),h(v(s),"dict",void 0),s.dict=a,s.changed=function(){return o()},void 0===e.boolean)throw Error("not a boolean opt");var c=e.boolean,l=s.control=it.cloneNode(!0);return s.tmpl.controls.appendChild(l),Ne.parseTemplate(l).reason.textContent=c.reason,s.on=void 0!==a[e.key]?a[e.key]:e.default,s.on&&s.node.classList.add("selected"),s}return d(n,[{key:"store",value:function(){this.on===this.opt.default?delete this.dict[this.opt.key]:this.dict[this.opt.key]=this.on,this.changed()}},{key:"enable",value:function(){this.store()}},{key:"disable",value:function(){this.store()}}]),n}(yt),xt=function(e){g(n,e);var t=vt(n);function n(e,r,a,o){var s;if(i(this,n),h(v(s=t.call(this,e,r,{enable:function(){return s.enable()},disable:function(){return s.disable()}})),"handler",void 0),h(v(s),"x",void 0),h(v(s),"changed",void 0),h(v(s),"dict",void 0),s.dict=a,s.changed=o,void 0===e.xyRange)throw Error("not an xy range opt");var c=e.xyRange,l=a[e.key];return s.on=void 0!==l,s.on?(s.node.classList.add("selected"),s.x=l):s.x=e.default,s.handler=new kt(c,s.x,{changed:o,selected:function(){s.node.classList.add("selected")},settingsDict:a,settingsKey:e.key}),s.tmpl.controls.appendChild(s.handler.control),s}return d(n,[{key:"enable",value:function(){this.dict[this.opt.key]=this.x,this.changed()}},{key:"disable",value:function(){delete this.dict[this.opt.key],this.changed()}},{key:"setValue",value:function(e){this.handler.setValue(e),this.on=!0,this.node.classList.add("selected")}}]),n}(yt),kt=function(){function e(t,n,r){var a,o,s,c,l=this;i(this,e),h(this,"control",void 0),h(this,"range",void 0),h(this,"tmpl",void 0),h(this,"initVal",void 0),h(this,"settingsDict",void 0),h(this,"settingsKey",void 0),h(this,"x",void 0),h(this,"scrollingX",void 0),h(this,"y",void 0),h(this,"r",void 0),h(this,"roundX",void 0),h(this,"roundY",void 0),h(this,"disabled",void 0),h(this,"updated",void 0),h(this,"changed",void 0),h(this,"selected",void 0),h(this,"convert",void 0);var u=this.control=ct.cloneNode(!0),d=this.tmpl=Ne.parseTemplate(u);d.rangeLblStart.textContent=t.start.label,d.rangeLblEnd.textContent=t.end.label,d.xUnit.textContent=t.xUnit,d.yUnit.textContent=t.yUnit,this.range=t,this.initVal=n,this.settingsDict=r.settingsDict,this.settingsKey=null!==(a=r.settingsKey)&&void 0!==a?a:"",this.roundX=Boolean(r.roundX),this.roundY=Boolean(r.roundY),this.setDisabled(Boolean(r.disabled)),this.changed=null!==(o=r.changed)&&void 0!==o?o:function(){},this.selected=null!==(s=r.selected)&&void 0!==s?s:function(){},this.updated=null!==(c=r.updated)&&void 0!==c?c:function(){},this.convert=r.convert||function(e){return e};var p=d.slider,f=d.handle,v=t.end.x-t.start.x,m=t.end.y-t.start.y,g=function(e){return(e-t.start.x)/v};this.r=g(n),this.scrollingX=this.x=n,this.y=this.r*m+t.start.y,this.accept(this.scrollingX,{skipUpdate:!0});var y=function e(n){if(!l.disabled&&("change"===n.type||n.target!==d.xInput)){var r=d.xInput.value;if(r){var a=parseFloat(r);isNaN(a)||(l.scrollingX=wt(a,t.start.x,t.end.x),l.r=g(l.scrollingX),l.y=l.r*m+t.start.y,l.accept(l.scrollingX))}Ne.hide(d.xInput),Ne.show(d.x),Ne.unbind(document,"click",e),l.changed()}};Ne.bind(d.x,"click",(function(e){l.disabled||(Ne.hide(d.x),Ne.show(d.xInput),d.xInput.focus(),d.xInput.value=gt.format(l.scrollingX),Ne.bind(document,"click",y),e.stopPropagation())})),Ne.bind(d.xInput,"change",y);var b=function e(n){if(!l.disabled&&("change"===n.type||n.target!==d.yInput)){var r=d.yInput.value;if(r){var a=parseFloat(r);isNaN(a)||(l.y=wt(a,t.start.y,t.end.y),l.r=(l.y-t.start.y)/m,l.scrollingX=t.start.x+l.r*v,l.accept(l.scrollingX))}Ne.hide(d.yInput),Ne.show(d.y),Ne.unbind(document,"click",e),l.changed()}};Ne.bind(d.y,"click",(function(e){l.disabled||(Ne.hide(d.y),Ne.show(d.yInput),d.yInput.focus(),d.yInput.value=gt.format(l.y),Ne.bind(document,"click",b),e.stopPropagation())})),Ne.bind(d.yInput,"change",b),Ne.bind(f,"mousedown",(function(e){if(!l.disabled&&0===e.button){e.preventDefault(),e.stopPropagation(),l.selected();var n=e.pageX,r=p.clientWidth-f.offsetWidth,a=g(l.scrollingX)*r,o=function(e,o){e.preventDefault(),l.r=function(e){return Math.max(Math.min(a+(e.pageX-n),r),0)}(e)/r,l.scrollingX=l.r*v+t.start.x,l.y=l.r*m+t.start.y,l.accept(l.scrollingX,{skipChange:!o})};Ne.bind(document,"mousemove",o),Ne.bind(document,"mouseup",(function e(t){o(t,!0),Ne.unbind(document,"mousemove",o),Ne.unbind(document,"mouseup",e),l.changed()}))}})),Ne.bind(d.sliderBox,"click",(function(e){if(!l.disabled&&0===e.button){var n=e.pageX,r=Ne.layoutMetrics(d.slider);l.r=wt((n-r.bodyLeft)/r.width,0,1),l.scrollingX=l.r*v+t.start.x,l.y=l.r*m+t.start.y,l.accept(l.scrollingX)}}))}return d(e,[{key:"setDisabled",value:function(e){this.control.classList.toggle("disabled",e),this.disabled=e}},{key:"setXLabel",value:function(e){this.tmpl.x.textContent=e}},{key:"setYLabel",value:function(e){this.tmpl.y.textContent=e}},{key:"accept",value:function(e,t){var n,r=this.tmpl;this.roundX&&(e=Math.round(e)),this.roundY&&(this.y=Math.round(this.y)),r.x.textContent=gt.format(e),r.y.textContent=gt.format(this.y),this.roundY&&(r.y.textContent="".concat(this.y));var a=wt(this.r,0,1);r.handle.style.left="calc(".concat(100*a,"% - ").concat(14*a,"px)"),this.x=e,this.scrollingX=e,t=null!==(n=t)&&void 0!==n?n:{},this.settingsDict&&(this.settingsDict[this.settingsKey]=this.convert(this.x,this.y)),t.skipUpdate||(this.updated(e,this.y),t.skipChange||this.changed())}},{key:"setValue",value:function(e,t){var n=this.range;this.r=(e-n.start.x)/(n.end.x-n.start.x),this.y=n.start.y+this.r*(n.end.y-n.start.y),this.accept(e,{skipUpdate:t})}},{key:"modified",value:function(){return this.x!==this.initVal}},{key:"reset",value:function(){this.setValue(this.initVal,!0)}}]),e}(),wt=function(e,t,n){return e<t?t:e>n?n:e};function Ct(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return St(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?St(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function St(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ft=1e8;function Tt(e){var t=e.sell?B:E,n=document.documentElement.lang.toLowerCase();return ke(t).toLocaleLowerCase(n)}function Dt(e){return 1===e.type?0===e.tif?ke("LIMIT_ORDER_IMMEDIATE_TIF"):ke(X):ke(K)}function It(e){return 2===e.type&&!e.sell}function At(e){if(!e.matches)return!1;var t,n=Ct(e.matches);try{for(n.s();!(t=n.n()).done;)if(t.value.active)return!0}catch(e){n.e(e)}finally{n.f()}return!1}function Rt(e){if(!e.id)return ke("ORDER_SUBMITTING");var t=At(e);switch(e.status){case 0:return ke(W);case 1:return ke("EPOCH");case 2:return e.cancelling?ke(q):t?"".concat(ke(M),"/").concat(ke(V)):ke(M);case 3:return t?ke(V):0===e.filled&&3!==e.type?ke("NO_MATCH"):ke(O);case 4:return t?"".concat(ke(U),"/").concat(ke(V)):ke(U);case 5:return t?"".concat(ke(_),"/").concat(ke(V)):ke(_)}return ke(W)}function Et(e){if(!e.matches)return 0;var t=It(e)?function(e){return e.qty*e.rate/Ft}:function(e){return e.qty};return e.matches.reduce((function(e,n){return n.isCancel?e:e+t(n)}),0)}function Bt(e){if(!e.matches)return 0;var t=It(e)?function(e){return e.qty*e.rate/Ft}:function(e){return e.qty};return e.matches.reduce((function(e,n){return n.isCancel?e:0===n.side&&n.status>=3||1===n.side&&n.status>=4?e+t(n):e}),0)}function Pt(e){var t;if(null===(t=e.matches)||void 0===t||!t.length)return ke(K);var n=Ne.formatCoinValue(ft().conventionalRate(e.baseID,e.quoteID,Lt(e)));return e.matches.length>1&&(n="~ "+n),n}function Lt(e){var t;if(null===(t=e.matches)||void 0===t||!t.length)return 0;var n,r=0,a=0,o=Ct(e.matches);try{for(o.s();!(n=o.n()).done;){var s=n.value;a+=s.qty,r+=s.rate*s.qty}}catch(e){o.e(e)}finally{o.f()}return r/a}function Ot(e,t){return e*t/Ft}function Mt(e){return ke("MATCH_STATUS_REVOKED",{status:ke(e)})}function qt(e){return 1===e.type&&1===e.tif&&e.status<3}function Nt(e){var t=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(e){return!1}}();return function(){var n,r=b(e);if(t){var a=b(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return y(this,n)}}function Wt(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Vt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Vt(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Vt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ut=Ne.bind,_t=2*Math.PI,jt=String.fromCharCode(59914),Ht=String.fromCharCode(59915),zt={body:"#0b2031",axisLabel:"#b1b1b1",gridBorder:"#383f4b",gridLines:"#383f4b",gapLine:"#6b6b6b",value:"#9a9a9a",zoom:"#5b5b5b",zoomHover:"#aaa",sellLine:"#ae3333",buyLine:"#05a35a",sellFill:"#591a1a",buyFill:"#02572f",crosshairs:"#888",legendFill:"black",legendText:"#d5d5d5"},Gt={body:"#f4f4f4",axisLabel:"#1b1b1b",gridBorder:"#ddd",gridLines:"#ddd",gapLine:"#595959",value:"#4d4d4d",zoom:"#777",zoomHover:"#333",sellLine:"#99302b",buyLine:"#207a46",sellFill:"#bd5959",buyFill:"#4cad75",crosshairs:"#595959",legendFill:"#e6e6e6",legendText:"#1b1b1b"},Xt=function(){function e(t,n){var r=this;i(this,e),h(this,"parent",void 0),h(this,"report",void 0),h(this,"theme",void 0),h(this,"canvas",void 0),h(this,"visible",void 0),h(this,"renderScheduled",void 0),h(this,"ctx",void 0),h(this,"mousePos",void 0),h(this,"rect",void 0),h(this,"wheelLimiter",void 0),h(this,"boundResizer",void 0),h(this,"plotRegion",void 0),h(this,"xRegion",void 0),h(this,"yRegion",void 0),h(this,"dataExtents",void 0),h(this,"unattachers",void 0),this.parent=t,this.report=n,this.theme=k.isDark()?zt:Gt,this.canvas=document.createElement("canvas"),this.visible=!0,t.appendChild(this.canvas);var a=this.canvas.getContext("2d");if(a){this.ctx=a,this.ctx.textAlign="center",this.ctx.textBaseline="middle",this.mousePos=null,Ut(this.canvas,"mousemove",(function(e){r.rect&&(r.mousePos={x:e.clientX-r.rect.left,y:e.clientY-r.rect.y},r.draw())})),Ut(this.canvas,"mouseleave",(function(){r.mousePos=null,r.draw()})),new ResizeObserver((function(){return r.resize()})).observe(this.parent),this.wheelLimiter=null,Ut(this.canvas,"wheel",(function(e){r.wheel(e)}),{passive:!0}),Ut(this.canvas,"click",(function(e){r.click(e)}));var o=function(){r.visible="hidden"!==document.visibilityState,r.visible&&r.renderScheduled&&(r.renderScheduled=!1,r.draw())};Ut(document,"visibilitychange",o),this.unattachers=[function(){Ne.unbind(document,"visibilitychange",o)}]}else console.error("error getting canvas context")}return d(e,[{key:"wheeled",value:function(){var e=this;this.wheelLimiter=window.setTimeout((function(){e.wheelLimiter=null}),100)}},{key:"clear",value:function(){this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height)}},{key:"draw",value:function(){this.render()}},{key:"click",value:function(e){this.report.click(e)}},{key:"wheel",value:function(e){this.zoom(e.deltaY<0)}},{key:"resize",value:function(){var e=this;this.canvas.width=this.parent.clientWidth,this.canvas.height=this.parent.clientHeight;var t=new Jt(0,this.canvas.width,0,this.canvas.height-30),n=new Jt(0,this.canvas.width,this.canvas.height-30,this.canvas.height),r=new Jt(0,40,0,this.canvas.height-30);this.plotRegion=new Zt(this.ctx,t),this.xRegion=new Zt(this.ctx,n),this.yRegion=new Zt(this.ctx,r),window.requestAnimationFrame((function(){e.rect=e.canvas.getBoundingClientRect(),e.report.resize()}))}},{key:"zoom",value:function(e){this.wheelLimiter||this.report.zoom(e)}},{key:"unattach",value:function(){var e,t=Wt(this.unattachers);try{for(t.s();!(e=t.n()).done;)(0,e.value)()}catch(e){t.e(e)}finally{t.f()}this.unattachers=[]}},{key:"render",value:function(){console.error("child class must override render method")}},{key:"applyLabelStyle",value:function(e){this.ctx.textAlign="center",this.ctx.textBaseline="middle",this.ctx.font="".concat(null!=e?e:"14","px 'sans', sans-serif"),this.ctx.fillStyle=this.theme.axisLabel}},{key:"plotXLabels",value:function(e,t,n,r){var a=this,o=new Jt(t,n,0,1);this.xRegion.plot(o,(function(o,s){a.applyLabelStyle();var i=(n+t)/2,c=t,l=i,u=[s.x(t),s.x(n)],d=u[0],h=u[1],p=s.y(.5);e.lbls.forEach((function(e){var t=o.measureText(e.txt),n=s.x(e.val);n-t.width/2<d||n+t.width/2>h||(o.fillText(e.txt,n,p),i>=c&&i<e.val&&(l=(c+e.val)/2),c=e.val)})),o.font="11px 'sans', sans-serif",2===r.length?(o.fillText(r[0],s.x(l),s.y(.63)),o.fillText(r[1],s.x(l),s.y(.23))):1===r.length&&o.fillText(r[0],s.x(l),p)}),!0)}},{key:"plotXGrid",value:function(e,t,n){var r=this,a=new Jt(t,n,0,1);this.plotRegion.plot(a,(function(t,n){t.lineWidth=1,t.strokeStyle=r.theme.gridLines,e.lbls.forEach((function(e){nn(t,n.x(e.val),n.y(0),n.x(e.val),n.y(1))}))}),!0)}},{key:"plotYLabels",value:function(e,t,n,r){var a=this,o=new Jt(0,1,t,n),s=function(e,t,n,r,o,s){e.save(),e.fillStyle=a.theme.body,e.beginPath(),e.roundRect?e.roundRect(t,n,r,o,s):e.rect(t,n,r,o),e.fill(),e.restore()};this.yRegion.plot(o,(function(o,i){a.applyLabelStyle(),a.ctx.textAlign="left";var c=n/2,l=0,u=c,d=i.x(0);e.lbls.forEach((function(e){var r=i.y(e.val);if(!(r<i.y(n)+3+7||r>i.y(t)-3-7)){var a=o.measureText(e.txt);s(o,d,r-7-3,a.width+6,23,3),o.fillText(e.txt,d+3,r+2),c>=l&&c<e.val&&(u=(l+e.val)/2),l=e.val}}));var h=o.measureText(r),p=i.y(u);s(o,d,p-3-7,h.width+6,20,3),o.fillText(r,d+3,i.y(u))}),!0)}},{key:"plotYGrid",value:function(e,t,n,r){var a=this,o=new Jt(0,1,n,r);e.plot(o,(function(e,n){e.lineWidth=1,e.strokeStyle=a.theme.gridLines,t.lbls.forEach((function(t){nn(e,n.x(0),n.y(t.val),n.x(1),n.y(t.val))}))}),!0)}},{key:"makeYLabels",value:function(e,t,n,r){this.applyLabelStyle();var a=$t(this.ctx,e.height(),this.dataExtents.y.min,this.dataExtents.y.max,50,t,n,r),o=(a.widest||0)+20;return this.yRegion.extents.x.max=o,this.yRegion.extents.y.max=e.extents.y.max,a}},{key:"line",value:function(e,t,n,r,a){nn(this.ctx,e,t,n,r,a)}},{key:"dot",value:function(e,t,n,r){rn(this.ctx,e,t,n,r)}}]),e}(),Kt=function(e){g(n,e);var t=Nt(n);function n(e,r,a){var o;return i(this,n),h(v(o=t.call(this,e,{resize:function(){return o.resized()},click:function(e){return o.clicked(e)},zoom:function(e){return o.zoomed(e)}})),"reporters",void 0),h(v(o),"book",void 0),h(v(o),"zoomLevel",void 0),h(v(o),"lotSize",void 0),h(v(o),"conventionalRateStep",void 0),h(v(o),"lines",void 0),h(v(o),"markers",void 0),h(v(o),"zoomInBttn",void 0),h(v(o),"zoomOutBttn",void 0),h(v(o),"baseUnit",void 0),h(v(o),"quoteUnit",void 0),o.reporters=r,o.zoomLevel=a,o.lines=[],o.markers={buys:[],sells:[]},o.setZoomBttns(),o.resize(),o}return d(n,[{key:"setZoomBttns",value:function(){this.zoomInBttn=new Zt(this.ctx,new Jt(0,0,0,0)),this.zoomOutBttn=new Zt(this.ctx,new Jt(0,0,0,0))}},{key:"resized",value:function(){this.setZoomBttns(),this.book&&this.draw()}},{key:"zoomed",value:function(e){this.zoomLevel&&this.book.buys&&this.book.sells&&(this.wheeled(),this.zoomLevel*=e?2/3:1.5,this.zoomLevel=nt(this.zoomLevel,.005,2),this.draw(),this.reporters.zoom(this.zoomLevel))}},{key:"clicked",value:function(e){if(this.dataExtents){var t=e.clientX-this.rect.left,n=e.clientY-this.rect.y;if(this.zoomInBttn.contains(t,n))this.zoom(!0);else if(this.zoomOutBttn.contains(t,n))this.zoom(!1);else{var r=this.plotRegion.translator(this.dataExtents);this.reporters.click(r.unx(t))}}}},{key:"set",value:function(e,t,n,r,o){if(this.book=e,this.lotSize=t/r.conventional.conversionFactor,this.conventionalRateStep=Ne.conventionalRateStep(n,r,o),this.baseUnit=r.conventional.unit,this.quoteUnit=o.conventional.unit,!this.zoomLevel){var s=a(this.gap(),2),i=s[0],c=s[1],l=Math.max(c/i*5,.05);this.zoomLevel=Math.min(l,2)}this.draw()}},{key:"render",value:function(){var e=this;if(this.book&&this.visible&&0!==this.canvas.width){this.clear();var t=this.ctx,n=this.mousePos,o=this.book.buys,s=this.book.sells,i=a(this.gap(),2),c=i[0],l=i[1],u=this.zoomLevel*c/2,d=c+u,h=c-u,p=r(this.markers.buys),f=r(this.markers.sells);p.sort((function(e,t){return t.rate-e.rate})),f.sort((function(e,t){return e.rate-t.rate}));for(var v=[],m=[],g=[],y=[],b=[],x={buyBase:0,buyQuote:0,sellBase:0,sellQuote:0},k=0,w=0,C=0;C<o.length;C++){var S=o[C];if(w+=S.qty,S.rate>=h&&g.push([S.rate,w]),!S.epoch)for(k+=S.qty,m.push([S.rate,k]),x.buyBase+=S.qty,x.buyQuote+=S.qty*S.rate;p.length&&an(p[0].rate,S.rate);){var F=p.shift();F&&v.push({rate:F.rate,qty:S.epoch?w:k,sell:S.sell,active:F.active})}}var T=m.length?tn(m)[1]:0;m.push([h,T]);var D=g.length?tn(g)[1]:0;g.push([h,D]),w=k=0;for(var I=0;I<s.length;I++){var A=s[I];if(w+=A.qty,A.rate<=d&&b.push([A.rate,w]),!A.epoch)for(k+=A.qty,y.push([A.rate,k]),x.sellBase+=A.qty,x.sellQuote+=A.qty*A.rate;f.length&&an(f[0].rate,A.rate);){var R=f.shift();R&&v.push({rate:R.rate,qty:A.epoch?w:k,sell:A.sell,active:R.active})}}var E=y.length?tn(y)[1]:0;y.push([d,E]);var B=b.length?tn(b)[1]:0;b.push([d,B]);var P=this.xRegion.extents.y.min,L=(P+40)/P,O=(B&&D?Math.max(D,B):B||D||1)*L,M=new Jt(h,d,0,O);this.dataExtents=M;var q=null,N=$t(t,this.plotRegion.width(),M.x.min,M.x.max,100,this.conventionalRateStep,"");this.plotXGrid(N,h,d);var W=this.makeYLabels(this.plotRegion,this.lotSize,this.baseUnit);this.plotYGrid(this.plotRegion,W,this.dataExtents.y.min,this.dataExtents.y.max),this.plotRegion.plot(M,(function(t,r){t.lineWidth=1,t.strokeStyle=e.theme.gridBorder,t.lineWidth=2.5,t.strokeStyle=e.theme.gapLine,nn(t,r.x(c),r.y(0),r.x(c),r.y(.3*M.y.max)),t.font="30px 'demi-sans', sans-serif",t.textAlign="center",t.textBaseline="middle",t.fillStyle=e.theme.value;var a=.5*M.y.max;t.fillText(Ne.formatFourSigFigs(c),r.x(c),r.y(a)),t.font="12px 'sans', sans-serif",t.fillText("".concat((l/c*100).toFixed(2),"% spread"),r.x(c),r.y(a)+24),t.textAlign="center",t.textBaseline="middle";var o=e.plotRegion.extents.midX,s=r.y(.9*O),i=M.xRange/c*100,u="".concat(i.toFixed(1),"%"),p=t.measureText(u).width;t.font="13px 'sans', sans-serif",t.fillText(u,o,s+1);var f=o-p/2-10-20,g=s-10;e.zoomOutBttn.setExtents(f,f+20,g,g+20);var b=n&&e.zoomOutBttn.contains(n.x,n.y);e.zoomOutBttn.plot(new Jt(0,1,0,1),(function(t){t.font="12px 'icomoon'",t.fillStyle=e.theme.zoom,b&&(t.fillStyle=e.theme.zoomHover,t.font="13px 'icomoon'"),t.fillText(Ht,e.zoomOutBttn.extents.midX,e.zoomOutBttn.extents.midY)})),f=o+p/2+10,e.zoomInBttn.setExtents(f,f+20,g,g+20),b=n&&e.zoomInBttn.contains(n.x,n.y),e.zoomInBttn.plot(new Jt(0,1,0,1),(function(t){t.font="12px 'icomoon'",t.fillStyle=e.theme.zoom,b&&(t.fillStyle=e.theme.zoomHover,t.font="14px 'icomoon'"),t.fillText(jt,e.zoomInBttn.extents.midX,e.zoomInBttn.extents.midY)}));for(var x=.005*(d-h),k=[],w=0,C=v||[];w<C.length;w++){var S=C[w],F=n&&on(S.rate,r.unx(n.x),x);F&&k.push(S.rate),t.save(),t.lineWidth=F||S.active?5:3,t.strokeStyle=S.sell?e.theme.sellLine:e.theme.buyLine,t.fillStyle=S.sell?e.theme.sellFill:e.theme.buyFill;var T=F||S.active?10:8;t.beginPath();var D={x:r.x(S.rate),y:r.y(S.qty)-8},I=D.y-Math.sqrt(3)*T/2;t.moveTo(D.x,D.y),t.lineTo(D.x-T/2,I),t.lineTo(D.x+T/2,I),t.closePath(),t.stroke(),t.fill(),t.restore()}if(n&&e.plotRegion.contains(n.x,n.y)){var A=r.unx(n.x),R=y,E=function(e){return e>=A},B=e.theme.sellLine;A<c&&(R=m,E=function(e){return e<=A},B=e.theme.buyLine);for(var P,L,N=R[0],W=0;W<R.length;W++){var V=R[W];if(E(V[0]))break;N=V}P=A,L=e.theme.crosshairs,P>d||P<h||(t.save(),t.setLineDash([3,5]),t.lineWidth=1.5,t.strokeStyle=L,nn(t,r.x(P),r.y(0),r.x(P),r.y(O)),t.restore()),q={rate:A,depth:N[1],dotColor:B,hoverMarkers:k}}})),t.lineWidth=1.5,t.setLineDash([3,3]),t.fillStyle=this.theme.sellFill,t.strokeStyle=this.theme.sellLine,this.drawDepth(b),t.fillStyle=this.theme.buyFill,t.strokeStyle=this.theme.buyLine,this.drawDepth(g),t.lineWidth=2.5,t.setLineDash([]),t.fillStyle=this.theme.sellFill,t.strokeStyle=this.theme.sellLine,this.drawDepth(y),t.fillStyle=this.theme.buyFill,t.strokeStyle=this.theme.buyLine,this.drawDepth(m),this.plotYLabels(W,this.dataExtents.y.min,this.dataExtents.y.max,this.baseUnit),this.plotXLabels(N,h,d,["".concat(this.quoteUnit,"/"),this.baseUnit]),q&&this.plotRegion.plot(M,(function(e,t){q&&rn(e,t.x(q.rate),t.y(q.depth),q.dotColor,5)})),this.reporters.volume(x),this.reporters.mouse(q)}else this.renderScheduled=!0}},{key:"drawDepth",value:function(e){var t,n=e[0];this.plotRegion.plot(this.dataExtents,(function(r,a){var o=a.y(0),s=a.y(n[1]);r.beginPath(),r.moveTo(a.x(n[0]),a.y(n[1]));for(var i=0;i<e.length;i++)t=a.x(e[i][0]),r.lineTo(t,s),s=a.y(e[i][1]),r.lineTo(t,s);r.stroke(),r.lineTo(t,o),r.lineTo(a.x(n[0]),o),r.closePath(),r.globalAlpha=.25,r.fill()}))}},{key:"gap",value:function(){var e=[this.book.bestGapBuy(),this.book.bestGapSell()],t=e[0],n=e[1];return t?n?[(n.rate+t.rate)/2,n.rate-t.rate]:[t.rate,0]:n?[n.rate,0]:[1,0]}},{key:"setLines",value:function(e){this.lines=e}},{key:"setMarkers",value:function(e){this.markers=e}}]),n}(Xt),Qt=function(e){g(n,e);var t=Nt(n);function n(e,r){var a;return i(this,n),h(v(a=t.call(this,e,{resize:function(){return a.resized()},click:function(){a.clicked()},zoom:function(e){return a.zoomed(e)}})),"reporters",void 0),h(v(a),"data",void 0),h(v(a),"zoomLevel",void 0),h(v(a),"numToShow",void 0),h(v(a),"candleRegion",void 0),h(v(a),"volumeRegion",void 0),h(v(a),"resizeTimer",void 0),h(v(a),"zoomLevels",void 0),h(v(a),"market",void 0),h(v(a),"rateConversionFactor",void 0),a.reporters=r,a.zoomLevel=1,a.numToShow=100,a.resize(),a}return d(n,[{key:"resized",value:function(){var e=this,t=this.plotRegion.extents,n=new Jt(t.x.min,t.x.max,t.y.min,t.y.min+.85*t.yRange);this.candleRegion=new Zt(this.ctx,n);var r=new Jt(t.x.min,t.x.max,t.y.min+.85*t.yRange,t.y.max);this.volumeRegion=new Zt(this.ctx,r),this.resizeTimer&&clearTimeout(this.resizeTimer),this.resizeTimer=window.setTimeout((function(){return e.draw()}),100)}},{key:"clicked",value:function(){}},{key:"zoomed",value:function(e){var t=this.zoomLevels.indexOf(this.numToShow);if(e){if(0===t)return;this.numToShow=this.zoomLevels[t-1]}else{if(this.zoomLevels.length<=t+1||this.numToShow>this.data.candles.length)return;this.numToShow=this.zoomLevels[t+1]}this.draw()}},{key:"render",value:function(){var e,t=this,n=this.data;if(n&&this.visible&&0!==this.canvas.width){var r=n.ms,a=this.mousePos,o=n.candles||[],s=Math.min(this.numToShow,o.length),i=o.slice(o.length-s);if(this.clear(),0!==s){var c,l=function(e){return sn(e.endStamp,r)},u=function(e){return l(e)+r},d=function(e){return l(e)+.2*r},h=.6*r,p=i[0],f=i[s-1],v=[p.highRate,p.lowRate,p.matchVolume],m=v[0],g=v[1],y=v[2],b=Wt(i);try{for(b.s();!(c=b.n()).done;){var x=c.value;x.highRate>m&&(m=x.highRate),x.lowRate<g&&(g=x.lowRate),x.matchVolume>y&&(y=x.matchVolume)}}catch(e){b.e(e)}finally{b.f()}m+=.1*(m-g);var k=l(p),w=u(f);w+=.05*(w-k);var C=this.market.ratestep,S=new Jt(k,w,g,m);g===m&&(S.y.min-=C,S.y.max+=C),this.dataExtents=S;var F=null;a&&this.plotRegion.plot(new Jt(S.x.min,S.x.max,0,1),(function(e,n){var o,s=sn(n.unx(a.x),r),c=Wt(i);try{for(c.s();!(o=c.n()).done;){var u=o.value;if(l(u)===s){F=u,e.fillStyle=t.theme.gridLines,e.fillRect(n.x(l(u)),n.y(0),n.w(r),n.h(1));break}}}catch(e){c.e(e)}finally{c.f()}}));var T=this.rateConversionFactor,D=(null===(e=ft().assets[this.market.baseid])||void 0===e?void 0:e.unitInfo.conventional.unit)||this.market.basesymbol.toUpperCase(),I=function(e,t,n){var r=e[0],a=e[e.length-1],o=sn(r.endStamp,t),s=sn(a.endStamp,t)+t,i=s-o,c=Math.min(e.length,n/100),l=sn(i/c,t);if(0===l)return console.error("zero tick",t,i,c),{lbls:[]};var u=o,d=(new Date).getTimezoneOffset(),h=function(e){return(e-=6e4*d)-e%864e5},p=h(o),f=0;h(r.endStamp)===h(a.endStamp)&&(p=0);var v,m=[];for(v=t<864e5?function(e,t){return h(t)!==p?"".concat(en[e.getMonth()]).concat(e.getDate()," ").concat(e.getHours(),":").concat(String(e.getMinutes()).padStart(2,"0")):"".concat(e.getHours(),":").concat(String(e.getMinutes()).padStart(2,"0"))}:function(e){var t=e.getFullYear();return t!==f?"".concat(en[e.getMonth()]).concat(e.getDate()," '").concat(String(t).slice(2,4)):"".concat(en[e.getMonth()]).concat(e.getDate())};u<=s;){var g=new Date(u);m.push({val:u,txt:v(g,u)}),p=h(u),f=g.getFullYear(),u+=l}return{lbls:m}}(i,r,this.plotRegion.width());this.plotXGrid(I,k,w);var A=this.makeYLabels(this.candleRegion,C,D,(function(e){return Ne.formatFourSigFigs(e/T)}));this.plotYGrid(this.candleRegion,A,this.dataExtents.y.min,this.dataExtents.y.max);var R=new Jt(k,w,0,y);if(this.volumeRegion.plot(R,(function(e,n){e.fillStyle=t.theme.gridBorder;var r,a=Wt(i);try{for(a.s();!(r=a.n()).done;){var o=r.value;e.fillRect(n.x(d(o)),n.y(0),n.w(h),n.h(o.matchVolume))}}catch(e){a.e(e)}finally{a.f()}})),this.candleRegion.plot(S,(function(e,n){e.lineWidth=1;var r,a=Wt(i);try{for(a.s();!(r=a.n()).done;){var o=r.value,s=o.startRate>o.endRate,c=[n.x(d(o)),n.y(o.startRate),n.w(h),n.h(o.endRate-o.startRate)],l=c[0],u=c[1],p=c[2],f=c[3],v=[n.y(o.highRate),n.y(o.lowRate),p/2+l],m=v[0],g=v[1],y=v[2];e.strokeStyle=s?t.theme.sellLine:t.theme.buyLine,e.fillStyle=s?t.theme.sellFill:t.theme.buyFill,e.beginPath(),e.moveTo(y,m),e.lineTo(y,g),e.stroke(),e.fillRect(l,u,p,f),e.strokeRect(l,u,p,f)}}catch(e){a.e(e)}finally{a.f()}})),this.plotXLabels(I,k,w,[]),this.plotYLabels(A,this.dataExtents.y.min,this.dataExtents.y.max,D),F){var E=this.xRegion.extents.y;this.xRegion.plot(new Jt(S.x.min,S.x.max,E.min,E.max),(function(e,n){if(F){t.applyLabelStyle();var r="".concat(new Date(l(F)).toLocaleString()," - ").concat(new Date(u(F)).toLocaleString()),a=e.measureText(r).width+50,o=n.x((l(F)+u(F))/2),s=o-a/2,i=t.xRegion.extents.x;s<i.min?s=i.min:s+a>i.max&&(s=i.max-a),o=s+a/2;var c=E.min+(t.xRegion.height()-16)/2;e.fillStyle=t.theme.legendFill,e.strokeStyle=t.theme.gridBorder;var d=[s-25,c-2,a+50,20];e.fillRect.apply(e,d),e.strokeRect.apply(e,d),t.applyLabelStyle(),e.fillText(r,o,t.xRegion.extents.midY,a)}}))}this.reporters.mouse(F)}}else this.renderScheduled=!0}},{key:"setCandles",value:function(e,t,n,r){if(this.data=e,e.candles){this.market=t;var a=[r.conventional.conversionFactor,n.conventional.conversionFactor],o=a[0],s=a[1];this.rateConversionFactor=Ft*o/s;var i=25;this.zoomLevels=[];for(var c=Math.max(e.candles.length,1e3);i<c;)this.zoomLevels.push(i),i*=2;this.numToShow=100,this.draw()}}}]),n}(Xt),Yt=function(e){g(n,e);var t=Nt(n);function n(e,r){var a;i(this,n),h(v(a=t.call(this,e,{resize:function(){return a.resized()},click:function(){},zoom:function(){}})),"ani",void 0),h(v(a),"size",void 0),h(v(a),"region",void 0),h(v(a),"colorShift",void 0),h(v(a),"opts",void 0),h(v(a),"msgRegion",void 0),h(v(a),"fontSize",void 0),a.canvas.classList.add("fill-abs"),a.canvas.style.zIndex="5",a.opts=null!=r?r:{};var o=1500*Math.random();a.colorShift=360*Math.random();var s=[1,.65,.75],c=[3,3,2],l=[Math.PI,10*Math.PI/9,Math.PI/2.5],u=[0,0,1.5*Math.PI],d=function(e,t,n){return s[e]*Math.cos(c[e]*t+l[e]*n+u[e])},p=function(e,t){var n=e*Math.PI*2;return(d(0,n,t)+d(1,n,t)+d(2,n,t))/3};return a.resize(),a.ani=new We(We.Forever,(function(){for(var e=((new Date).getTime()-o)/1500*Math.PI*2,t=[],n=0;n<75;n++)t.push(p(n/74,e));a.drawValues(t)})),a}return d(n,[{key:"resized",value:function(){var e=this.opts,t=[this.canvas.width,this.canvas.height],n=t[0],r=t[1],a=.8*n,o=.8*r;a>150&&(a=150),o>100&&(o=100);var s=(n-a)/2,i=(r-o)/2;if(e.message){this.fontSize=nt(.15*o,10,14),this.applyLabelStyle(this.fontSize);var c=.5*this.fontSize,l=this.fontSize/2+c;i-=l,this.msgRegion=new Zt(this.ctx,new Jt(0,n,i+o,i+o+2*l))}this.region=new Zt(this.ctx,new Jt(s,s+a,i,i+o))}},{key:"drawValues",value:function(e){var t=this;if(this.region){this.clear();var n=function(e){return"hsl(".concat(e,", 35%, 50%)")},r=this.region,a=this.msgRegion,o=this.canvas,s=o.width,i=o.height,c=this.opts,l=c.backgroundColor,u=c.message,d=this.colorShift,h=this.ctx;l&&(h.fillStyle=!0===l?k.isDark()?"#0a1e34":"#f0f0f0":l,h.fillRect(0,0,s,i)),r.plot(new Jt(0,1,-1,1),(function(t,r){t.lineWidth=4,t.lineCap="round";var a=d+(new Date).getTime()%2e3/2e3*360,o=t.createLinearGradient(r.x(0),0,r.x(1),0);o.addColorStop(0,n(a)),t.strokeStyle=o,t.beginPath(),t.moveTo(r.x(0),r.y(e[0]));for(var s=1;s<e.length;s++){var i=s/(e.length-1);o.addColorStop(i,n(300*i+a)),t.lineTo(r.x(i),r.y(e[s]))}t.stroke()})),u&&a.plot(new Jt(0,1,0,1),(function(e,n){t.applyLabelStyle(t.fontSize),e.fillText(u,n.x(.5),n.y(.5),t.msgRegion.width())}))}}},{key:"render",value:function(){}},{key:"stop",value:function(){this.ani.stop(),this.canvas.remove()}}]),n}(Xt),Jt=function(){function e(t,n,r,a){i(this,e),h(this,"x",void 0),h(this,"y",void 0),this.setExtents(t,n,r,a)}return d(e,[{key:"setExtents",value:function(e,t,n,r){this.x={min:e,max:t},this.y={min:n,max:r}}},{key:"xRange",get:function(){return this.x.max-this.x.min}},{key:"midX",get:function(){return(this.x.max+this.x.min)/2}},{key:"yRange",get:function(){return this.y.max-this.y.min}},{key:"midY",get:function(){return(this.y.max+this.y.min)/2}}]),e}(),Zt=function(){function e(t,n){i(this,e),h(this,"context",void 0),h(this,"extents",void 0),this.context=t,this.extents=n}return d(e,[{key:"setExtents",value:function(e,t,n,r){this.extents.setExtents(e,t,n,r)}},{key:"width",value:function(){return this.extents.xRange}},{key:"height",value:function(){return this.extents.yRange}},{key:"contains",value:function(e,t){var n=this.extents;return e<n.x.max&&e>n.x.min&&t<n.y.max&&t>n.y.min}},{key:"translator",value:function(e){var t=this.extents,n=e.x.min,r=e.y.min,a=e.yRange,o=e.xRange,s=t.x.min,i=t.x.max-s,c=t.y.max,l=c-t.y.min,u=i/o,d=l/a;return{x:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){return(e-n)*u+s})),y:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){return c-(e-r)*d})),unx:function(e){return(e-s)/u+n},uny:function(e){return r-(e-c)/d},w:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){return e/o*i})),h:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){return-e/a*l}))}}},{key:"clear",value:function(){var e=this.extents;this.context.clearRect(e.x.min,e.y.min,e.xRange,e.yRange)}},{key:"plot",value:function(e,t,n){var r=this.context,a=this.extents;r.save(),n||(r.beginPath(),r.rect(a.x.min,a.y.min,a.xRange,a.yRange),r.clip());var o=this.translator(e);t(this.context,o),r.restore()}}]),e}();function $t(e,t,n,r,a,o,s,i){i=i||Ne.formatFourSigFigs;var c=t/a,l=r-n;if(c<1||l<=0)return{lbls:[]};for(var u=l/c,d=u+o-u%o,h=n+d-n%d,p=Math.max(Math.abs(r),Math.abs(n)),f=Math.round(Math.log10(p/d))+2,v=[],m=0;h<r;){var g=i(h=Number(h.toPrecision(f)));m=Math.max(m,e.measureText(g).width),v.push({val:h,txt:g}),h+=d}var y=e.measureText(s).width;return y>m&&(m=y),{widest:m,lbls:v}}var en=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"];function tn(e){return e[e.length-1]}function nn(e,t,n,r,a,o){e.beginPath(),e.moveTo(t,n),e.lineTo(r,a),o||e.stroke()}function rn(e,t,n,r,a){e.fillStyle=r,e.beginPath(),e.arc(t,n,a,0,_t),e.fill()}function an(e,t){return on(e,t,1e-8)}function on(e,t,n){return Math.abs(e-t)<Math.abs(n)}function sn(e,t){return e-e%t}function cn(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ln(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ln(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function ln(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var un=function(){function e(t){i(this,e),h(this,"page",void 0),h(this,"host",void 0),this.page=Ne.parseTemplate(t),Ne.cleanTemplates(this.page.penaltyMarkerTmpl)}return d(e,[{key:"setHost",value:function(e){this.host=e}},{key:"update",value:function(){var e=this.page,t=this.host,n=ft().exchanges[t],r=n.auth,a=n.maxScore,o=n.penaltyThreshold,s=r.rep.score,i=dn(r),c=i?i*o*-1:-1*o,l=25;e.scoreWarn.style.width="".concat(l,"%");var u=s>=0?l+s/a*75:l-Math.min(l,s/c*l);e.scorePointer.style.left="".concat(u,"%"),e.scoreMin.textContent=String(c),e.scoreMax.textContent=String(a);var d=Tn(s,a);e.limitBonus.textContent=d.toFixed(1);var h,p=cn(Ne.applySelector(e.scoreTray,".penalty-marker"));try{for(p.s();!(h=p.n()).done;)h.value.remove()}catch(e){p.e(e)}finally{p.f()}if(i>1)for(var f=l/i,v=1;v<i;v++){var m=e.penaltyMarkerTmpl.cloneNode(!0);e.scoreTray.appendChild(m),m.style.left="".concat(f*v,"%")}e.score.textContent=String(s),e.scoreData.classList.remove("negative","positive"),s>0?e.scoreData.classList.add("positive"):e.scoreData.classList.add("negative")}}]),e}();function dn(e){var t=e.weakStrength,n=e.targetTier,r=e.effectiveTier;if(r>n){var a=r-n;return t>=a?n:n+(a-t)}return r}var hn,pn,fn,vn,mn,gn,yn,bn,xn,kn,wn,Cn,Sn=function(e,t,n){var r,a,o=e.qty-e.filled;if(1===e.type)return o;if(e.sell)return o*e.rate/Ft;var s=n||(null==t||null===(r=t.spot)||void 0===r?void 0:r.rate)||0;return t?s&&((null==t||null===(a=t.spot)||void 0===a?void 0:a.bookVolume)||0)>0?o*Ft/s:t.lotsize:0};function Fn(e,t,n){return 3===e.type?0:function(e,t,n){var r;if(1!==e.status)return 0;var a=Sn(e,t,n);return function(e,t){return 2===e.type||0===e.tif||0!==t&&(e.sell?e.rate<t:e.rate>t)}(e,n||(null===(r=t.spot)||void 0===r?void 0:r.rate)||0)?2*a:a}(e,t,n)+function(e){return 2!==e.status?0:Sn(e)}(e)+function(e){var t,n=0,r=cn(e.matches||[]);try{for(r.s();!(t=r.n()).done;){var a=t.value;if(0===a.side){if(a.status>3)continue}else if(a.status>2)continue;n+=a.qty}}catch(e){r.e(e)}finally{r.f()}return n}(e)}function Tn(e,t){return e>0?1+e/t*2:1}var Dn="TakerFoundMakerRedemption:";function In(e){return e.startsWith(Dn)?[e.substring(26),!0]:42===e.length?[e,!0]:[e,!1]}var An=(h(hn={},0,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://etherscan.io/address/".concat(n):"https://etherscan.io/tx/".concat(n)})),h(hn,1,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://sepolia.etherscan.io/address/".concat(n):"https://sepolia.etherscan.io/tx/".concat(n)})),h(hn,2,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://etherscan.io/address/".concat(n):"https://etherscan.io/tx/".concat(n)})),hn),Rn=(h(pn={},0,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://polygonscan.com/address/".concat(n):"https://polygonscan.com/tx/".concat(n)})),h(pn,1,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://amoy.polygonscan.com/address/".concat(n):"https://amoy.polygonscan.com/tx/".concat(n)})),h(pn,2,(function(e){var t=a(In(e),2),n=t[0];return t[1]?"https://polygonscan.com/address/".concat(n):"https://polygonscan.com/tx/".concat(n)})),pn),En={42:(fn={},h(fn,0,(function(e){var t=a(e.split(":"),2),n=t[0],r=t[1];return void 0!==r?"https://explorer.dcrdata.org/tx/".concat(n,"/out/").concat(r):"https://explorer.dcrdata.org/tx/".concat(n)})),h(fn,1,(function(e){var t=a(e.split(":"),2),n=t[0],r=t[1];return void 0!==r?"https://testnet.dcrdata.org/tx/".concat(n,"/out/").concat(r):"https://testnet.dcrdata.org/tx/".concat(n)})),h(fn,2,(function(e){var t=a(e.split(":"),2),n=t[0],r=t[1];return void 0!==r?"http://127.0.0.1:17779/tx/".concat(n,"/out/").concat(r):"https://127.0.0.1:17779/tx/".concat(n)})),fn),0:(vn={},h(vn,0,(function(e){return"https://mempool.space/tx/".concat(e.split(":")[0])})),h(vn,1,(function(e){return"https://mempool.space/testnet/tx/".concat(e.split(":")[0])})),h(vn,2,(function(e){return"https://mempool.space/tx/".concat(e.split(":")[0])})),vn),2:(mn={},h(mn,0,(function(e){return"https://ltc.bitaps.com/".concat(e.split(":")[0])})),h(mn,1,(function(e){return"https://sochain.com/tx/LTCTEST/".concat(e.split(":")[0])})),h(mn,2,(function(e){return"https://ltc.bitaps.com/".concat(e.split(":")[0])})),mn),20:(gn={},h(gn,0,(function(e){return"https://digiexplorer.info/tx/".concat(e.split(":")[0])})),h(gn,1,(function(e){return"https://testnetexplorer.digibyteservers.io/tx/".concat(e.split(":")[0])})),h(gn,2,(function(e){return"https://digiexplorer.info/tx/".concat(e.split(":")[0])})),gn),60:An,60001:An,60002:An,3:(yn={},h(yn,0,(function(e){return"https://dogeblocks.com/tx/".concat(e.split(":")[0])})),h(yn,1,(function(e){return"https://blockexplorer.one/dogecoin/testnet/tx/".concat(e.split(":")[0])})),h(yn,2,(function(e){return"https://dogeblocks.com/tx/".concat(e.split(":")[0])})),yn),5:(bn={},h(bn,0,(function(e){return"https://blockexplorer.one/dash/mainnet/tx/".concat(e.split(":")[0])})),h(bn,1,(function(e){return"https://blockexplorer.one/dash/testnet/tx/".concat(e.split(":")[0])})),h(bn,2,(function(e){return"https://blockexplorer.one/dash/mainnet/tx/".concat(e.split(":")[0])})),bn),133:(xn={},h(xn,0,(function(e){return"https://zcashblockexplorer.com/transactions/".concat(e.split(":")[0])})),h(xn,1,(function(e){return"https://blockexplorer.one/zcash/testnet/tx/".concat(e.split(":")[0])})),h(xn,2,(function(e){return"https://zcashblockexplorer.com/transactions/".concat(e.split(":")[0])})),xn),147:(kn={},h(kn,0,(function(e){return"https://explorer.zcl.zelcore.io/tx/".concat(e.split(":")[0])})),h(kn,2,(function(e){return"https://explorer.zcl.zelcore.io/tx/".concat(e.split(":")[0])})),kn),136:(wn={},h(wn,0,(function(e){return"https://explorer.firo.org/tx/".concat(e.split(":")[0])})),h(wn,1,(function(e){return"https://testexplorer.firo.org/tx/".concat(e.split(":")[0])})),h(wn,2,(function(e){return"https://explorer.firo.org/tx/".concat(e.split(":")[0])})),wn),145:(Cn={},h(Cn,0,(function(e){return"https://bch.loping.net/tx/".concat(e.split(":")[0])})),h(Cn,1,(function(e){return"https://tbch4.loping.net/tx/".concat(e.split(":")[0])})),h(Cn,2,(function(e){return"https://bch.loping.net/tx/".concat(e.split(":")[0])})),Cn),966:Rn,966001:Rn,966002:Rn,966003:Rn,966004:Rn};function Bn(e){return e.startsWith(Dn)?ke("TAKER_FOUND_MAKER_REDEMPTION",{makerAddr:e.substring(26)}):e}function Pn(e,t){var n=ft().user.net,r=En[function(e){var t=ft().user.assets[e];return t.token?t.token.parentID:e}(e)];if(r){var a=r[n];a&&(t.classList.remove("plainlink"),t.classList.add("subtlelink"),t.href=a(t.dataset.explorerCoin||""))}}function Ln(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function On(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ln(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ln(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Mn(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return qn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?qn(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function qn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Nn="multiplier",Wn="absolute",Vn="absolute-plus",Un="percent",_n="percent-plus",jn="basicMM",Hn="arbMM",zn="basicArb",Gn={Binance:{name:"Binance",logo:"/img/binance.com.png"},BinanceUS:{name:"Binance U.S.",logo:"/img/binance.us.png"}},Xn=new(function(){function e(){i(this,e),h(this,"cexBalanceCache",{})}var t,n,r,a,o,c,l,u;return d(e,[{key:"updateBotConfig",value:(u=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",S("/api/updatebotconfig",t));case 1:case"end":return e.stop()}}),e)}))),function(e){return u.apply(this,arguments)})},{key:"updateCEXConfig",value:(l=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",S("/api/updatecexconfig",t));case 1:case"end":return e.stop()}}),e)}))),function(e){return l.apply(this,arguments)})},{key:"removeBotConfig",value:(c=s(f().mark((function e(t,n,r){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",S("/api/removebotconfig",{host:t,baseID:n,quoteID:r}));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n){return c.apply(this,arguments)})},{key:"report",value:(o=s(f().mark((function e(t,n,r){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",S("/api/marketreport",{host:t,baseID:n,quoteID:r}));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n){return o.apply(this,arguments)})},{key:"startBot",value:(a=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/startmarketmakingbot",{config:t});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(e){return a.apply(this,arguments)})},{key:"stopBot",value:(r=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/stopmarketmakingbot",{market:t});case 2:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"status",value:(n=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T("/api/marketmakingstatus");case 2:return e.abrupt("return",e.sent.status);case 3:case"end":return e.stop()}}),e)}))),function(){return n.apply(this,arguments)})},{key:"botStats",value:function(e,t,n,r){for(var a=0,o=Object.values(ft().mmStatus.bots);a<o.length;a++){var s=o[a];if(s.runStats){var i=s.runStats,c=s.config;if(c.baseID===e&&c.quoteID===t&&c.host===n&&i.startTime===r)return i}}}},{key:"cachedCexBalance",value:function(e,t){var n;return null===(n=this.cexBalanceCache[e])||void 0===n?void 0:n[t]}},{key:"cexBalance",value:(t=s(f().mark((function e(t,n){var r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.cexBalanceCache[t]||(this.cexBalanceCache[t]={}),e.next=3,S("/api/cexbalance",{cexName:t,assetID:n});case 3:return r=e.sent.cexBalance,this.cexBalanceCache[t][n]=r,e.abrupt("return",r);case 6:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),e}());function Kn(e){return ft().mmStatus.bots.reduce((function(t,n){var r,a,o,s,i,c,l,u,d,h,p,f,v,m,g,y,b,x,k,w,C=n.runStats;if(!n.running||!C)return t;var S=C.dexBalances,F=C.cexBalances;return t.cex.locked+=null!==(r=null===(a=F[e])||void 0===a?void 0:a.locked)&&void 0!==r?r:0,t.cex.locked+=null!==(o=null===(s=F[e])||void 0===s?void 0:s.reserved)&&void 0!==o?o:0,t.cex.avail+=null!==(i=null===(c=F[e])||void 0===c?void 0:c.available)&&void 0!==i?i:0,t.cex.total=t.cex.avail+t.cex.locked,t.dex.locked+=null!==(l=null===(u=S[e])||void 0===u?void 0:u.locked)&&void 0!==l?l:0,t.dex.locked+=null!==(d=null===(h=S[e])||void 0===h?void 0:h.reserved)&&void 0!==d?d:0,t.dex.avail+=null!==(p=null===(f=S[e])||void 0===f?void 0:f.available)&&void 0!==p?p:0,t.dex.total=t.dex.avail+t.dex.locked,t.avail+=(null!==(v=null===(m=S[e])||void 0===m?void 0:m.available)&&void 0!==v?v:0)+(null!==(g=null===(y=F[e])||void 0===y?void 0:y.available)&&void 0!==g?g:0),t.locked+=(null!==(b=null===(x=S[e])||void 0===x?void 0:x.locked)&&void 0!==b?b:0)+(null!==(k=null===(w=F[e])||void 0===w?void 0:w.locked)&&void 0!==k?k:0),t}),{avail:0,locked:0,cex:{avail:0,locked:0,total:0},dex:{avail:0,locked:0,total:0}})}function Qn(e,t,n,r){Ne.setText(e,"[data-host]",r);var a=ft().assets[t],o=a.unitInfo,s=a.name,i=a.symbol,c=a.token;Ne.setText(e,"[data-base-name]",s),Ne.setSrc(e,"[data-base-logo]",Ne.logoPath(i)),Ne.setText(e,"[data-base-ticker]",o.conventional.unit);var l=ft().assets[c?c.parentID:t],u=l.unitInfo,d=l.name,h=l.symbol;Ne.setText(e,"[data-base-fee-name]",d),Ne.setSrc(e,"[data-base-fee-logo]",Ne.logoPath(h)),Ne.setText(e,"[data-base-fee-ticker]",u.conventional.unit);var p=ft().assets[n],f=p.unitInfo,v=p.name,m=p.symbol,g=p.token;Ne.setText(e,"[data-quote-name]",v),Ne.setSrc(e,"[data-quote-logo]",Ne.logoPath(m)),Ne.setText(e,"[data-quote-ticker]",f.conventional.unit);var y=ft().assets[g?g.parentID:n],b=y.unitInfo,x=y.name,k=y.symbol;Ne.setText(e,"[data-quote-fee-name]",x),Ne.setSrc(e,"[data-quote-fee-logo]",Ne.logoPath(k)),Ne.setText(e,"[data-quote-fee-ticker]",b.conventional.unit)}function Yn(e,t){var n=Gn[t];Ne.setText(e,"[data-cex-name]",n.name),Ne.setSrc(e,"[data-cex-logo]",n.logo);var r,a=Mn(Ne.applySelector(e,"[data-cex-logo]"));try{for(a.s();!(r=a.n()).done;){var o=r.value;Ne.show(o)}}catch(e){a.e(e)}finally{a.f()}}function Jn(e,t,n,r){var a=ft().fiatRatesMap[t],o=ft().fiatRatesMap[n],s=ft().assets[t].unitInfo.conventional.conversionFactor,i=ft().assets[n].unitInfo.conventional.conversionFactor;return a&&o?e*a/o*i/s:r?e*r.rate/Ft:i}var Zn=function(e){g(s,e);var t,n,o=(t=s,n=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(e){return!1}}(),function(){var e,r=b(t);if(n){var a=b(this).constructor;e=Reflect.construct(r,arguments,a)}else e=r.apply(this,arguments);return y(this,e)});function s(e){var t;return i(this,s),h(v(t=o.call(this,e,{resize:function(){return t.resized()},click:function(){},zoom:function(){}})),"cfg",void 0),h(v(t),"loadedCEX",void 0),h(v(t),"cexLogo",void 0),t}return d(s,[{key:"resized",value:function(){this.render()}},{key:"draw",value:function(){}},{key:"setMarket",value:function(e){var t=this;this.cfg=e;var n=this.loadedCEX,r=this.cfg.cexName;r&&r!==n&&(this.loadedCEX=r,this.cexLogo=new Image,Ne.bind(this.cexLogo,"load",(function(){t.render()})),this.cexLogo.src=Gn[r||""].logo),this.render()}},{key:"render",value:function(){var e=this,t=this.ctx,n=this.canvas,o=this.theme,s=this.cfg;if(0!==n.width&&s){var i=s.dict,c=i.buyPlacements,l=i.sellPlacements,u=i.profit,d=s.baseFiatRate,h=s.botType;if(h!==zn){this.clear();var p=function(n,r,a,o,s){t.save(),t.setLineDash([3,5]),t.lineWidth=1.5,t.strokeStyle=s,e.line(n,r,a,o),t.restore()},f=h===jn,v=n.width/2,m=a(f?[v,v]:[.48*n.width,.52*n.width],2),g=m[0],y=m[1],b=c.reduce((function(e,t){return e+t.lots}),0),x=l.reduce((function(e,t){return e+t.lots}),0),k=Math.max(b,x),w=0,C=0;if(f){var S=c.reduce((function(e,t){return Math.max(e,t.gapFactor)}),0),F=l.reduce((function(e,t){return Math.max(e,t.gapFactor)}),0);w=Math.max(S,F)}else{var T=[].concat(r(c),r(l)),D=T.reduce((function(e,t){return e+t.gapFactor}),0)/T.length;C=.01*(1+D),w=Math.min(10,Math.max(c.length,l.length))*C}var I=u+w,A=Math.max(1.05*I,.155),R=k*d,E=.2+.7*Math.log(nt(R,0,1e6))/Math.log(1e6),B=new Zt(t,new Jt(0,n.width,0,n.height));f?p(v,0,v,n.height,o.gapLine):B.plot(new Jt(0,1,0,1),(function(t,n){var r=[n.y(0),n.y(1)],a=r[0],s=r[1];p(g,a,g,s,o.gapLine),p(y,a,y,s,o.gapLine);var i=n.y(.95);t.drawImage(e.cexLogo,v-8,i,16,16),e.applyLabelStyle(18),t.fillText("Ξ΄",v,i+29)}));var P=function(e,r){if(null!=r&&r.length){var s=a(e?[0,g]:[y,n.width],2),i=s[0],c=s[1],l=new Zt(t,new Jt(i,c,n.height*(1-E),n.height)),d=a(e?[-A,0]:[0,A],2),h=d[0],p=d[1];l.plot(new Jt(h,p,0,k),(function(t,a){t.lineWidth=2.5,t.strokeStyle=e?o.buyLine:o.sellLine,t.fillStyle=e?o.buyFill:o.sellFill,t.beginPath();var s=e?-1:1,i=r[0],c=a.y(0),l=a.x((f?i.gapFactor:u+C)*s);t.moveTo(l,c);for(var d=0,h=0;h<r.length;h++){var p=r[h],v=f?p.gapFactor:u+(h+1)*C,m=a.x(v*s);t.lineTo(m,a.y(d)),d+=p.lots,t.lineTo(m,a.y(d))}var g=e?-.1*n.width:1.1*n.width;t.lineTo(g,a.y(d)),t.stroke(),t.lineTo(g,c),t.lineTo(l,c),t.closePath(),t.globalAlpha=.25,t.fill()}),!0)}};P(!1,l),P(!0,c)}}}}]),s}(Xt);function $n(e,t,n){return"".concat(e,"-").concat(t,"-").concat(n)}function er(e,t,n){var r=tr(e,t,n);if(r)return r.config}function tr(e,t,n){var r=(ft().mmStatus.bots||[]).filter((function(r){return r.config.baseID===t&&r.config.quoteID===n&&r.config.host===e}));if(r.length)return r[0]}function nr(e,t){return e+t.lots}var rr=function(){function e(t){i(this,e),h(this,"cfg",void 0),h(this,"host",void 0),h(this,"baseID",void 0),h(this,"baseSymbol",void 0),h(this,"baseTicker",void 0),h(this,"baseFeeID",void 0),h(this,"baseIsAccountLocker",void 0),h(this,"baseFeeSymbol",void 0),h(this,"baseFeeTicker",void 0),h(this,"baseToken",void 0),h(this,"quoteID",void 0),h(this,"quoteSymbol",void 0),h(this,"quoteTicker",void 0),h(this,"quoteFeeID",void 0),h(this,"quoteIsAccountLocker",void 0),h(this,"quoteFeeSymbol",void 0),h(this,"quoteFeeTicker",void 0),h(this,"quoteToken",void 0),h(this,"botType",void 0),h(this,"cexName",void 0),h(this,"dinfo",void 0),h(this,"alloc",void 0),h(this,"proj",void 0),h(this,"bui",void 0),h(this,"baseFactor",void 0),h(this,"baseFeeUI",void 0),h(this,"baseFeeFactor",void 0),h(this,"qui",void 0),h(this,"quoteFactor",void 0),h(this,"quoteFeeUI",void 0),h(this,"quoteFeeFactor",void 0),h(this,"id",void 0),h(this,"mktID",void 0),h(this,"lotSize",void 0),h(this,"lotSizeConv",void 0),h(this,"lotSizeUSD",void 0),h(this,"quoteLot",void 0),h(this,"quoteLotConv",void 0),h(this,"quoteLotUSD",void 0),h(this,"rateStep",void 0),h(this,"baseFeeFiatRate",void 0),h(this,"quoteFeeFiatRate",void 0),h(this,"baseLots",void 0),h(this,"quoteLots",void 0),h(this,"marketReport",void 0),h(this,"nBuyPlacements",void 0),h(this,"nSellPlacements",void 0);var n=this.host=t.host,r=this.baseID=t.baseID,a=this.quoteID=t.quoteID;this.cexName=t.cexName;var o=ft().mmStatus.bots.find((function(e){var t=e.config;return t.baseID===r&&t.quoteID===a&&t.host===n}));if(!o)throw Error("where's the bot status?");this.cfg=o.config;var s=ft().assets[r],c=s.token,l=s.symbol,u=s.unitInfo;this.baseSymbol=l,this.baseTicker=u.conventional.unit,this.bui=u,this.baseFactor=u.conventional.conversionFactor,this.baseToken=c;var d=this.baseFeeID=c?c.parentID:r,p=ft().assets[this.baseFeeID],f=p.unitInfo,v=p.symbol,m=p.wallet;this.baseIsAccountLocker=(16384&m.traits)>0,this.baseFeeUI=f,this.baseFeeTicker=f.conventional.unit,this.baseFeeSymbol=v,this.baseFeeFactor=this.baseFeeUI.conventional.conversionFactor;var g=ft().assets[a],y=g.token,b=g.symbol,x=g.unitInfo;this.quoteSymbol=b,this.quoteTicker=x.conventional.unit,this.qui=x,this.quoteFactor=x.conventional.conversionFactor,this.quoteToken=y;var k=this.quoteFeeID=y?y.parentID:a,w=ft().assets[this.quoteFeeID],C=w.unitInfo,S=w.symbol,F=w.wallet;this.quoteIsAccountLocker=(16384&F.traits)>0,this.quoteFeeUI=C,this.quoteFeeTicker=C.conventional.unit,this.quoteFeeSymbol=S,this.quoteFeeFactor=this.quoteFeeUI.conventional.conversionFactor,this.id=$n(n,r,a),this.mktID="".concat(l,"_").concat(b);var T=ft().exchanges[n].markets[this.mktID],D=T.lotsize,I=T.ratestep;this.lotSize=D,this.lotSizeConv=D/u.conventional.conversionFactor,this.rateStep=I,this.quoteLot=Jn(D,r,a),this.quoteLotConv=this.quoteLot/x.conventional.conversionFactor,this.baseFeeFiatRate=ft().fiatRatesMap[d],this.quoteFeeFiatRate=ft().fiatRatesMap[k],t.arbMarketMakingConfig?(this.botType=Hn,this.baseLots=t.arbMarketMakingConfig.sellPlacements.reduce(nr,0),this.quoteLots=t.arbMarketMakingConfig.buyPlacements.reduce(nr,0),this.nBuyPlacements=t.arbMarketMakingConfig.buyPlacements.length,this.nSellPlacements=t.arbMarketMakingConfig.sellPlacements.length):t.simpleArbConfig?(this.botType=zn,this.baseLots=t.uiConfig.simpleArbLots,this.quoteLots=t.uiConfig.simpleArbLots):t.basicMarketMakingConfig&&(this.botType=jn,this.baseLots=t.basicMarketMakingConfig.sellPlacements.reduce(nr,0),this.quoteLots=t.basicMarketMakingConfig.buyPlacements.reduce(nr,0),this.nBuyPlacements=t.basicMarketMakingConfig.buyPlacements.length,this.nSellPlacements=t.basicMarketMakingConfig.sellPlacements.length)}var t;return d(e,[{key:"initialize",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.host,n=this.baseID,r=this.quoteID,a=this.lotSizeConv,o=this.quoteLotConv,e.next=3,Xn.report(t,n,r);case 3:s=e.sent,i=this.marketReport=s.report,this.lotSizeUSD=a*i.baseFiatRate,this.quoteLotUSD=o*i.quoteFiatRate,this.proj=this.projectedAllocations();case 8:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"status",value:function(){var e=this.baseID,t=this.quoteID,n=ft().mmStatus.bots.find((function(n){return n.config.baseID===e&&n.config.quoteID===t}));return n?{botCfg:n.config,running:n.running,runStats:n.runStats,latestEpoch:n.latestEpoch,cexProblems:n.cexProblems}:{botCfg:{},running:!1,runStats:{}}}},{key:"adjustedBalances",value:function(){var e,t,n=this.baseID,r=this.quoteID,a=this.baseFeeID,o=this.quoteFeeID,s=this.cexName,i=this.baseFactor,c=this.quoteFactor,l=this.baseFeeFactor,u=this.quoteFeeFactor,d=[ft().walletMap[n],ft().walletMap[r]],h=d[0],p=d[1],f=[Kn(n),Kn(r)],v=f[0],m=f[1],g=0,y=0;if(s){var b=ft().mmStatus.cexes[s];if(!b)throw Error("where's the cex status?");e=b.balances[n],t=b.balances[r]}e&&(g=(e.available||0)-v.cex.avail),t&&(y=(t.available||0)-m.cex.avail);var x=h.balance.available-v.dex.avail,k=p.balance.available-m.dex.avail,w=x+g,C=k+y,S=a===n?h:ft().walletMap[a],F=o===r?p:ft().walletMap[o],T=w,D=x,I=g;if(a!==n){var A=Kn(n);D=S.balance.available-A.dex.total,e&&(I=(e.available||0)-A.cex.total),T=D+I}var R=C,E=k,B=y;if(o!==r){var P=Kn(r);E=F.balance.available-P.dex.total,t&&(B=(t.available||0)-P.cex.total),R=E+B}return{baseAvail:w/i,quoteAvail:C/c,dexBaseAvail:x/i,dexQuoteAvail:k/c,cexBaseAvail:g/i,cexQuoteAvail:y/c,baseFeeAvail:T/l,quoteFeeAvail:R/u,dexBaseFeeAvail:D/l,dexQuoteFeeAvail:E/u,cexBaseFeeAvail:I/l,cexQuoteFeeAvail:B/u}}},{key:"feesAndCommit",value:function(){var e=this.baseID,t=this.quoteID,n=this.marketReport,r=n.baseFees,a=n.quoteFees,o=this.lotSize,s=this.baseLots,i=this.quoteLots,c=this.baseFeeID,l=this.quoteFeeID,u=this.baseIsAccountLocker,d=this.quoteIsAccountLocker,h=this.cfg.uiConfig,p=h.baseConfig,f=h.quoteConfig;return ir(e,t,r,a,o,s,i,c,l,u,d,p.orderReservesFactor,f.orderReservesFactor)}},{key:"projectedAllocations",value:function(){var e=this.cfg.uiConfig,t=e.quoteConfig,n=e.baseConfig,r=this.baseFactor,a=this.quoteFactor,o=this.baseID,s=this.quoteID,i=this.lotSizeConv,c=this.quoteLotConv,l=this.baseFeeFactor,u=this.quoteFeeFactor,d=this.baseFeeID,h=this.quoteFeeID,p=this.baseToken,f=this.quoteToken,v=this.cexName,m=this.feesAndCommit(),g=m.commit,y=m.fees,b={book:0,bookingFees:0,swapFeeReserves:0,cex:0,orderReserves:0,slippageBuffer:0},x={book:0,bookingFees:0,swapFeeReserves:0,cex:0,orderReserves:0,slippageBuffer:0};b.book=g.dex.base.lots*i,x.book=g.cex.base.lots*c,b.orderReserves=Math.max(g.cex.base.val,g.dex.base.val)*n.orderReservesFactor/r,x.orderReserves=Math.max(g.cex.quote.val,g.dex.quote.val)*t.orderReservesFactor/a,v&&(b.cex=g.cex.base.lots*i,x.cex=g.cex.quote.lots*c),b.bookingFees=y.base.bookingFees/l,x.bookingFees=y.quote.bookingFees/u,p&&(b.swapFeeReserves=y.base.tokenFeesPerSwap*n.swapFeeN/l),f&&(x.swapFeeReserves=y.quote.tokenFeesPerSwap*t.swapFeeN/u),x.slippageBuffer=(x.book+x.cex+x.orderReserves)*t.slippageBufferFactor;var k={},w=function(e,t){var n;k[e]=(null!==(n=k[e])&&void 0!==n?n:0)+t};return w(o,Math.round((b.book+b.cex+b.orderReserves)*r)),w(d,Math.round((b.bookingFees+b.swapFeeReserves)*l)),w(s,Math.round((x.book+x.cex+x.orderReserves+x.slippageBuffer)*a)),w(h,Math.round((x.bookingFees+x.swapFeeReserves)*u)),{qProj:x,bProj:b,alloc:k}}},{key:"fundingState",value:function(){var e=this.proj,t=e.bProj,n=e.qProj,r=this.baseID,a=this.quoteID,o=this.baseFeeID,s=this.quoteFeeID,i=this.cfg.uiConfig.cexRebalance,c=this.cexName,l=this.adjustedBalances(),u=l.baseAvail,d=l.quoteAvail,h=l.dexBaseAvail,p=l.dexQuoteAvail,f=l.cexBaseAvail,v=l.cexQuoteAvail,m=l.dexBaseFeeAvail,g=l.dexQuoteFeeAvail,y=Boolean(c&&i),b=t.cex,x=[t.book,0,0],k=x[0],w=x[1],C=x[2];r===o?k+=t.bookingFees:C+=t.bookingFees+t.swapFeeReserves,y?w+=t.orderReserves:k+=t.orderReserves,r===s&&(y?w+=n.bookingFees+n.swapFeeReserves:k+=n.bookingFees+n.swapFeeReserves);var S=[n.book,n.cex,0,0],F=S[0],T=S[1],D=S[2],I=S[3];if(a===s?F+=n.bookingFees:I+=n.bookingFees+n.swapFeeReserves,y)D+=n.orderReserves+n.slippageBuffer;else{F+=n.orderReserves;var A=n.book+n.cex+n.orderReserves;F+=(n.book+n.orderReserves)/A*n.slippageBuffer,T+=n.cex/A*n.slippageBuffer}a===o&&(y?D+=t.bookingFees+t.swapFeeReserves:F+=t.bookingFees+t.swapFeeReserves);var R=h>=k,E=f>=b,B=p>=F,P=v>=T,L=k+b+w,O=F+T+D,M=R&&E&&u>=L,q=B&&P&&d>=O,N=m>=C,W=g>=I,V=M&&q&&N&&W,U=!V;return V||(U=u>=L&&d>=O&&N&&W&&y),{base:{dex:{avail:h,req:k,funded:R},cex:{avail:f,req:b,funded:E},transferable:w,fees:{avail:m,req:C,funded:N},fundedAndBalanced:M,fundedAndNotBalanced:!M&&u>=L&&y},quote:{dex:{avail:p,req:F,funded:B},cex:{avail:v,req:T,funded:P},transferable:D,fees:{avail:g,req:I,funded:W},fundedAndBalanced:q,fundedAndNotBalanced:!q&&d>=O&&y},fundedAndBalanced:V,fundedAndNotBalanced:U,starved:!V&&!U}}}]),e}(),ar=function(){function e(t,n,r,a){var o=this;i(this,e),h(this,"div",void 0),h(this,"page",void 0),h(this,"mkt",void 0),h(this,"startTime",void 0),h(this,"ticker",void 0),h(this,"currentForm",void 0),h(this,"forms",void 0),h(this,"latestEpoch",void 0),h(this,"cexProblems",void 0),h(this,"orderReportFormEl",void 0),h(this,"orderReportForm",void 0),h(this,"displayedOrderReportFormSide",void 0),h(this,"dexBalancesRowTmpl",void 0),h(this,"placementRowTmpl",void 0),h(this,"placementAmtRowTmpl",void 0),this.div=t,this.page=Ne.parseTemplate(t),this.orderReportFormEl=r.orderReportForm,this.orderReportForm=Ne.idDescendants(r.orderReportForm),this.dexBalancesRowTmpl=r.dexBalancesRowTmpl,this.placementRowTmpl=r.placementRowTmpl,this.placementAmtRowTmpl=r.placementAmtRowTmpl,Ne.cleanTemplates(this.dexBalancesRowTmpl,this.placementRowTmpl,this.placementAmtRowTmpl),this.forms=n,Ne.bind(this.page.stopBttn,"click",(function(){return o.stop()})),Ne.bind(this.page.runLogsBttn,"click",(function(){var e=o.mkt,t=e.baseID,n=e.quoteID,r=e.host,s=o.startTime;ft().loadPage("mmlogs",{baseID:t,quoteID:n,host:r,startTime:s,returnPage:a})})),Ne.bind(this.page.buyOrdersBttn,"click",(function(){return o.showOrderReport("buys")})),Ne.bind(this.page.sellOrdersBttn,"click",(function(){return o.showOrderReport("sells")}))}var t,n,o;return d(e,[{key:"stop",value:(o=s(f().mark((function e(){var t,n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.mkt,r=n.host,a=n.baseID,o=n.quoteID,s=ft().loading(t.stopBttn),e.next=4,Xn.stopBot({host:r,baseID:a,quoteID:o});case 4:s();case 5:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"setMarket",value:(n=s(f().mark((function e(t,n,r){var a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=ft().mmStatus.bots.find((function(e){var a=e.config;return a.baseID===n&&a.quoteID===r&&a.host===t}))){e.next=3;break}return e.abrupt("return");case 3:return o=new rr(a.config),e.next=6,o.initialize();case 6:this.setBotMarket(o);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,r){return n.apply(this,arguments)})},{key:"setBotMarket",value:(t=s(f().mark((function e(t){var n,a,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,k,w,C,S,F,T,D,I,A;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.mkt=t,c=this.page,l=this.div,u=this.mkt,d=u.host,h=u.baseID,p=u.quoteID,v=u.baseFeeID,m=u.quoteFeeID,g=u.cexName,y=u.baseFeeSymbol,b=u.quoteFeeSymbol,x=u.baseFeeTicker,k=u.quoteFeeTicker,w=u.cfg,C=u.baseFactor,S=u.quoteFactor,Qn(l,h,p,d),Ne.setVis(v!==h,c.baseFeeReservesBox),Ne.setVis(m!==p,c.quoteFeeReservesBox),Ne.setVis.apply(Ne,[Boolean(g)].concat(r(Ne.applySelector(l,"[data-cex-show]")))),c.baseFeeLogo.src=Ne.logoPath(y),c.baseFeeTicker.textContent=x,c.quoteFeeLogo.src=Ne.logoPath(b),c.quoteFeeTicker.textContent=k,F=w.basicMarketMakingConfig,T=null!==(n=null==F?void 0:F.gapStrategy)&&void 0!==n?n:Un,D=null!==(a=null!==(o=null===(s=w.arbMarketMakingConfig)||void 0===s?void 0:s.profit)&&void 0!==o?o:null===(i=w.simpleArbConfig)||void 0===i?void 0:i.profitTrigger)&&void 0!==a?a:0,F&&(I=r(F.buyPlacements).sort((function(e,t){return e.gapFactor-t.gapFactor})),A=r(F.sellPlacements).sort((function(e,t){return e.gapFactor-t.gapFactor})),D=I.length>0?A.length>0?(I[0].gapFactor+A[0].gapFactor)/2:I[0].gapFactor:A[0].gapFactor),Ne.hide(c.profitLabel,c.gapLabel,c.multiplierLabel,c.profitUnit,c.gapUnit,c.multiplierUnit),e.t0=T,e.next=e.t0===Un||e.t0===_n?18:e.t0===Nn?21:24;break;case 18:return Ne.show(c.profitLabel,c.profitUnit),c.gapFactor.textContent=(100*D).toFixed(2),e.abrupt("break",25);case 21:return Ne.show(c.multiplierLabel,c.multiplierUnit),c.gapFactor.textContent=(100*D).toFixed(2),e.abrupt("break",25);case 24:c.gapFactor.textContent=Ne.formatFourSigFigs(D/Ft*C/S);case 25:this.update(),this.readBook();case 27:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"handleBalanceNote",value:function(e){if(this.mkt){var t=this.mkt,n=t.baseID,r=t.quoteID,a=t.baseFeeID,o=t.quoteFeeID;e.assetID!==n&&e.assetID!==a&&e.assetID!==r&&e.assetID!==o||this.update()}}},{key:"handleEpochReportNote",value:function(e){if(this.mkt){var t=this.mkt,n=t.baseID,r=t.quoteID,a=t.host;if(e.baseID===n&&e.quoteID===r&&e.host===a&&e.report){if(this.latestEpoch=e.report,this.forms.currentForm===this.orderReportFormEl&&this.forms.currentFormID===this.mkt.id){var o="buys"===this.displayedOrderReportFormSide?e.report.buysReport:e.report.sellsReport;o?this.updateOrderReport(o,this.displayedOrderReportFormSide,e.report.epochNum):this.forms.close()}this.update()}}}},{key:"handleCexProblemsNote",value:function(e){if(this.mkt){var t=this.mkt,n=t.baseID,r=t.quoteID,a=t.host;e.baseID===n&&e.quoteID===r&&e.host===a&&(this.cexProblems=e.problems,this.update())}}},{key:"setTicker",value:function(){this.page.runTime.textContent=Ne.hmsSince(this.startTime)}},{key:"update",value:function(){var e,t,n,r=this,o=this.div,s=this.page,i=this.mkt,c=i.baseID,l=i.quoteID,u=i.baseFeeID,d=i.quoteFeeID,h=i.baseFactor,p=i.quoteFactor,f=i.baseFeeFactor,v=i.quoteFeeFactor,m=i.marketReport,g=m.baseFiatRate,y=m.quoteFiatRate,b=this.mkt.status(),x=b.botCfg,k=x.cexName,w=x.basicMarketMakingConfig,C=b.runStats,S=b.latestEpoch,F=b.cexProblems;if(this.latestEpoch=S,this.cexProblems=F,Ne.hide(s.stats,s.cexRow,s.pendingDepositBox,s.pendingWithdrawalBox),C){this.ticker||(this.startTime=C.startTime,this.setTicker(),this.ticker=setInterval((function(){return r.setTicker()}),1e3)),Ne.show(s.stats),sr(100*C.profitLoss.profitRatio,s.profit,s.profitSign,2),sr(C.profitLoss.profit,s.profitLoss,s.plSign,2),this.startTime=C.startTime;var T=function(e){return e?e.available+e.locked+e.pending+e.reserved:0},D=T(C.dexBalances[c])/h;s.walletBaseInventory.textContent=Ne.formatFourSigFigs(D),s.walletBaseInvFiat.textContent=Ne.formatFourSigFigs(D*g,2);var I=T(C.dexBalances[l])/p;if(s.walletQuoteInventory.textContent=Ne.formatFourSigFigs(I),s.walletQuoteInvFiat.textContent=Ne.formatFourSigFigs(I*y,2),Ne.setVis(k,s.cexRow),k){Ne.show(s.pendingDepositBox,s.pendingWithdrawalBox),Yn(o,k);var A=T(C.cexBalances[c])/h;s.cexBaseInventory.textContent=Ne.formatFourSigFigs(A),s.cexBaseInventoryFiat.textContent=Ne.formatFourSigFigs(A*g,2);var R=T(C.cexBalances[l])/p;s.cexQuoteInventory.textContent=Ne.formatFourSigFigs(R),s.cexQuoteInventoryFiat.textContent=Ne.formatFourSigFigs(R*y,2)}if(u!==c){var E=T(C.dexBalances[u])/f;s.baseFeeReserves.textContent=Ne.formatFourSigFigs(E)}if(d!==l){var B=T(C.dexBalances[d])/v;s.quoteFeeReserves.textContent=Ne.formatFourSigFigs(B)}s.pendingDeposits.textContent=String(Math.round(C.pendingDeposits)),s.pendingWithdrawals.textContent=String(Math.round(C.pendingWithdrawals)),s.completedMatches.textContent=String(Math.round(C.completedMatches)),Ne.setVis(C.tradedUSD,s.tradedUSDBox),C.tradedUSD>0&&(s.tradedUSD.textContent=Ne.formatFourSigFigs(C.tradedUSD)),Ne.setVis(g,s.roundTripFeesBox),g&&(s.roundTripFeesUSD.textContent=Ne.formatFourSigFigs((null===(e=C.feeGap)||void 0===e?void 0:e.roundTripFees)/h*g||0));var P=ft().conventionalRate(c,l,(null===(t=C.feeGap)||void 0===t?void 0:t.basisPrice)||0);s.basisPrice.textContent=Ne.formatFourSigFigs(P);var L=!w||w.gapStrategy===Vn||w.gapStrategy===_n;if(Ne.setVis(L,s.feeGapBox),L){var O,M=ft().conventionalRate(c,l,(null===(O=C.feeGap)||void 0===O?void 0:O.feeGap)||0);s.feeGap.textContent=Ne.formatFourSigFigs(M),s.feeGapPct.textContent=(M/P*100||0).toFixed(2)}Ne.setVis(w,s.gapStrategyBox),w&&(s.gapStrategy.textContent=w.gapStrategy);var q=ft().conventionalRate(c,l,(null===(n=C.feeGap)||void 0===n?void 0:n.remoteGap)||0);if(Ne.setVis(q,s.remoteGapBox),q&&(s.remoteGap.textContent=Ne.formatFourSigFigs(q),s.remoteGapPct.textContent=(q/P*100||0).toFixed(2)),Ne.setVis(null==S?void 0:S.buysReport,s.buyOrdersReportBox),null!=S&&S.buysReport){var N=or(S.buysReport);Ne.setVis(N,s.buyOrdersSuccess),Ne.setVis(!N,s.buyOrdersFailed)}if(Ne.setVis(null==S?void 0:S.sellsReport,s.sellOrdersReportBox),null!=S&&S.sellsReport){var W=or(S.sellsReport);Ne.setVis(W,s.sellOrdersSuccess),Ne.setVis(!W,s.sellOrdersFailed)}var V=cr(null==S?void 0:S.preOrderProblems,this.mkt.cexName,this.mkt.host),U=function(e){if(!e)return[];var t=[];if(e.depositErr)for(var n=0,r=Object.entries(e.depositErr);n<r.length;n++){var o=a(r[n],2),s=o[0],i=o[1];t.push(ke("DEPOSIT_ERROR",{assetSymbol:ft().assets[Number(s)].symbol.toUpperCase(),time:new Date(1e3*i.stamp).toLocaleString(),error:i.error}))}if(e.withdrawErr)for(var c=0,l=Object.entries(e.withdrawErr);c<l.length;c++){var u=a(l[c],2),d=u[0],h=u[1];t.push(ke("WITHDRAW_ERROR",{assetSymbol:ft().assets[Number(d)].symbol.toUpperCase(),time:new Date(1e3*h.stamp).toLocaleString(),error:h.error}))}return e.tradeErr&&t.push(ke("CEX_TRADE_ERROR",{time:new Date(1e3*e.tradeErr.stamp).toLocaleString(),error:e.tradeErr.error})),t}(this.cexProblems),_=[].concat(V,U);Ne.setVis(_.length>0,s.preOrderProblemsBox),Ne.empty(s.preOrderProblemsBox);var j,H=Mn(_);try{for(H.s();!(j=H.n()).done;){var z=j.value,G=document.createElement("span");G.textContent="- ".concat(z),s.preOrderProblemsBox.appendChild(G)}}catch(e){H.e(e)}finally{H.f()}}else this.ticker&&(clearInterval(this.ticker),this.ticker=void 0)}},{key:"updateOrderReport",value:function(e,t,n){var r=this,o=this.orderReportForm,s=ke("buys"===t?E:B);if(o.orderReportTitle.textContent=ke("ORDER_REPORT_TITLE",{side:s,epochNum:"".concat(n)}),Ne.setVis(e.error,o.orderReportError),Ne.setVis(!e.error,o.orderReportDetails),e.error){var i=cr(e.error,this.mkt.cexName,this.mkt.host);Ne.empty(o.orderReportError);for(var c=0,l=i;c<l.length;c++){var u=l[c],d=document.createElement("span");d.textContent="- ".concat(u),o.orderReportError.appendChild(d)}}else{Ne.empty(o.dexBalancesBody,o.placementsBody);var h=function(t){var n=r.dexBalancesRowTmpl.cloneNode(!0),a=Ne.parseTemplate(n),o=ft().assets[t];a.asset.textContent=o.symbol.toUpperCase(),a.assetLogo.src=Ne.logoPath(o.symbol);var s=o.unitInfo,i=e.availableDexBals[t]?e.availableDexBals[t].available:0,c=e.requiredDexBals[t]?e.requiredDexBals[t]:0,l=e.remainingDexBals[t]?e.remainingDexBals[t]:0,u=e.availableDexBals[t]?e.availableDexBals[t].pending:0,d=e.availableDexBals[t]?e.availableDexBals[t].locked:0,h=e.usedDexBals[t]?e.usedDexBals[t]:0;a.available.textContent=Ne.formatCoinValue(i,s),a.locked.textContent=Ne.formatCoinValue(d,s),a.required.textContent=Ne.formatCoinValue(c,s),a.remaining.textContent=Ne.formatCoinValue(l,s),a.pending.textContent=Ne.formatCoinValue(u,s),a.used.textContent=Ne.formatCoinValue(h,s);var p=lr(c,i);a.deficiency.textContent=Ne.formatCoinValue(p,s),p>0&&a.deficiency.classList.add("text-warning");var f=lr(p,u);return a.deficiencyWithPending.textContent=Ne.formatCoinValue(f,s),f>0&&a.deficiencyWithPending.classList.add("text-warning"),[n,p]},p=[this.mkt.baseID,this.mkt.quoteID];p.includes(this.mkt.baseFeeID)||p.push(this.mkt.baseFeeID),p.includes(this.mkt.quoteFeeID)||p.push(this.mkt.quoteFeeID);for(var f,v=0,m=[],g=0,y=p;g<y.length;g++){var b=a(h(y[g]),2),x=b[0];v+=b[1],o.dexBalancesBody.appendChild(x),m.push(x)}if(function(e,t){Ne.setVis(e,o.dexDeficiencyHeader,o.dexDeficiencyWithPendingHeader);var n,r=Mn(t);try{for(r.s();!(n=r.n()).done;){var a=n.value,s=Ne.parseTemplate(a);Ne.setVis(e,s.deficiency,s.deficiencyWithPending)}}catch(e){r.e(e)}finally{r.f()}}(v>0,m),Ne.setVis(this.mkt.cexName,o.cexSection,o.counterTradeRateHeader,o.requiredCEXHeader,o.usedCEXHeader),this.mkt.cexName){var k=Gn[this.mkt.cexName];k?(o.cexLogo.src=k.logo,o.cexBalancesTitle.textContent=ke("CEX_BALANCES",{cexName:k.name})):console.error("CEXDisplayInfo not found for ".concat(this.mkt.cexName));var w="buys"===t?this.mkt.baseID:this.mkt.quoteID;f=ft().assets[w],o.cexAsset.textContent=f.symbol.toUpperCase(),o.cexAssetLogo.src=Ne.logoPath(f.symbol);var C=e.availableCexBal?e.availableCexBal.available:0,S=e.requiredCexBal?e.requiredCexBal:0,F=e.remainingCexBal?e.remainingCexBal:0,T=e.availableCexBal?e.availableCexBal.pending:0,D=e.availableCexBal?e.availableCexBal.reserved:0,I=e.usedCexBal?e.usedCexBal:0,A=lr(S,C),R=lr(A,T);o.cexAvailable.textContent=Ne.formatCoinValue(C,f.unitInfo),o.cexLocked.textContent=Ne.formatCoinValue(D,f.unitInfo),o.cexRequired.textContent=Ne.formatCoinValue(S,f.unitInfo),o.cexRemaining.textContent=Ne.formatCoinValue(F,f.unitInfo),o.cexPending.textContent=Ne.formatCoinValue(T,f.unitInfo),o.cexUsed.textContent=Ne.formatCoinValue(I,f.unitInfo);var P=A>0;Ne.setVis(P,o.cexDeficiencyHeader,o.cexDeficiencyWithPendingHeader,o.cexDeficiency,o.cexDeficiencyWithPending),P&&(o.cexDeficiency.textContent=Ne.formatCoinValue(A,f.unitInfo),o.cexDeficiencyWithPending.textContent=Ne.formatCoinValue(R,f.unitInfo),R>0?o.cexDeficiencyWithPending.classList.add("text-warning"):o.cexDeficiencyWithPending.classList.remove("text-warning"))}var L,O=!1,M=Mn(e.placements);try{for(M.s();!(L=M.n()).done;)if(L.value.error){O=!0;break}}catch(e){M.e(e)}finally{M.f()}Ne.setVis(O,o.errorHeader);for(var q=function(e,t){var n=r.placementRowTmpl.cloneNode(!0),a=Ne.parseTemplate(n),o=ft().assets[r.mkt.baseID].unitInfo,s=ft().assets[r.mkt.quoteID].unitInfo;a.priority.textContent=String(t),a.rate.textContent=Ne.formatRateFullPrecision(e.rate,o,s,r.mkt.rateStep),a.lots.textContent=String(e.lots),a.standingLots.textContent=String(e.standingLots),a.orderedLots.textContent=String(e.orderedLots),e.standingLots+e.orderedLots<e.lots&&(a.lots.classList.add("text-warning"),a.standingLots.classList.add("text-warning"),a.orderedLots.classList.add("text-warning")),Ne.setVis(e.counterTradeRate>0,a.counterTradeRate),a.counterTradeRate.textContent=Ne.formatRateFullPrecision(e.counterTradeRate,o,s,r.mkt.rateStep);for(var i=0,c=p;i<c.length;i++){var l=c[i],u=ft().assets[l],d=u.unitInfo,h=e.requiredDex[l]?e.requiredDex[l]:0,v=e.usedDex[l]?e.usedDex[l]:0,m=r.placementAmtRowTmpl.cloneNode(!0),g=Ne.parseTemplate(m),y=r.placementAmtRowTmpl.cloneNode(!0),b=Ne.parseTemplate(y);g.amt.textContent=Ne.formatCoinValue(h,d),g.assetLogo.src=Ne.logoPath(u.symbol),g.assetSymbol.textContent=u.symbol.toUpperCase(),b.amt.textContent=Ne.formatCoinValue(v,d),b.assetLogo.src=Ne.logoPath(u.symbol),b.assetSymbol.textContent=u.symbol.toUpperCase(),a.requiredDEX.appendChild(m),a.usedDEX.appendChild(y)}if(Ne.setVis(r.mkt.cexName,a.requiredCEX,a.usedCEX),r.mkt.cexName){var x=Ne.formatCoinValue(e.requiredCex,f.unitInfo);a.requiredCEX.textContent="".concat(x," ").concat(f.symbol.toUpperCase());var k=Ne.formatCoinValue(e.usedCex,f.unitInfo);a.usedCEX.textContent="".concat(k," ").concat(f.symbol.toUpperCase())}if(Ne.setVis(O,a.error),e.error){var w=cr(e.error,r.mkt.cexName,r.mkt.host);a.error.textContent=w.join("\n")}return n},N=0;N<e.placements.length;N++)o.placementsBody.appendChild(q(e.placements[N],N+1))}}},{key:"showOrderReport",value:function(e){if(this.latestEpoch){var t="buys"===e?this.latestEpoch.buysReport:this.latestEpoch.sellsReport;t&&(this.updateOrderReport(t,e,this.latestEpoch.epochNum),this.displayedOrderReportFormSide=e,this.forms.show(this.orderReportFormEl,this.mkt.id))}}},{key:"readBook",value:function(){if(this.mkt){var e=this.page,t=this.mkt,n=t.host,r=t.mktID,a=ft().exchanges[n].markets[r].orders||[];e.nBookedOrders.textContent=String(a.filter((function(e){return 2===e.status})).length)}}}]),e}();function or(e){if(e.error)return!1;for(var t=0;t<e.placements.length;t++){var n=e.placements[t];if(n.orderedLots+n.standingLots<n.lots)return!1;if(n.error)return!1}return!0}function sr(e,t,n,r){t.textContent=Ne.formatFourSigFigs(e,r),n.classList.toggle("ico-plus",e>0),n.classList.toggle("text-good",e>0)}function ir(e,t,n,r,a,o,s,i,c,l,u,d,h){var p=Jn(a,e,t),f={dex:{base:{lots:o,val:o*a},quote:{lots:s,val:s*p}},cex:{base:{lots:s,val:s*a},quote:{lots:o,val:o*p}}},v=0,m=0;e!==i&&(v+=n.estimated.swap,i===c&&(v+=r.estimated.redeem));var g=n.max.swap;e===c&&(g+=r.max.redeem),l&&(g+=n.max.refund,u||i===c||(m=n.max.redeem));var y=0,b=0;t!==c&&(y+=r.estimated.swap,c===i&&(y+=n.estimated.redeem));var x=r.max.swap;t===i&&(x+=n.max.redeem),u&&(x+=r.max.refund,l||c===i||(b=r.max.redeem));var k=1+d,w=1+h,C=g*o*k,S=m*s*w,F=x*s*w,T=b*o*k;return{commit:f,fees:{base:On(On({},n),{},{bookingFeesPerLot:g,bookingFeesPerCounterLot:m,bookingFees:C+S,swapReservesFactor:k,redeemReservesFactor:w,tokenFeesPerSwap:v}),quote:On(On({},r),{},{bookingFeesPerLot:x,bookingFeesPerCounterLot:b,bookingFees:F+T,swapReservesFactor:w,redeemReservesFactor:k,tokenFeesPerSwap:y})}}}function cr(e,t,n){if(!e)return[];var r=[];if(e.walletNotSynced)for(var o=0,s=Object.entries(e.walletNotSynced);o<s.length;o++){var i=a(s[o],2),c=i[0];i[1]&&r.push(ke("WALLET_NOT_SYNCED",{assetSymbol:ft().assets[Number(c)].symbol.toUpperCase()}))}if(e.noWalletPeers)for(var l=0,u=Object.entries(e.noWalletPeers);l<u.length;l++){var d=a(u[l],2),h=d[0];d[1]&&r.push(ke("WALLET_NO_PEERS",{assetSymbol:ft().assets[Number(h)].symbol.toUpperCase()}))}return e.accountSuspended&&r.push(ke("ACCOUNT_SUSPENDED",{dexHost:n})),e.userLimitTooLow&&r.push(ke("USER_LIMIT_TOO_LOW",{dexHost:n})),e.noPriceSource&&r.push(ke("NO_PRICE_SOURCE")),e.cexOrderbookUnsynced&&r.push(ke("CEX_ORDERBOOK_UNSYNCED",{cexName:t})),e.causesSelfMatch&&r.push(ke("CAUSES_SELF_MATCH")),e.unknownError&&r.push(e.unknownError),r}function lr(e,t){return e-t>0?e-t:0}function ur(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return dr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?dr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function dr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}window.mmstatus=function(){return Xn.status()};var hr=function(){function e(t,n){var r=this;i(this,e),h(this,"formsDiv",void 0),h(this,"currentForm",void 0),h(this,"currentFormID",void 0),h(this,"keyup",void 0),h(this,"closed",void 0),this.formsDiv=t,this.closed=null==n?void 0:n.closed,t.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){r.close()}))})),Ne.bind(t,"mousedown",(function(e){r.currentForm&&(Ne.mouseInElement(e,r.currentForm)||r.close())})),this.keyup=function(e){"Escape"===e.key&&r.close()},Ne.bind(document,"keyup",this.keyup)}var t;return d(e,[{key:"show",value:(t=s(f().mark((function e(t,n){var a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.currentForm=t,this.currentFormID=n,Ne.hide.apply(Ne,r(Array.from(this.formsDiv.children))),t.style.right="10000px",Ne.show(this.formsDiv,t),a=(this.formsDiv.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(Ir,(function(e){t.style.right="".concat((1-e)*a,"px")}),"easeOutHard");case 8:t.style.right="0";case 9:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})},{key:"close",value:function(){Ne.hide(this.formsDiv);var e=this.currentForm;this.currentForm=void 0,this.currentFormID=void 0,this.closed&&this.closed(e)}},{key:"exit",value:function(){Ne.unbind(document,"keyup",this.keyup)}}]),e}(),pr=function(){function e(t,n,r){var a=this;i(this,e),h(this,"page",void 0),h(this,"form",void 0),h(this,"success",void 0),h(this,"current",void 0),h(this,"subform",void 0),h(this,"walletCfgGuide",void 0),h(this,"parentSyncer",void 0),h(this,"createUpdater",void 0),this.form=t,this.success=n;var o=this.page=Ne.parseTemplate(t);r&&(Ne.show(o.goBack),Ne.bind(o.goBack,"click",(function(){r()}))),Ne.empty(o.walletTabTmpl),o.walletTabTmpl.removeAttribute("id"),this.subform=new vr(o.walletSettings,!0),this.walletCfgGuide=Ne.tmplElement(t,"walletCfgGuide"),Br(t,o.submitAdd,(function(){return a.submit()})),Br(t,o.oneBttn,(function(){return a.submit()})),ft().registerNoteFeeder({walletstate:function(e){a.reportWalletState(e.wallet)},walletsync:function(e){a.parentSyncer&&a.parentSyncer(ft().walletMap[e.assetID])},createwallet:function(e){a.reportCreationUpdate(e)}})}var t,n,a,o,c,l,u;return d(e,[{key:"reportWalletState",value:function(e){this.parentSyncer&&this.parentSyncer(e)}},{key:"reportCreationUpdate",value:function(e){this.createUpdater&&this.createUpdater(e)}},{key:"createWallet",value:(u=s(f().mark((function e(t,n,r){var a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a={assetID:t,pass:this.page.newWalletPass.value||"",config:this.subform.map(t),walletType:n,parentForm:r},o=new Yt(this.form,{backgroundColor:!0}),e.next=4,S("/api/newwallet",a);case 4:return s=e.sent,o.stop(),e.abrupt("return",s);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return u.apply(this,arguments)})},{key:"submit",value:(l=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=t.newWalletPass,Ne.hide(t.newWalletErr),r=this.current,a=r.asset,o=r.parentAsset,s=this.current.selectedDef,c=s.type,o&&(c=a.token.definition.type,i={assetID:o.id,config:this.subform.map(o.id),walletType:s.type}),e.next=9,this.createWallet(a.id,c,i);case 9:if(l=e.sent,ft().checkResponse(l)){e.next=13;break}return this.setError(l.msg),e.abrupt("return");case 13:if(n.value="",!o){e.next=19;break}return e.next=17,this.runParentSync();case 17:e.next=20;break;case 19:this.success(this.current.asset.id);case 20:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"runParentSync",value:(c=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=this.current,r=n.parentAsset,a=n.asset,r){e.next=3;break}return e.abrupt("return");case 3:return t.parentSyncPct.textContent="0",t.parentName.textContent=r.name,t.parentLogo.src=Ne.logoPath(r.symbol),t.childName.textContent=a.name,t.childLogo.src=Ne.logoPath(a.symbol),Ne.hide(t.mainForm),Ne.show(t.parentSyncing),e.prev=10,e.next=13,this.syncParent(r);case 13:this.success(this.current.asset.id),e.next=19;break;case 16:e.prev=16,e.t0=e.catch(10),this.setError(e.t0.message||e.t0);case 19:Ne.show(t.mainForm),Ne.hide(t.parentSyncing);case 21:case"end":return e.stop()}}),e,this,[[10,16]])}))),function(){return c.apply(this,arguments)})},{key:"syncParent",value:function(e){var t=this,n=this.page,r=this.current.asset;return new Promise((function(a,o){var s=ft().assets[e.id].wallet;if(s&&s.synced)return a();t.parentSyncer=function(t){t.assetID===e.id&&(n.parentSyncPct.textContent=(100*t.syncProgress).toFixed(1))},t.createUpdater=function(e){if(e.assetID===r.id){switch(e.topic){case"QueuedCreationFailed":o(new Error("".concat(e.subject,": ").concat(e.details)));break;case"QueuedCreationSuccess":a();break;default:return}t.parentSyncer=null,t.createUpdater=null}}}))}},{key:"setAsset",value:(o=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d,h,p=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.parseAsset(t)){e.next=2;break}return e.abrupt("return");case 2:if(n=this.page,r=n.walletTypeTabs,a=this.current,o=a.winfo,s=a.asset,i=a.parentAsset,n.assetName.textContent=o.name,n.newWalletPass.value="",Ne.empty(r),Ne.hide(r,n.newWalletErr,n.tokenMsgBox),this.page.assetLogo.src=Ne.logoPath(s.symbol),i&&(n.tokenParentLogo.src=Ne.logoPath(i.symbol),n.tokenParentName.textContent=i.name,Ne.show(n.tokenMsgBox)),c=i?i.info:null,!((l=c?c.availablewallets:o.availablewallets?o.availablewallets:[o.definition]).length>1)){e.next=34;break}Ne.show(r),u=ur(l),e.prev=16,h=f().mark((function e(){var t,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=d.value,(a=n.walletTabTmpl.cloneNode(!0)).dataset.tooltip=t.description,a.textContent=t.tab,r.appendChild(a),Ne.bind(a,"click",(function(){var e,n=ur(Ne.kids(r));try{for(n.s();!(e=n.n()).done;)e.value.classList.remove("selected")}catch(e){n.e(e)}finally{n.f()}a.classList.add("selected"),p.update(t)}));case 6:case"end":return e.stop()}}),e)})),u.s();case 19:if((d=u.n()).done){e.next=23;break}return e.delegateYield(h(),"t0",21);case 21:e.next=19;break;case 23:e.next=28;break;case 25:e.prev=25,e.t1=e.catch(16),u.e(e.t1);case 28:return e.prev=28,u.f(),e.finish(28);case 31:ft().bindTooltips(r),r.firstChild.classList.add("selected");case 34:return e.next=36,this.update(this.current.selectedDef);case 36:if(!s.walletCreationPending){e.next=39;break}return e.next=39,this.runParentSync();case 39:case"end":return e.stop()}}),e,this,[[16,25,28,31]])}))),function(e){return o.apply(this,arguments)})},{key:"parseAsset",value:function(e){if(this.current&&this.current.asset.id===e)return!1;var t=ft().assets[e],n=t.token;if(!n){if(!t.info)throw Error("this non-token asset has no wallet info!");return this.current={asset:t,winfo:t.info,selectedDef:t.info.availablewallets[0]},!0}var r=ft().user.assets[n.parentID];if(r.wallet)return this.current={asset:t,winfo:n,selectedDef:n.definition},!0;if(!r.info)throw Error("this parent has no wallet info!");return this.current={asset:t,parentAsset:r,winfo:n,selectedDef:r.info.availablewallets[0]},!0}},{key:"update",value:(a=s(f().mark((function e(t){var n,a,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,k;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.page,this.current.selectedDef=t,Ne.hide(n.walletPassAndSubmitBttn,n.oneBttnBox,n.newWalletPassBox),a=t.guidelink,(o=t.configopts||[]).map((function(e){return e.isBirthdayConfig&&ft().seedGenTime>0&&(e.default=Pr(new Date)),e})),s=!1,i=ur(o),e.prev=8,i.s();case 10:if((c=i.n()).done){e.next=17;break}if(!c.value.required){e.next=15;break}return s=!0,e.abrupt("break",17);case 15:e.next=10;break;case 17:e.next=22;break;case 19:e.prev=19,e.t0=e.catch(8),i.e(e.t0);case 22:return e.prev=22,i.f(),e.finish(22);case 25:if(l=this.current,u=l.asset,d=l.parentAsset,h=l.winfo,(p=t.seeded||Boolean(u.token))&&!s?(Ne.hide(n.walletSettingsHeader),Ne.show(n.oneBttnBox)):p?(Ne.show(n.walletPassAndSubmitBttn,n.walletSettingsHeader),n.newWalletPass.value="",n.submitAdd.textContent=ke("CREATE")):(Ne.show(n.walletPassAndSubmitBttn,n.walletSettingsHeader),t.noauth||Ne.show(n.newWalletPassBox),n.submitAdd.textContent=ke("ADD")),d){v=JSON.parse(JSON.stringify(o)),m=ur(v);try{for(m.s();!(g=m.n()).done;)g.value.regAsset=d.id}catch(e){m.e(e)}finally{m.f()}if((y=h.definition.configopts||[]).length>0){b=JSON.parse(JSON.stringify(y)),x=ur(b);try{for(x.s();!(k=x.n()).done;)k.value.regAsset=u.id}catch(e){x.e(e)}finally{x.f()}v.push.apply(v,r(b))}this.subform.update(u.id,v,!1)}else this.subform.update(u.id,o,!1);return this.setGuideLink(a),t.seeded||Boolean(this.current.asset.token)?Ne.hide(this.subform.fileSelector):Ne.show(this.subform.fileSelector),e.next=33,this.loadDefaults();case 33:case"end":return e.stop()}}),e,this,[[8,19,22,25]])}))),function(e){return a.apply(this,arguments)})},{key:"setGuideLink",value:function(e){Ne.hide(this.walletCfgGuide),""!==e&&(this.walletCfgGuide.href=e,Ne.show(this.walletCfgGuide))}},{key:"setError",value:(n=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.page.newWalletErr.textContent=t,Ne.show(this.page.newWalletErr);case 2:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"loadDefaults",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.current,n=t.asset,r=t.parentAsset,(a=t.selectedDef).configpath){e.next=3;break}return e.abrupt("return");case 3:if(o=n.id,!r){e.next=8;break}if(!a.seeded){e.next=7;break}return e.abrupt("return");case 7:o=r.id;case 8:return s=ft().loading(this.form),e.next=11,S("/api/defaultwalletcfg",{assetID:o,type:a.type});case 11:if(i=e.sent,s(),ft().checkResponse(i)){e.next=16;break}return this.setError(i.msg),e.abrupt("return");case 16:this.subform.setLoadedConfig(i.config);case 17:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),fr=0,vr=function(){function e(t,n){var r=this;i(this,e),h(this,"page",void 0),h(this,"form",void 0),h(this,"configElements",void 0),h(this,"configOpts",void 0),h(this,"sectionize",void 0),h(this,"allSettings",void 0),h(this,"dynamicOpts",void 0),h(this,"textInputTmpl",void 0),h(this,"dateInputTmpl",void 0),h(this,"checkboxTmpl",void 0),h(this,"repeatableTmpl",void 0),h(this,"fileSelector",void 0),h(this,"fileInput",void 0),h(this,"errMsg",void 0),h(this,"showOther",void 0),h(this,"showIcon",void 0),h(this,"hideIcon",void 0),h(this,"showHideMsg",void 0),h(this,"otherSettings",void 0),h(this,"loadedSettingsMsg",void 0),h(this,"loadedSettings",void 0),h(this,"defaultSettingsMsg",void 0),h(this,"defaultSettings",void 0),h(this,"assetHasActiveOrders",void 0),h(this,"assetID",void 0),this.page=Ne.idDescendants(t),this.form=t,this.configElements=[],this.configOpts=[],this.sectionize=n,this.allSettings=Ne.tmplElement(t,"allSettings"),this.dynamicOpts=Ne.tmplElement(t,"dynamicOpts"),this.textInputTmpl=Ne.tmplElement(t,"textInput"),this.textInputTmpl.remove(),this.dateInputTmpl=Ne.tmplElement(t,"dateInput"),this.dateInputTmpl.remove(),this.checkboxTmpl=Ne.tmplElement(t,"checkbox"),this.checkboxTmpl.remove(),this.repeatableTmpl=Ne.tmplElement(t,"repeatableInput"),this.repeatableTmpl.remove(),this.fileSelector=Ne.tmplElement(t,"fileSelector"),this.fileInput=Ne.tmplElement(t,"fileInput"),this.errMsg=Ne.tmplElement(t,"errMsg"),this.showOther=Ne.tmplElement(t,"showOther"),this.showIcon=Ne.tmplElement(t,"showIcon"),this.hideIcon=Ne.tmplElement(t,"hideIcon"),this.showHideMsg=Ne.tmplElement(t,"showHideMsg"),this.otherSettings=Ne.tmplElement(t,"otherSettings"),this.loadedSettingsMsg=Ne.tmplElement(t,"loadedSettingsMsg"),this.loadedSettings=Ne.tmplElement(t,"loadedSettings"),this.defaultSettingsMsg=Ne.tmplElement(t,"defaultSettingsMsg"),this.defaultSettings=Ne.tmplElement(t,"defaultSettings"),n||Ne.hide(this.showOther),Ne.bind(this.fileSelector,"click",(function(){return r.fileInput.click()})),Ne.bind(this.fileInput,"change",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",r.fileInputChanged());case 1:case"end":return e.stop()}}),e)})))),Ne.bind(this.showOther,"click",(function(){r.setOtherSettingsViz(r.hideIcon.classList.contains("d-hide"))}))}var t;return d(e,[{key:"fileInputChanged",value:(t=s(f().mark((function e(){var t,n,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(Ne.hide(this.errMsg),this.fileInput.value){e.next=3;break}return e.abrupt("return");case 3:if((n=this.fileInput.files)&&0!==n.length){e.next=6;break}return e.abrupt("return");case 6:return a=ft().loading(this.form),e.next=9,n[0].text();case 9:if(o=e.sent){e.next=12;break}return e.abrupt("return");case 12:return e.next=14,S("/api/parseconfig",{configtext:o});case 14:if(s=e.sent,a(),ft().checkResponse(s)){e.next=20;break}return this.errMsg.textContent=s.msg,Ne.show(this.errMsg),e.abrupt("return");case 20:if(0!==Object.keys(s.map).length){e.next=22;break}return e.abrupt("return");case 22:(t=this.dynamicOpts).append.apply(t,r(this.setConfig(s.map))),this.reorder(this.dynamicOpts),i=[this.loadedSettings.children.length,this.defaultSettings.children.length],l=i[1],0===(c=i[0])&&Ne.hide(this.loadedSettings,this.loadedSettingsMsg),0===l&&Ne.hide(this.defaultSettings,this.defaultSettingsMsg),c+l===0&&Ne.hide(this.showOther,this.otherSettings);case 28:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"addOpt",value:function(e,t,n,r){var a,o,s=this;if(t.isboolean)o=this.checkboxTmpl.cloneNode(!0);else if(t.isdate)o=this.dateInputTmpl.cloneNode(!0);else if(t.repeatable){if((o=this.repeatableTmpl.cloneNode(!0)).classList.add("repeatable"),Ne.bind(Ne.tmplElement(o,"add"),"click",(function(){s.addOpt(e,t,o,!0)})),!r)for(var i=0;i<(t.repeatN?t.repeatN-1:0);i++)this.addOpt(e,t,n,!0)}else o=this.textInputTmpl.cloneNode(!0);-1!==((null===(a=ft().extensionWallet(this.assetID))||void 0===a?void 0:a.hiddenFields)||[]).indexOf(t.key)&&Ne.hide(o),this.configElements.push([t,o]);var c=o.querySelector("input");c.dataset.configKey=t.key,fr++;var l="wcfg-"+String(fr);c.id=l;var u=Ne.safeSelector(o,"label");if(u.htmlFor=l,u.prepend(t.displayname),void 0!==t.regAsset){var d=new window.Image(15,15);d.src=Ne.logoPathFromID(t.regAsset||-1),u.prepend(d)}if(n?n.after(o):e.appendChild(o),t.noecho&&(c.type="password",c.autocomplete="off"),t.description&&(u.dataset.tooltip=t.description),t.isboolean)c.checked=t.default;else if(t.isdate){var h=function(e){return e?Lr("now"===e?new Date:new Date(1e3*e)):""};c.max=h(t.max),c.min=h(t.min);var p=t.default?new Date(1e3*t.default):new Date;c.value=Lr(p)}else c.value=null!==t.default?t.default:"";return c.disabled=Boolean(t.disablewhenactive&&this.assetHasActiveOrders),o}},{key:"update",value:function(e,t,n){if(this.assetHasActiveOrders=n,this.configElements=[],this.configOpts=t||[],this.assetID=e,Ne.empty(this.dynamicOpts,this.defaultSettings,this.loadedSettings),0===this.configOpts.length)return Ne.hide(this.form);Ne.show(this.form),this.setOtherSettingsViz(!1),Ne.hide(this.loadedSettingsMsg,this.loadedSettings,this.defaultSettingsMsg,this.defaultSettings,this.errMsg);var r,a=[],o=ur(this.configOpts);try{for(o.s();!(r=o.n()).done;){var s=r.value;this.sectionize&&null!==s.default?a.push(s):this.addOpt(this.dynamicOpts,s)}}catch(e){o.e(e)}finally{o.f()}if(a.length){var i,c=ur(a);try{for(c.s();!(i=c.n()).done;){var l=i.value;this.addOpt(this.defaultSettings,l)}}catch(e){c.e(e)}finally{c.f()}Ne.show(this.showOther,this.defaultSettingsMsg,this.defaultSettings)}else Ne.hide(this.showOther);ft().bindTooltips(this.allSettings),this.dynamicOpts.children.length?Ne.show(this.dynamicOpts):Ne.hide(this.dynamicOpts)}},{key:"setOtherSettingsViz",value:function(e){if(e)return Ne.hide(this.showIcon),Ne.show(this.hideIcon,this.otherSettings),void(this.showHideMsg.textContent=ke("HIDE_ADDITIONAL_SETTINGS"));Ne.hide(this.hideIcon,this.otherSettings),Ne.show(this.showIcon),this.showHideMsg.textContent=ke("SHOW_ADDITIONAL_SETTINGS")}},{key:"setConfig",value:function(e){for(var t,n=[],o={},s=[],i=0,c=r(this.configElements);i<c.length;i++){var l=c[i],u=a(l,2),d=u[0],h=u[1],p=e[d.key];if(void 0!==p)if(d.repeatable){if(o[d.key]){h.remove(),s.push(l);continue}o[d.key]=!0;var f=p.split(d.repeatable),v=f[0];n.push(h),Ne.safeSelector(h,"input").value=v;for(var m=1;m<(d.repeatN||1);m++)n.push(this.addOpt(h.parentElement,d,h,!0));for(var g=1;g<f.length;g++){var y=this.addOpt(h.parentElement,d,h,!0);Ne.safeSelector(y,"input").value=f[g],n.push(y)}}else{n.push(h);var b=Ne.safeSelector(h,"input");d.isboolean?b.checked="1"===(t=p)||"true"===t.toLowerCase():d.isdate?b.value=Lr(new Date(1e3*parseInt(p))):b.value=p}}for(var x=0,k=s;x<k.length;x++){var w=k[x],C=this.configElements.indexOf(w);C>=0&&this.configElements.splice(C,1)}return n}},{key:"setLoadedConfig",value:function(e){var t,n=this.setConfig(e);this.sectionize&&0!==n.length&&((t=this.loadedSettings).append.apply(t,r(n)),this.reorder(this.loadedSettings),Ne.show(this.loadedSettings,this.loadedSettingsMsg),0===this.defaultSettings.children.length&&Ne.hide(this.defaultSettings,this.defaultSettingsMsg))}},{key:"map",value:function(e){var t,n={},r=ur(this.configElements);try{for(r.s();!(t=r.n()).done;){var o=a(t.value,2),s=o[0],i=o[1],c=Ne.safeSelector(i,"input");if(void 0===s.regAsset||s.regAsset===e)if(s.isboolean&&s.key)n[s.key]=c.checked?"1":"0";else if(s.isdate&&s.key){var l=c.min?Pr(new Date(c.min+"T00:00")):Number.MIN_SAFE_INTEGER,u=c.max?Pr(new Date(c.max+"T00:00")):Number.MAX_SAFE_INTEGER,d=c.value?Pr(new Date(c.value+"T00:00")):0;d<l?d=l:d>u&&(d=u),n[s.key]=String(d)}else c.value&&(s.repeatable&&n[s.key]?n[s.key]+=s.repeatable+c.value:n[s.key]=c.value)}}catch(e){r.e(e)}finally{r.f()}return n}},{key:"reorder",value:function(e){var t=this,n={};e.querySelectorAll("input").forEach((function(e){var r=e.dataset.configKey;if(r){var o,s=[],i=ur(t.configElements);try{for(i.s();!(o=i.n()).done;){var c=a(o.value,2),l=c[0],u=c[1];l.key===r&&s.push(u)}}catch(e){i.e(e)}finally{i.f()}n[r]=s}}));var r,o=ur(this.configOpts);try{for(o.s();!(r=o.n()).done;){var s,i=r.value,c=ur(n[i.key]||[]);try{for(c.s();!(s=c.n()).done;){var l=s.value;e.append(l)}}catch(e){c.e(e)}finally{c.f()}}}catch(e){o.e(e)}finally{o.f()}}}]),e}(),mr=function(){function e(t,n,r){var a=this;i(this,e),h(this,"form",void 0),h(this,"success",void 0),h(this,"page",void 0),h(this,"xc",void 0),h(this,"certFile",void 0),h(this,"bondAssetID",void 0),h(this,"tier",void 0),h(this,"fees",void 0),this.form=t,this.success=n,this.page=Ne.parseTemplate(t),this.certFile="",Ne.bind(this.page.goBack,"click",(function(){return r()})),Br(t,this.page.submit,(function(){return a.submitForm()}))}var t,n;return d(e,[{key:"setExchange",value:function(e,t){this.xc=e,this.certFile=t,this.page.host.textContent=e.host}},{key:"setAsset",value:function(e,t,n){var r=ft().assets[e],a=r.unitInfo.conventional,o=a.conversionFactor,s=a.unit;this.bondAssetID=r.id,this.tier=t,this.fees=n;var i=this.page,c=this.xc.bondAssets[r.symbol].amount*t*2/o;i.tradingTier.textContent=String(t),i.logo.src=Ne.logoPath(r.symbol),i.bondLock.textContent=Ne.formatFourSigFigs(c),i.bondUnit.textContent=s;var l=ft().fiatRatesMap[e];Ne.show(i.bondLockUSDBox),l?i.bondLockUSD.textContent=Ne.formatFourSigFigs(c*l):Ne.hide(i.bondLockUSDBox),n&&(i.feeReserves.textContent=Ne.formatFourSigFigs(n/o)),i.reservesUnit.textContent=s}},{key:"setFees",value:function(e,t){this.fees=t;var n=ft().assets[e].unitInfo.conventional.conversionFactor;this.page.feeReserves.textContent=Ne.formatFourSigFigs(t/n)}},{key:"animate",value:(n=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.form,Ne.animate(400,(function(e){t.style.transform="scale(".concat(e,")"),t.style.opacity=String(Math.pow(e,4));var n="".concat(500*(1-e),"px");t.style.top=n,t.style.left=n}));case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"submitForm",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d,h;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=this.bondAssetID,r=this.xc,a=this.certFile,o=this.tier,s=ft().assets[n]){e.next=6;break}return t.regErr.innerText=ke("SELECT_WALLET_FOR_FEE_PAYMENT"),Ne.show(t.regErr),e.abrupt("return");case 6:return Ne.hide(t.regErr),i=r.bondAssets[s.wallet.symbol],c=r.host,!ft().exchanges[r.host]||ft().exchanges[r.host].viewOnly?(l={addr:c,cert:a,bond:i.amount*o,asset:i.id},u="/api/postbond"):(l={host:c,targetTier:o,bondAssetID:n},u="/api/updatebondoptions"),d=ft().loading(this.form),e.next=13,S(u,l);case 13:if(h=e.sent,d(),ft().checkResponse(h)){e.next=19;break}return t.regErr.textContent=h.msg,Ne.show(t.regErr),e.abrupt("return");case 19:this.success();case 20:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),gr=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"success",void 0),h(this,"xc",void 0),h(this,"selectedAssetID",void 0),h(this,"certFile",void 0),h(this,"page",void 0),h(this,"assetRows",void 0),h(this,"marketRows",void 0),this.form=t,this.certFile="",this.success=n;var a=this.page=Ne.parseTemplate(t);Ne.cleanTemplates(a.currentBondTmpl,a.bondAssetTmpl,a.marketTmpl),Ne.bind(a.tradingTierInput,"input",(function(){r.setTier()})),Ne.bind(a.tradingTierInput,"keyup",(function(e){"Enter"===e.key&&r.acceptTier()})),Ne.bind(a.submitTradingTier,"click",(function(){r.acceptTier()})),Ne.bind(a.tierUp,"click",(function(){r.incrementTier(!0)})),Ne.bind(a.tierDown,"click",(function(){r.incrementTier(!1)})),Ne.bind(a.goBackToAssets,"click",(function(){Ne.hide(a.tradingTierForm),Ne.show(a.assetForm)})),Ne.bind(a.whatsABond,"click",(function(){Ne.hide(a.assetForm),Ne.show(a.whatsABondPanel)}));var o=function(){Ne.show(a.assetForm),Ne.hide(a.whatsABondPanel)};Ne.bind(a.bondGotIt,"click",(function(){o()})),Ne.bind(a.whatsABondBack,"click",(function(){o()})),Ne.bind(a.usePrepaidBond,"click",(function(){r.showPrepaidBondForm()})),Ne.bind(a.ppbGoBack,"click",(function(){r.hidePrepaidBondForm()})),Ne.bind(a.submitPrepaidBond,"click",(function(){r.submitPrepaidBond()})),ft().registerNoteFeeder({createwallet:function(e){"QueuedCreationSuccess"===e.topic&&r.walletCreated(e.assetID)}})}var t,n;return d(e,[{key:"setTierError",value:function(e){this.page.tradingTierErr.textContent=e,Ne.show(this.page.tradingTierErr)}},{key:"setAssetError",value:function(e){this.page.regAssetErr.textContent=e,Ne.show(this.page.regAssetErr)}},{key:"clearErrors",value:function(){Ne.hide(this.page.regAssetErr,this.page.tradingTierErr)}},{key:"setExchange",value:function(e,t){var n=this;this.xc=e,this.certFile=t,this.assetRows={},this.marketRows=[];var r=this.page;Ne.hide(r.assetForm,r.tradingTierForm,r.whatsABondPanel,r.prepaidBonds),Ne.empty(r.bondAssets,r.markets),this.clearErrors();for(var a=function(e,t){var a=ft().assets[e];if(a){var o=a.unitInfo.conventional,s=o.unit,i=o.conversionFactor,c=a.name,l=a.symbol,u=r.bondAssetTmpl.cloneNode(!0);r.bondAssets.appendChild(u);var d=Ne.parseTemplate(u);d.logo.src=Ne.logoPath(l),d.name.textContent=c,Ne.bind(u,"click",(function(){n.assetSelected(e)})),d.feeSymbol.textContent=s;var h=t.amount/i;d.feeAmt.textContent=Ne.formatFourSigFigs(h);var p=ft().fiatRatesMap[e];Ne.setVis(p,d.fiatBox),p&&(d.fiatBondAmount.textContent=Ne.formatFourSigFigs(h*p)),n.assetRows[e]={ready:d.ready}}},o=function(t){var a=t.baseid,o=t.quoteid,s=[ft().assets[a],ft().assets[o]];if(s[0]&&s[1]){var i=r.marketTmpl.cloneNode(!0);r.markets.appendChild(i);var c,l=e.assets[a],u=l.symbol,d=l.unitInfo,h=e.assets[o],p=h.symbol,f=h.unitInfo,v=ur(Ne.applySelector(i,"[data-base-ticker]"));try{for(v.s();!(c=v.n()).done;)c.value.textContent=d.conventional.unit}catch(e){v.e(e)}finally{v.f()}var m,g=ur(Ne.applySelector(i,"[data-quote-ticker]"));try{for(g.s();!(m=g.n()).done;)m.value.textContent=f.conventional.unit}catch(e){g.e(e)}finally{g.f()}var y=Ne.parseTemplate(i);y.baseLogo.src=Ne.logoPath(u),y.quoteLogo.src=Ne.logoPath(p);var b=function(e){var n=t.parcelsize,o=t.lotsize/d.conventional.conversionFactor,s=o*n*2*e,i=o*n*2*3*e;y.tradeLimitLow.textContent=Ne.formatFourSigFigs(s),y.tradeLimitHigh.textContent=Ne.formatFourSigFigs(i);var c=ft().fiatRatesMap[a];c&&(y.fiatTradeLimitLow.textContent=Ne.formatFourSigFigs(s*c),y.fiatTradeLimitHigh.textContent=Ne.formatFourSigFigs(i*c)),Ne.setVis(c,r.fiatTradeLowBox,r.fiatTradeHighBox)};b(dn(e.auth)||1),n.marketRows.push({mkt:t,tmpl:y,setTier:b})}},s=0,i=Object.values(e.assets||{});s<i.length;s++){var c=i[s],l=c.symbol,u=c.id;if(ft().assets[u]){var d=e.bondAssets[l];d&&a(u,d)}}for(var h=0,p=Object.values(e.markets||{});h<p.length;h++)o(p[h]);r.tradingTierInput.value=e.auth.targetTier?String(e.auth.targetTier):"1",this.validBondAssetSelected(e)?this.assetSelected(e.auth.bondAssetID):Ne.show(r.assetForm)}},{key:"validBondAssetSelected",value:function(e){if(e.viewOnly)return!1;var t=e.auth,n=t.targetTier,r=t.bondAssetID;if(n<1)return!1;var a=ft().assets[r];return a&&Boolean(e.bondAssets[a.symbol])}},{key:"walletCreated",value:function(e){var t=this.assetRows[e],n=ft().assets[e];!function(e,t){t.wallet?e.textContent=ke("WALLET_READY"):t.walletCreationPending?e.textContent=ke("WALLET_PENDING"):e.textContent=ke("SETUP_NEEDED"),e.classList.remove("readygreen","setuporange"),e.classList.add(t.wallet?"readygreen":"setuporange")}(t.ready,n)}},{key:"refresh",value:function(){this.setExchange(this.xc,this.certFile)}},{key:"assetSelected",value:function(e){this.selectedAssetID=e,this.setTier();var t=this.page,n=t.assetForm,r=t.tradingTierForm,a=t.tradingTierInput;Ne.hide(n),Ne.show(r),a.focus()}},{key:"setTier",value:function(){var e,t=this.page,n=this.xc.bondAssets,r=this.selectedAssetID,o=ft().assets[r],s=o.symbol,i=o.unitInfo,c=i.conventional,l=c.conversionFactor,u=c.unit,d=n[s],h=null!==(e=t.tradingTierInput.value)&&void 0!==e?e:"";if(h){var p=parseInt(h);if(isNaN(p))this.setTierError(ke(ie));else{t.tradingTierInput.value=String(p),t.bondSizeDisplay.textContent=Ne.formatCoinValue(d.amount,i);var f,v=ur(Ne.applySelector(t.tradingTierForm,"[data-tier]"));try{for(v.s();!(f=v.n()).done;)f.value.textContent=String(p)}catch(e){v.e(e)}finally{v.f()}var m,g=ur(Ne.applySelector(t.tradingTierForm,"[data-bond-asset-ticker]"));try{for(g.s();!(m=g.n()).done;)m.value.textContent=u}catch(e){g.e(e)}finally{g.f()}var y=d.amount*p*2;t.bondLockDisplay.textContent=Ne.formatCoinValue(y,i);var b=ft().fiatRatesMap[r];b&&(t.fiatLockDisplay.textContent=Ne.formatFourSigFigs(y/l*b));for(var x=0,k=Object.values(this.marketRows);x<k.length;x++)k[x].setTier(p);for(var w={},C=0,S=Object.entries(ft().assets);C<S.length;C++){var F=a(S[C],2),T=F[0],D=F[1].wallet;if(D){var I=D.balance,A=I.bondlocked+I.bondReserves;A>0&&(w[parseInt(T)]=A)}}var R=Object.keys(w).length>0;if(Ne.setVis(R,t.currentBondBox),R){Ne.empty(t.currentBonds);for(var E=0,B=Object.entries(w);E<B.length;E++){var P=a(B[E],2),L=P[0],O=P[1],M=parseInt(L),q=ft().assets[M],N=q.unitInfo,W=q.symbol,V=q.name,U=N.conventional,_=U.conversionFactor,j=U.unit,H=t.currentBondTmpl.cloneNode(!0);t.currentBonds.appendChild(H);var z=Ne.parseTemplate(H);z.icon.src=Ne.logoPath(W),z.name.textContent=V,z.amt.textContent=Ne.formatCoinValue(O,N),z.ticker.textContent=j,z.name.textContent=V;var G=ft().fiatRatesMap[M];Ne.setVis(z.fiatBox),G&&(z.fiatAmt.textContent=Ne.formatFourSigFigs(O/_*G))}}Ne.setVis(b,t.fiatLockBox)}}}},{key:"acceptTier",value:function(){var e,t=this.page,n=this.selectedAssetID;this.clearErrors();var r=null!==(e=t.tradingTierInput.value)&&void 0!==e?e:"";if(r){var a=parseInt(r);isNaN(a)?this.setTierError(ke(ie)):this.success(n,a)}}},{key:"incrementTier",value:function(e){var t,n=this.page.tradingTierInput;n.value=String(Math.max(1,(parseInt(null!==(t=n.value)&&void 0!==t?t:"")||1)+(e?1:-1))),this.setTier()}},{key:"animate",value:(n=s(f().mark((function e(){var t,n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.form,r=Array.from(t.bondAssets.children),n.style.opacity="0",e.next=8,Ne.animate(350,(function(e){for(var t=0,a=r;t<a.length;t++){var o=a[t];o.style.marginTop="".concat(75*(1-e),"px"),o.style.transform="scale(".concat(e,")")}n.style.opacity=Math.pow(e,4).toFixed(1),n.style.top="".concat(50*(1-e),"px")}),"easeOut");case 8:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"showPrepaidBondForm",value:function(){var e=this.page;Ne.hide(e.assetForm,e.prepaidBondErr),e.prepaidBondCode.value="",Ne.show(e.prepaidBonds)}},{key:"hidePrepaidBondForm",value:function(){var e=this.page;Ne.hide(e.prepaidBonds),Ne.show(e.assetForm)}},{key:"submitPrepaidBond",value:(t=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=this.xc.host,Ne.hide(t.prepaidBondErr),r=t.prepaidBondCode.value){e.next=7;break}return t.prepaidBondErr.textContent=ke(ue),Ne.show(t.prepaidBondErr),e.abrupt("return");case 7:return e.next=9,S("/api/redeemprepaidbond",{host:n,code:r,cert:this.certFile});case 9:if(a=e.sent,ft().checkResponse(a)){e.next=14;break}return t.prepaidBondErr.textContent=a.msg,Ne.show(t.prepaidBondErr),e.abrupt("return");case 14:this.success(pt,a.tier);case 15:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),yr=function(){function e(t,n,r){var a=this;i(this,e),h(this,"form",void 0),h(this,"success",void 0),h(this,"goBack",void 0),h(this,"page",void 0),h(this,"assetID",void 0),h(this,"parentID",void 0),h(this,"xc",void 0),h(this,"bondAsset",void 0),h(this,"progressCache",void 0),h(this,"progressed",void 0),h(this,"funded",void 0),h(this,"bondFeeBuffer",void 0),h(this,"parentAssetSynced",void 0),this.form=t,this.success=n,this.page=Ne.parseTemplate(t),this.assetID=-1,this.progressCache=[],this.progressed=!1,this.funded=!1,Ne.bind(this.page.goBack,"click",(function(){a.assetID=-1,r()})),ft().registerNoteFeeder({walletstate:function(e){return a.reportWalletState(e.wallet)},walletsync:function(e){if(e.assetID===a.assetID){var t=ft().walletMap[e.assetID];a.reportProgress(t.synced,t.syncProgress)}},balance:function(e){return a.reportBalance(e.assetID)}})}return d(e,[{key:"setExchange",value:function(e){this.xc=e}},{key:"setWallet",value:function(e,t,n){this.assetID=e,this.progressCache=[],this.progressed=!1,this.funded=!1,this.bondFeeBuffer=t,this.parentAssetSynced=!1;var r=this.page,a=ft().assets[e],o=a.symbol,s=a.unitInfo,i=a.wallet,c=i.balance,l=i.address,u=i.synced,d=i.syncProgress,h=a.token;this.parentID=null==h?void 0:h.parentID;var p,f=this.bondAsset=this.xc.bondAssets[o],v=function(e,t){Ne.empty(e),e.appendChild(Ne.symbolize(t))},m=ur(Ne.applySelector(this.form,".unit"));try{for(m.s();!(p=m.n()).done;)v(p.value,a)}catch(e){m.e(e)}finally{m.f()}r.logo.src=Ne.logoPath(o),r.depoAddr.textContent=l,Ne.hide(r.syncUncheck,r.syncCheck,r.balUncheck,r.balCheck,r.syncRemainBox,r.bondCostBreakdown),Ne.show(r.balanceBox);var g=2*f.amount*n;if(t>0){Ne.show(r.bondCostBreakdown),r.bondLockNoFees.textContent=Ne.formatCoinValue(g,s),r.bondLockFees.textContent=Ne.formatCoinValue(t,s),g+=t;var y=Math.max(g-c.available+c.reservesDeficit,0);if(r.totalForBond.textContent=Ne.formatCoinValue(y,s),Ne.hide(r.sendEnough),Ne.hide(r.txFeeBox,r.sendEnoughForToken,r.txFeeBalanceBox),Ne.hide(r.sendEnoughWithEst),h){Ne.show(r.txFeeBox,r.sendEnoughForToken,r.txFeeBalanceBox);var b=ft().assets[h.parentID];r.txFee.textContent=Ne.formatCoinValue(t,b.unitInfo),r.parentFees.textContent=Ne.formatCoinValue(t,b.unitInfo),r.tokenFees.textContent=Ne.formatCoinValue(y,s),v(r.txFeeUnit,b),v(r.parentUnit,b),v(r.parentBalUnit,b),r.parentBal.textContent=b.wallet?Ne.formatCoinValue(b.wallet.balance.available,b.unitInfo):"0"}else Ne.show(r.sendEnoughWithEst);r.fee.textContent=Ne.formatCoinValue(g,s)}else Ne.show(r.sendEnough);Ne.show(u?r.syncCheck:d>=1?r.syncSpinner:r.syncUncheck),Ne.show(c.available>=2*f.amount+t?r.balCheck:r.balUncheck),r.progress.textContent=(100*d).toFixed(1),u&&(this.progressed=!0),this.reportBalance(e)}},{key:"reportWalletState",value:function(e){this.progressed&&this.funded||(e.assetID===this.assetID&&this.reportProgress(e.synced,e.syncProgress),this.reportBalance(e.assetID))}},{key:"reportBalance",value:function(e){if(!this.funded&&-1!==this.assetID&&(e===this.assetID||e===this.parentID)){var t=this.page,n=ft().assets[this.assetID],r=n.wallet.balance.available;if(t.balance.textContent=Ne.formatCoinValue(r,n.unitInfo),n.token){var a=ft().assets[n.token.parentID],o=a.wallet.balance.available;if(t.parentBal.textContent=Ne.formatCoinValue(o,a.unitInfo),o<this.bondFeeBuffer)return}r<2*this.bondAsset.amount+this.bondFeeBuffer||(Ne.show(t.balCheck),Ne.hide(t.balUncheck,t.balanceBox,t.sendEnough),this.funded=!0,this.progressed&&this.success())}}},{key:"reportProgress",value:function(e,t){var n=this.page;if(e)return n.progress.textContent="100",Ne.hide(n.syncUncheck,n.syncRemainBox,n.syncSpinner),Ne.show(n.syncCheck),this.progressed=!0,void(this.funded&&this.success());if(1===t?(Ne.hide(n.syncUncheck),Ne.show(n.syncSpinner)):(Ne.hide(n.syncSpinner),Ne.show(n.syncUncheck)),n.progress.textContent=(100*t).toFixed(1),t>=.999)return Ne.hide(n.syncRemaining),Ne.show(n.syncFinishingUp),Ne.show(n.syncRemainBox),void(n.syncFinishingUp.textContent=ke("WALLET_SYNC_FINISHING_UP"));var r=this.progressCache;if(r.push({stamp:(new Date).getTime(),progress:t}),!(r.length<2)){for(;r.length>20;)r.shift();var a=[r[0],r[r.length-1]],o=a[0],s=a[1],i=s.progress-o.progress;if(0!==i){Ne.hide(n.syncFinishingUp),Ne.show(n.syncRemaining),Ne.show(n.syncRemainBox);var c=i/(s.stamp-o.stamp),l=(1-s.progress)/c;n.syncRemain.textContent=Ne.formatDuration(l)}}}}]),e}(),br=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"order",void 0),h(this,"acceleratedRate",void 0),h(this,"earlyAcceleration",void 0),h(this,"currencyUnit",void 0),h(this,"success",void 0),this.form=t,this.success=n;var a=this.page=Ne.idDescendants(t);Ne.bind(a.accelerateSubmit,"click",(function(){r.submit()})),Ne.bind(a.submitEarlyConfirm,"click",(function(){r.sendAccelerateRequest()}))}var t,n,r,a;return d(e,[{key:"displayEarlyAccelerationMsg",value:function(){var e=this.page;this.earlyAcceleration&&(e.recentAccelerationTime.textContent="".concat(Math.floor(this.earlyAcceleration.timePast/60)),e.recentSwapTime.textContent="".concat(Math.floor(this.earlyAcceleration.timePast/60)),this.earlyAcceleration.wasAcceleration?(Ne.show(e.recentAccelerationMsg),Ne.hide(e.recentSwapMsg),e.recentAccelerationTime.textContent="".concat(Math.floor(this.earlyAcceleration.timePast/60))):(Ne.show(e.recentSwapMsg),Ne.hide(e.recentAccelerationMsg),e.recentSwapTime.textContent="".concat(Math.floor(this.earlyAcceleration.timePast/60))),Ne.hide(e.configureAccelerationDiv,e.accelerateErr),Ne.show(e.earlyAccelerationDiv))}},{key:"sendAccelerateRequest",value:(a=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.order,n=this.page,r={orderID:t.id,newRate:this.acceleratedRate},a=ft().loading(n.accelerateMainDiv),e.next=6,S("/api/accelerateorder",r);case 6:o=e.sent,a(),ft().checkResponse(o)?(n.accelerateTxID.textContent=o.txID,Ne.hide(n.accelerateMainDiv,n.preAccelerateErr,n.accelerateErr),Ne.show(n.accelerateMsgDiv,n.accelerateSuccess),this.success()):(n.accelerateErr.textContent=ke(Z,{msg:o.msg}),Ne.hide(n.earlyAccelerationDiv),Ne.show(n.accelerateErr,n.configureAccelerationDiv));case 9:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"submit",value:(r=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.earlyAcceleration?this.displayEarlyAccelerationMsg():this.sendAccelerateRequest();case 1:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"refresh",value:(n=s(f().mark((function e(t){var n,r,a,o,s,i,c=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,this.order=t,e.next=4,S("/api/preaccelerate",t.id);case 4:if(r=e.sent,ft().checkResponse(r)){e.next=10;break}return n.preAccelerateErr.textContent=ke(Z,{msg:r.msg}),Ne.hide(n.accelerateMainDiv,n.accelerateSuccess),Ne.show(n.accelerateMsgDiv,n.preAccelerateErr),e.abrupt("return");case 10:Ne.hide(n.accelerateMsgDiv,n.preAccelerateErr,n.accelerateErr,n.feeEstimateDiv,n.earlyAccelerationDiv),Ne.show(n.accelerateMainDiv,n.accelerateSuccess,n.configureAccelerationDiv),a=r.preAccelerate,this.earlyAcceleration=a.earlyAcceleration,this.currencyUnit=a.suggestedRange.yUnit,n.accelerateAvgFeeRate.textContent="".concat(a.swapRate," ").concat(a.suggestedRange.yUnit),n.accelerateCurrentFeeRate.textContent="".concat(a.suggestedRate," ").concat(a.suggestedRange.yUnit),this.acceleratedRate=a.suggestedRange.start.y,o=function(){},s=function(e,t){c.acceleratedRate=t},i=new kt(a.suggestedRange,a.suggestedRange.start.x,{updated:s,changed:function(){return c.updateAccelerationEstimate()},selected:o,roundY:!0}),Ne.empty(n.sliderContainer),n.sliderContainer.appendChild(i.control),this.updateAccelerationEstimate();case 25:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"updateAccelerationEstimate",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.order,r={orderID:n.id,newRate:this.acceleratedRate},a=ft().loading(t.sliderContainer),e.next=6,S("/api/accelerationestimate",r);case 6:if(o=e.sent,a(),ft().checkResponse(o)){e.next=12;break}return t.accelerateErr.textContent=ke("ORDER_ACCELERATION_FEE_ERR_MSG",{msg:o.msg}),Ne.show(t.accelerateErr),e.abrupt("return");case 12:t.feeRateEstimate.textContent="".concat(this.acceleratedRate," ").concat(this.currencyUnit),n.sell?(s=n.baseID,i=n.baseSymbol):(s=n.quoteID,i=n.quoteSymbol),c=ft().unitInfo(s),t.feeEstimate.textContent="".concat(o.fee/c.conventional.conversionFactor," ").concat(i),Ne.show(t.feeEstimateDiv);case 17:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),xr=function(){function e(t,n,r){var a=this;i(this,e),h(this,"form",void 0),h(this,"success",void 0),h(this,"page",void 0),h(this,"knownExchanges",void 0),h(this,"dexToUpdate",void 0),h(this,"certPicker",void 0),this.form=t,this.success=n;var o=this.page=Ne.parseTemplate(t);this.certPicker=new Fr(t),Ne.bind(o.skipRegistration,"change",(function(){return a.showOrHideSubmitBttn()})),Ne.bind(o.showCustom,"click",(function(){Ne.hide(o.showCustom),Ne.show(o.customBox,o.auth)})),this.knownExchanges=Array.from(o.knownXCs.querySelectorAll(".known-exchange"));var s,c=ur(this.knownExchanges);try{var l=function(){var e=s.value;Ne.bind(e,"click",(function(){var t,n=e.dataset.host,r=ur(a.knownExchanges);try{for(r.s();!(t=r.n()).done;)t.value.classList.remove("selected")}catch(e){r.e(e)}finally{r.f()}return a.checkDEX(n)}))};for(c.s();!(s=c.n()).done;)l()}catch(e){c.e(e)}finally{c.f()}Br(t,o.submit,(function(){return a.checkDEX()})),r&&(Ne.hide(o.addDexHdr,o.skipRegistrationBox),Ne.show(o.updateDexHdr),this.dexToUpdate=r),this.refresh()}var t,n;return d(e,[{key:"refresh",value:function(){var e=this.page;e.addr.value="",this.certPicker.clearCertFile(),Ne.hide(e.err),0===this.knownExchanges.length||this.dexToUpdate?(Ne.show(e.customBox,e.auth),Ne.hide(e.showCustom,e.knownXCs,e.pickServerMsg,e.addCustomMsg)):(Ne.hide(e.customBox),Ne.show(e.showCustom));var t,n=ur(this.knownExchanges);try{for(n.s();!(t=n.n()).done;)t.value.classList.remove("selected")}catch(e){n.e(e)}finally{n.f()}this.showOrHideSubmitBttn()}},{key:"showOrHideSubmitBttn",value:function(){var e=this.page;Ne.setVis(Ne.isDisplayed(e.customBox),e.auth)}},{key:"skipRegistration",value:function(){var e;return null!==(e=this.page.skipRegistration.checked)&&void 0!==e&&e}},{key:"animate",value:(n=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.form,Ne.animate(550,(function(e){t.style.transform="scale(".concat(.9+.1*e,")"),t.style.opacity=String(Math.pow(e,4))}),"easeOut");case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"checkDEX",value:(t=s(f().mark((function e(t){var n,r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,Ne.hide(n.err),""!==(t=t||n.addr.value)){e.next=7;break}return n.err.textContent=ke("EMPTY_DEX_ADDRESS_MSG"),Ne.show(n.err),e.abrupt("return");case 7:return e.next=9,this.certPicker.file();case 9:return r=e.sent,a=this.skipRegistration(),this.dexToUpdate?(o="/api/updatedexhost",s={newHost:t,cert:r,oldHost:this.dexToUpdate}):(o=a?"/api/adddex":"/api/discoveracct",s={addr:t,cert:r}),i=ft().loading(this.form),e.next=15,S(o,s);case 15:if(c=e.sent,i(),ft().checkResponse(c)){e.next=20;break}return String(c.msg).includes("certificate required")?Ne.show(n.needCert):(n.err.textContent=c.msg,Ne.show(n.err)),e.abrupt("return");case 20:return e.next=22,ft().fetchUser();case 22:if(this.dexToUpdate||!(a||c.paid||Object.keys(c.xc.auth.pendingBonds).length>0)){e.next=26;break}return e.next=25,ft().loadPage("markets");case 25:return e.abrupt("return");case 26:this.success(c.xc,r);case 27:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}(),kr=function(){function e(t,n,r){var a=this;i(this,e),h(this,"form",void 0),h(this,"addr",void 0),h(this,"success",void 0),h(this,"page",void 0),this.form=t,this.addr=n,this.success=r;var o=this.page=Ne.parseTemplate(t);o.dexHost.textContent=n,Br(t,o.submit,(function(){return a.checkDEX()}))}var t,n;return d(e,[{key:"animate",value:(n=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.form,Ne.animate(550,(function(e){t.style.transform="scale(".concat(.9+.1*e,")"),t.style.opacity=String(Math.pow(e,4))}),"easeOut");case 2:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"checkDEX",value:(t=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.err),n={addr:this.addr},r=ft().loading(this.form),e.next=6,S("/api/discoveracct",n);case 6:if(a=e.sent,r(),ft().checkResponse(a)){e.next=12;break}return t.err.textContent=a.msg,Ne.show(t.err),e.abrupt("return");case 12:if(!a.paid){e.next=18;break}return e.next=15,ft().fetchUser();case 15:return e.next=17,ft().loadPage("markets");case 17:return e.abrupt("return");case 18:this.success(a.xc);case 19:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),wr=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"success",void 0),h(this,"page",void 0),this.success=n,this.form=t,Br(t,(this.page=Ne.parseTemplate(t)).submit,(function(){r.submit()})),ft().registerNoteFeeder({login:function(e){r.handleLoginNote(e)}})}var t,n;return d(e,[{key:"handleLoginNote",value:function(e){if(""!==e.details){var t=Ne.idel(this.form,"loaderMsg");Ne.show(t),t&&(t.textContent=e.details)}}},{key:"focus",value:function(){this.page.pw.focus()}},{key:"refresh",value:function(){Ne.hide(this.page.errMsg),this.page.pw.value=""}},{key:"submit",value:(n=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.errMsg),""!==(n=t.pw.value||"")){e.next=6;break}return Ne.showFormError(t.errMsg,ke(R)),e.abrupt("return");case 6:return r=ft().loading(this.form),e.next=9,S("/api/login",{pass:n});case 9:if(a=e.sent,r(),t.pw.value="",ft().checkResponse(a)){e.next=15;break}return Ne.showFormError(t.errMsg,a.msg),e.abrupt("return");case 15:return e.next=17,ft().fetchUser();case 17:a.notes=a.notes||[],a.notes.reverse(),a.pokes=a.pokes||[],ft().loggedIn(a.notes,a.pokes),this.success();case 22:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"animate",value:(t=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.form,Ne.animate(550,(function(e){t.style.transform="scale(".concat(.9+.1*e,")"),t.style.opacity=String(Math.pow(e,4))}),"easeOut");case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),Cr=function(){function e(t){var n=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"assetID",void 0),this.form=t;var r=this.page=Ne.idDescendants(t);Ne.cleanTemplates(r.unifiedReceiverTmpl),Ne.bind(r.newDepAddrBttn,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.newDepositAddress();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.copyAddressBtn,"click",(function(){n.copyAddress()}))}var t,n,r;return d(e,[{key:"setAsset",value:(r=s(f().mark((function e(t){var n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.assetID=t,n=this.page,Ne.hide(n.depositErr,n.depositTokenMsgBox),r=ft().assets[t],n.depositLogo.src=Ne.logoPath(r.symbol),a=ft().walletMap[t],n.depositName.textContent=r.unitInfo.conventional.unit,r.token&&(o=ft().assets[r.token.parentID],n.depositTokenParentLogo.src=Ne.logoPath(o.symbol),n.depositTokenParentName.textContent=o.name,Ne.show(n.depositTokenMsgBox)),Ne.setVis(!!(2&a.traits),n.newDepAddrBttnBox),this.setAddress(a.address);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"setAddress",value:function(e){var t=this,n=this.page;if(Ne.hide(n.unifiedReceivers),e.startsWith("unified:")){var r=JSON.parse(e.substring(8));Ne.empty(n.unifiedReceivers),Ne.show(n.unifiedReceivers);for(var o=function(){var e=a(i[s],2),r=e[0],o=e[1],c=n.unifiedReceiverTmpl.cloneNode(!0);n.unifiedReceivers.appendChild(c),c.textContent=r,c.dataset.type=r,"unified"===r&&c.classList.add("selected"),Ne.bind(c,"click",(function(){for(var e=0,a=Array.from(n.unifiedReceivers.children);e<a.length;e++){var s=a[e];s.classList.toggle("selected",s.dataset.type===r)}t.setCentralAddress(o)}))},s=0,i=Object.entries(r);s<i.length;s++)o();e=r.unified}this.setCentralAddress(e)}},{key:"setCentralAddress",value:function(e){var t=this.page;t.depositAddress.textContent=e,t.qrcode.src="/generateqrcode?address=".concat(e)}},{key:"newDepositAddress",value:(n=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.assetID,r=this.form,Ne.hide(t.depositErr),a=ft().loading(r),e.next=5,S("/api/depositaddress",{assetID:n});case 5:if(o=e.sent,a(),ft().checkResponse(o)){e.next=11;break}return t.depositErr.textContent=o.msg,Ne.show(t.depositErr),e.abrupt("return");case 11:ft().walletMap[n].address=o.address,this.setAddress(o.address);case 13:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"copyAddress",value:(t=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,navigator.clipboard.writeText(t.depositAddress.textContent||"").then((function(){Ne.show(t.copyAlert),setTimeout((function(){Ne.hide(t.copyAlert)}),800)})).catch((function(e){console.error("Unable to copy: ",e)}));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),Sr=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"success",void 0),this.form=t,this.success=n,Br(t,(this.page=Ne.idDescendants(t)).resetAppPWSubmitBtn,(function(){return r.resetAppPW()}))}var t;return d(e,[{key:"resetAppPW",value:(t=s(f().mark((function e(){var t,n,r,a,o,s=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=t.newAppPassword.value||"",r=t.confirmNewAppPassword.value,""!==n){e.next=6;break}return Ne.showFormError(t.appPWResetErrMsg,ke(R)),e.abrupt("return");case 6:if(n===r){e.next=9;break}return Ne.showFormError(t.appPWResetErrMsg,ke(N)),e.abrupt("return");case 9:return a=ft().loading(this.form),e.next=12,S("/api/resetapppassword",{newPass:n,seed:t.seedInput.value});case 12:if(o=e.sent,a(),ft().checkResponse(o)){e.next=17;break}return Ne.showFormError(t.appPWResetErrMsg,o.msg),e.abrupt("return");case 17:Ne.isDisplayed(t.appPWResetErrMsg)&&Ne.hide(t.appPWResetErrMsg),t.appPWResetSuccessMsg.textContent=ke("PASSWORD_RESET_SUCCESS_MSG"),Ne.show(t.appPWResetSuccessMsg),setTimeout((function(){return s.success()}),3e3);case 21:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"focus",value:function(){this.page.newAppPassword.focus()}},{key:"refresh",value:function(){var e=this.page;e.newAppPassword.value="",e.confirmNewAppPassword.value="",e.seedInput.value="",Ne.hide(e.appPWResetSuccessMsg,e.appPWResetErrMsg)}}]),e}(),Fr=function(){function e(t){var n=this;i(this,e),h(this,"page",void 0);var r=this.page=Ne.parseTemplate(t);r.selectedCert.textContent=ke(j),Ne.bind(r.certFile,"change",(function(){return n.onCertFileChange()})),Ne.bind(r.removeCert,"click",(function(){return n.clearCertFile()})),Ne.bind(r.addCert,"click",(function(){return r.certFile.click()}))}var t,n;return d(e,[{key:"onCertFileChange",value:(n=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,(n=t.certFile.files)&&n.length){e.next=4;break}return e.abrupt("return");case 4:t.selectedCert.textContent=n[0].name,Ne.show(t.removeCert),Ne.hide(t.addCert);case 7:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"clearCertFile",value:function(){var e=this.page;e.certFile.value="",e.selectedCert.textContent=ke(j),Ne.hide(e.removeCert),Ne.show(e.addCert)}},{key:"file",value:(t=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t=this.page).certFile.value){e.next=7;break}if(!(n=t.certFile.files)||!n.length){e.next=7;break}return e.next=6,n[0].text();case 6:return e.abrupt("return",e.sent);case 7:return e.abrupt("return","");case 8:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),Tr=function(){function e(t,n){var r=this;i(this,e),h(this,"page",void 0),h(this,"success",void 0),h(this,"assetID",void 0),h(this,"parentID",void 0),h(this,"txFee",void 0),h(this,"host",void 0),this.page=Ne.parseTemplate(t),this.success=n,Ne.bind(this.page.submit,"click",(function(){r.approve()}))}var t,n;return d(e,[{key:"setAsset",value:(n=s(f().mark((function e(t,n){var r,a,o,s,i,c,l,u,d,h,p,v,m,g,y;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.assetID=t,this.host=n,a=ft().assets[t],o=this.parentID=null===(r=a.token)||void 0===r?void 0:r.parentID,s=this.page,Ne.show(s.submissionElements),Ne.hide(s.txMsg,s.errMsg,s.addressBox,s.balanceBox,s.addressBox),Ne.empty(s.tokenSymbol),s.tokenSymbol.appendChild(Ne.symbolize(a,!0)),i=ft().exchanges[n].assets[t].version,e.next=12,S("/api/approvetokenfee",{assetID:a.id,version:i,approving:!0});case 12:c=e.sent,ft().checkResponse(c)?(l=ft().assets[o],u=l.unitInfo,d=l.wallet,h=d.address,p=d.balance.available,v=l.name,m=this.txFee=c.txFee,g="".concat(Ne.formatCoinValue(m,u)," ").concat(u.conventional.unit),(y=ft().fiatRatesMap[o])&&(g+=" (".concat(Ne.formatFiatConversion(m,y,u)," USD)")),s.feeEstimate.textContent=g,Ne.show(s.balanceBox),s.balance.textContent=Ne.formatCoinValue(p,u),s.parentTicker.textContent=u.conventional.unit,s.parentName.textContent=v,p<m&&(Ne.show(s.addressBox),s.address.textContent=h)):(s.errMsg.textContent=c.msg,Ne.show(s.errMsg));case 14:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"approve",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.assetID,r=this.host,a=this.success,o=ft().assets[n],e.next=5,S("/api/approvetoken",{assetID:o.id,dexAddr:r});case 5:if(s=e.sent,ft().checkResponse(s)){e.next=10;break}return t.errMsg.textContent=s.msg,Ne.show(t.errMsg),e.abrupt("return");case 10:t.txid.innerText=s.txID,(i=En[o.id])&&i[ft().user.net]&&(t.txid.href=i[ft().user.net](s.txID)),Ne.hide(t.submissionElements,t.balanceBox,t.addressBox),Ne.show(t.txMsg),a&&a();case 16:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"handleBalanceNote",value:function(e){var t=this.page,n=this.parentID,r=this.txFee;e.assetID===n&&(t.balance.textContent=Ne.formatCoinValue(e.balance.available,ft().assets[n].unitInfo),e.balance.available>=r?Ne.hide(t.addressBox):Ne.hide(t.errMsg))}}]),e}(),Dr=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"updated",void 0),h(this,"cexName",void 0),this.form=t,this.updated=n,this.page=Ne.parseTemplate(t),Ne.bind(this.page.cexSubmit,"click",(function(){return r.submit()}))}var t;return d(e,[{key:"setCEX",value:function(e){this.cexName=e,Yn(this.form,e);var t=this.page;Ne.hide(t.cexConfigPrompt,t.cexConnectErrBox,t.cexFormErr),t.cexApiKeyInput.value="",t.cexSecretInput.value="";var n=ft().mmStatus.cexes[e],r=null==n?void 0:n.connectErr;r?(Ne.show(t.cexConnectErrBox),t.cexConnectErr.textContent=r,t.cexApiKeyInput.value=n.config.apiKey,t.cexSecretInput.value=n.config.apiSecret):Ne.show(t.cexConfigPrompt)}},{key:"submit",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=this.cexName,r=this.form,Ne.hide(t.cexFormErr),a=t.cexApiKeyInput.value,o=t.cexSecretInput.value,a&&o){e.next=8;break}return Ne.show(t.cexFormErr),t.cexFormErr.textContent=ke(R),e.abrupt("return");case 8:return s=ft().loading(r),e.prev=9,e.next=12,Xn.updateCEXConfig({name:n,apiKey:a,apiSecret:o});case 12:if(i=e.sent,ft().checkResponse(i)){e.next=15;break}throw i;case 15:this.updated(n,!0),e.next=23;break;case 18:e.prev=18,e.t0=e.catch(9),Ne.show(t.cexFormErr),t.cexFormErr.textContent=ke(H,{msg:null!==(c=e.t0.msg)&&void 0!==c?c:String(e.t0)}),this.updated(n,!1);case 23:return e.prev=23,s(),e.finish(23);case 26:case"end":return e.stop()}}),e,this,[[9,18,23,26]])}))),function(){return t.apply(this,arguments)})}]),e}(),Ir=300;function Ar(e,t){return Rr.apply(this,arguments)}function Rr(){return(Rr=s(f().mark((function e(t,n){var r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=document.body.offsetWidth/2,e.next=3,Ne.animate(Ir,(function(e){t.style.right="".concat(e*r,"px")}),"easeInHard");case 3:return Ne.hide(t),t.style.right="0",n.style.right=String(-r),Ne.show(n),n.querySelector("input")&&Ne.safeSelector(n,"input").focus(),e.next=10,Ne.animate(Ir,(function(e){n.style.right="".concat(e*r-r,"px")}),"easeOutHard");case 10:n.style.right="0";case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Er(e,t){e.successMessage.textContent=t,Ne.show(e.forms,e.checkmarkForm),e.checkmarkForm.style.right="0",e.checkmark.style.fontSize="0px";var n=a(k.isDark()?[223,226,225]:[51,51,51],3),r=n[0],o=n[1],s=n[2],i=16-r,c=163-o,l=16-s;return new We(1200,(function(t){e.checkmark.style.fontSize="".concat(80*t,"px"),e.checkmark.style.color="rgb(".concat(r+t*i,", ").concat(o+t*c,", ").concat(s+t*l,")")}),"easeOutElastic")}function Br(e,t,n){var r=function(e){e.preventDefault&&e.preventDefault(),n(e)};Ne.bind(t,"click",r),Ne.bind(e,"submit",r)}function Pr(e){return Math.floor(e.getTime()/1e3)}function Lr(e){return function(e){return new Date(e.getTime()-60*e.getTimezoneOffset()*1e3)}(e).toISOString().split("T")[0]}function Or(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Mr=function(e){g(k,e);var t,n,r,a,o,c,l,u,p,m,x=(p=k,m=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(e){return!1}}(),function(){var e,t=b(p);if(m){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function k(e,t){var n;i(this,k),h(v(n=x.call(this)),"body",void 0),h(v(n),"data",void 0),h(v(n),"xc",void 0),h(v(n),"page",void 0),h(v(n),"dexAddrForm",void 0),h(v(n),"discoverAcctForm",void 0),h(v(n),"newWalletForm",void 0),h(v(n),"regAssetForm",void 0),h(v(n),"walletWaitForm",void 0),h(v(n),"confirmRegisterForm",void 0),n.body=e,n.data=t;var r=n.page=Ne.idDescendants(e);t.host&&r.dexAddrForm.classList.contains("selected")&&(r.dexAddrForm.classList.remove("selected"),r.discoverAcctForm.classList.add("selected"),r.discoverAcctForm.dataset.host=t.host);var a,o=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Or(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Or(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}(e.querySelectorAll(".form-closer"));try{for(o.s();!(a=o.n()).done;){var c=a.value;c!==r.resetPassFormCloser&&Ne.hide(c)}}catch(e){o.e(e)}finally{o.f()}n.newWalletForm=new pr(r.newWalletForm,(function(e){return n.newWalletCreated(e,n.confirmRegisterForm.tier)}),(function(){return n.animateRegAsset(r.newWalletForm)})),n.dexAddrForm=new xr(r.dexAddrForm,function(){var e=s(f().mark((function e(t,a){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.requestFeepayment(r.dexAddrForm,t,a);case 1:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}());var l=r.discoverAcctForm.dataset.host;l&&(n.discoverAcctForm=new kr(r.discoverAcctForm,l,function(){var e=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.requestFeepayment(r.discoverAcctForm,t,"");case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())),n.regAssetForm=new gr(r.regAssetForm,function(){var e=s(f().mark((function e(t,a){var o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==pt){e.next=3;break}return n.registerDEXSuccess(),e.abrupt("return");case 3:if(o=ft().assets[t],!(s=o.wallet)){e.next=17;break}return i=n.xc.bondAssets[o.symbol],e.next=9,n.getBondsFeeBuffer(t,r.regAssetForm);case 9:if(c=e.sent,n.confirmRegisterForm.setAsset(t,a,c),!(s.synced&&s.balance.available>=2*i.amount+c)){e.next=14;break}return n.animateConfirmForm(r.regAssetForm),e.abrupt("return");case 14:return n.walletWaitForm.setWallet(t,c,a),Ar(r.regAssetForm,r.walletWait),e.abrupt("return");case 17:n.confirmRegisterForm.tier=a,n.newWalletForm.setAsset(t),Ar(r.regAssetForm,r.newWalletForm);case 20:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),n.walletWaitForm=new yr(r.walletWait,(function(){n.animateConfirmForm(r.walletWait)}),(function(){n.animateRegAsset(r.walletWait)})),n.confirmRegisterForm=new mr(r.confirmRegForm,(function(){n.registerDEXSuccess()}),(function(){n.animateRegAsset(r.confirmRegForm)}));var u=Ne.safeSelector(r.forms,":scope > form.selected");switch(u.classList.remove("selected"),u){case r.dexAddrForm:n.dexAddrForm.animate();break;case r.discoverAcctForm:n.discoverAcctForm.animate()}return Ne.show(u),u===r.discoverAcctForm&&n.discoverAcctForm.page.submit.click(),ft().authed&&n.auth(),n}return d(k,[{key:"auth",value:(u=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchUser();case 2:case"end":return e.stop()}}),e)}))),function(){return u.apply(this,arguments)})},{key:"requestFeepayment",value:(l=s(f().mark((function e(t,n,r){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.xc=n,this.confirmRegisterForm.setExchange(n,r),this.walletWaitForm.setExchange(n),this.regAssetForm.setExchange(n,r),this.animateRegAsset(t);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return l.apply(this,arguments)})},{key:"animateRegAsset",value:(c=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:Ne.hide(t),this.regAssetForm.animate(),Ne.show(this.page.regAssetForm);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"animateConfirmForm",value:(o=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.confirmRegisterForm.animate(),Ne.hide(t),Ne.show(this.page.confirmRegForm);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"getBondsFeeBuffer",value:(a=s(f().mark((function e(t,n){var r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=ft().loading(n),e.next=3,S("/api/bondsfeebuffer",{assetID:t});case 3:if(a=e.sent,r(),ft().checkResponse(a)){e.next=7;break}return e.abrupt("return",0);case 7:return e.abrupt("return",a.feeBuffer);case 8:case"end":return e.stop()}}),e)}))),function(e,t){return a.apply(this,arguments)})},{key:"getCertFile",value:(r=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t="",!this.dexAddrForm.page.certFile.value){e.next=7;break}if(!(n=this.dexAddrForm.page.certFile.files)||!n.length){e.next=7;break}return e.next=6,n[0].text();case 6:t=e.sent;case 7:return e.abrupt("return",t);case 8:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"registerDEXSuccess",value:(n=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchUser();case 2:return ft().updateMenuItemsDisplay(),e.next=5,ft().loadPage(this.data.backTo||"markets");case 5:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"newWalletCreated",value:(t=s(f().mark((function e(t,n){var r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.regAssetForm.refresh(),e.next=3,ft().fetchUser();case 3:if(r=e.sent){e.next=6;break}return e.abrupt("return");case 6:return a=this.page,o=r.assets[t],s=o.wallet,i=this.xc.bondAssets[o.symbol].amount,e.next=12,this.getBondsFeeBuffer(t,a.newWalletForm);case 12:if(c=e.sent,this.walletWaitForm.setWallet(t,c,n),this.confirmRegisterForm.setAsset(t,n,c),!(s.synced&&s.balance.available>=2*i+c)){e.next=19;break}return e.next=18,this.animateConfirmForm(a.newWalletForm);case 18:return e.abrupt("return");case 19:return e.next=21,Ar(a.newWalletForm,a.walletWait);case 21:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),k}(lt);var qr=function(e){g(o,e);var t,n,r,a=(n=o,r=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(e){return!1}}(),function(){var e,t=b(n);if(r){var a=b(this).constructor;e=Reflect.construct(t,arguments,a)}else e=t.apply(this,arguments);return y(this,e)});function o(e){var t;i(this,o),h(v(t=a.call(this)),"loginForm",void 0),h(v(t),"page",void 0),h(v(t),"appPassResetForm",void 0);var n=t.page=Ne.idDescendants(e);t.loginForm=new wr(n.loginForm,(function(){t.loggedIn()}));var r=function(){Ne.hide(n.resetAppPWForm),t.loginForm.refresh(),Ne.show(n.loginForm),t.loginForm.focus()};return r(),t.appPassResetForm=new Sr(n.resetAppPWForm,(function(){r()})),Ne.bind(n.forgotPassBtn,"click",(function(){t.appPassResetForm.refresh(),Ar(n.loginForm,n.resetAppPWForm)})),Ne.bind(n.resetPassFormCloser,"click",(function(){r()})),Ne.bind(n.forms,"mousedown",(function(e){!Ne.mouseInElement(e,n.resetAppPWForm)&&Ne.isDisplayed(n.resetAppPWForm)&&r()})),t}return d(o,[{key:"loggedIn",value:(t=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().loadPage("wallets");case 2:case"end":return e.stop()}}),e)}))),function(){return t.apply(this,arguments)})}]),o}(lt);function Nr(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Wr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Wr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Vr=1<<17,Ur=["TICKET_STATUS_UNKNOWN","TICKET_STATUS_UNMINED","TICKET_STATUS_IMMATURE","TICKET_STATUS_LIVE","TICKET_STATUS_VOTED","TICKET_STATUS_MISSED","TICKET_STATUS_EXPIRED","TICKET_STATUS_UNSPENT","TICKET_STATUS_REVOKED"],_r=[2,4,5,8,14,15],jr=[1,3,7,13,16],Hr=[6,9,10,12];function zr(e){return _r.includes(e)?["+","positive-tx"]:jr.includes(e)?["-","negative-tx"]:["",""]}var Gr=["TX_TYPE_UNKNOWN","TX_TYPE_SEND","TX_TYPE_RECEIVE","TX_TYPE_SWAP","TX_TYPE_REDEEM","TX_TYPE_REFUND","TX_TYPE_SPLIT","TX_TYPE_CREATE_BOND","TX_TYPE_REDEEM_BOND","TX_TYPE_APPROVE_TOKEN","TX_TYPE_ACCELERATION","TX_TYPE_SELF_TRANSFER","TX_TYPE_REVOKE_TOKEN_APPROVAL","TX_TYPE_TICKET_PURCHASE","TX_TYPE_TICKET_VOTE","TX_TYPE_TICKET_REVOCATION","TX_TYPE_SWAP_OR_SEND","TX_TYPE_MIX"];function Xr(e){return ke(Gr[e])}var Kr,Qr,Yr=10,Jr=0,Zr=function(e){g(ve,e);var t,n,o,c,l,u,p,m,x,w,C,F,T,D,I,E,B,P,L,O,M,q,N,W,V,U,_,j,z,X,K,Q,Y,J,Z,$,ee,te,ne,re,ae,oe,se,ie,ce,le,ue,de,he,pe,fe=(he=ve,pe=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(e){return!1}}(),function(){var e,t=b(he);if(pe){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function ve(e,t){var n;i(this,ve),h(v(n=fe.call(this)),"body",void 0),h(v(n),"data",void 0),h(v(n),"page",void 0),h(v(n),"assetButtons",void 0),h(v(n),"newWalletForm",void 0),h(v(n),"reconfigForm",void 0),h(v(n),"walletCfgGuide",void 0),h(v(n),"depositAddrForm",void 0),h(v(n),"keyup",void 0),h(v(n),"changeWalletPW",void 0),h(v(n),"displayed",void 0),h(v(n),"animation",void 0),h(v(n),"forms",void 0),h(v(n),"forceReq",void 0),h(v(n),"forceUrl",void 0),h(v(n),"currentForm",void 0),h(v(n),"restoreInfoCard",void 0),h(v(n),"selectedAssetID",void 0),h(v(n),"stakeStatus",void 0),h(v(n),"maxSend",void 0),h(v(n),"unapprovingTokenVersion",void 0),h(v(n),"ticketPage",void 0),h(v(n),"oldestTx",void 0),h(v(n),"currTx",void 0),h(v(n),"mixing",void 0),h(v(n),"mixerToggle",void 0),h(v(n),"stampers",void 0),h(v(n),"secondTicker",void 0),n.body=e,n.data=t;var r=n.page=Ne.idDescendants(e);n.stampers=[],Jr=ft().user.net,n.secondTicker=window.setInterval((function(){!function(){var e,t=Nr(n.stampers);try{for(t.s();!(e=t.n()).done;){var r=e.value;r.dataset.stamp&&(r.textContent=Ne.timeSince(1e3*parseInt(r.dataset.stamp||"")))}}catch(e){t.e(e)}finally{t.f()}}()}),1e4),Ne.cleanTemplates(r.restoreInfoCard,r.connectedIconTmpl,r.disconnectedIconTmpl,r.removeIconTmpl),n.restoreInfoCard=r.restoreInfoCard.cloneNode(!0),Ne.show(r.connectedIconTmpl,r.disconnectedIconTmpl,r.removeIconTmpl),n.forms=Ne.applySelector(r.forms,":scope > form"),r.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){n.closePopups()}))})),Ne.bind(r.cancelForce,"click",(function(){n.closePopups()})),n.selectedAssetID=-1,Ne.cleanTemplates(r.iconSelectTmpl,r.balanceDetailRow,r.recentOrderTmpl,r.vspRowTmpl,r.ticketHistoryRowTmpl,r.votingChoiceTmpl,r.votingAgendaTmpl,r.tspendTmpl,r.tkeyTmpl,r.txHistoryRowTmpl,r.txHistoryDateRowTmpl),Ne.bind(r.createWallet,"click",(function(){return n.showNewWallet(n.selectedAssetID)})),Ne.bind(r.connectBttn,"click",(function(){return n.doConnect(n.selectedAssetID)})),Ne.bind(r.send,"click",(function(){return n.showSendForm(n.selectedAssetID)})),Ne.bind(r.receive,"click",(function(){return n.showDeposit(n.selectedAssetID)})),Ne.bind(r.unlockBttn,"click",(function(){return n.openWallet(n.selectedAssetID)})),Ne.bind(r.lockBttn,"click",(function(){return n.lock(n.selectedAssetID)})),Ne.bind(r.reconfigureBttn,"click",(function(){return n.showReconfig(n.selectedAssetID)})),Ne.bind(r.needsProviderBttn,"click",(function(){return n.showReconfig(n.selectedAssetID)})),Ne.bind(r.rescanWallet,"click",(function(){return n.rescanWallet(n.selectedAssetID)})),Ne.bind(r.earlierTxs,"click",(function(){return n.loadEarlierTxs()})),Ne.bind(r.copyTxIDBtn,"click",(function(){var e;rt((null===(e=n.currTx)||void 0===e?void 0:e.id)||"",r.txDetailsID,r.copyTxIDBtn,"#1e7d11")})),Ne.bind(r.copyRecipientBtn,"click",(function(){var e;rt((null===(e=n.currTx)||void 0===e?void 0:e.recipient)||"",r.txDetailsRecipient,r.copyRecipientBtn,"#1e7d11")})),Ne.bind(r.copyBondIDBtn,"click",(function(){var e,t;rt((null===(e=n.currTx)||void 0===e||null===(t=e.bondInfo)||void 0===t?void 0:t.bondID)||"",r.txDetailsBondID,r.copyBondIDBtn,"#1e7d11")})),Ne.bind(r.copyBondAccountIDBtn,"click",(function(){var e,t;rt((null===(e=n.currTx)||void 0===e||null===(t=e.bondInfo)||void 0===t?void 0:t.accountID)||"",r.txDetailsBondAccountID,r.copyBondAccountIDBtn,"#1e7d11")})),Ne.bind(r.hideMixTxsCheckbox,"change",(function(){n.showTxHistory(n.selectedAssetID)})),n.newWalletForm=new pr(r.newWalletForm,(function(e){var t={assetName:ft().assets[e].name};n.assetUpdated(e,r.newWalletForm,ke("NEW_WALLET_SUCCESS",t)),n.sortAssetButtons(),n.updateTicketBuyer(e),n.updatePrivacy(e)})),n.reconfigForm=new vr(r.reconfigInputs,!1),n.walletCfgGuide=Ne.tmplElement(r.reconfigForm,"walletCfgGuide"),Br(r.sendForm,r.submitSendForm,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.stepSend();case 1:case"end":return e.stop()}}),e)})))),Br(r.vSendForm,r.vSend,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.send();case 1:case"end":return e.stop()}}),e)})))),Br(r.reconfigForm,r.submitReconfig,(function(){return n.reconfig()})),r.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){return n.closePopups()}))})),Ne.bind(r.forms,"mousedown",(function(e){Ne.mouseInElement(e,n.currentForm)||n.closePopups()})),n.mixerToggle=new _e(r.toggleMixer,r.mixingErr,!1,(function(e){return n.updateMixerState(e)})),n.keyup=function(e){"Escape"===e.key&&Ne.isDisplayed(n.page.forms)&&n.closePopups()},Ne.bind(document,"keyup",n.keyup),Ne.bind(r.downloadLogs,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.downloadLogs();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.exportWallet,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.displayExportWalletAuth();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.recoverWallet,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.showRecoverWallet();case 1:case"end":return e.stop()}}),e)})))),Br(r.exportWalletAuth,r.exportWalletAuthSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.exportWalletAuthSubmit();case 1:case"end":return e.stop()}}),e)})))),Br(r.recoverWalletConfirm,r.recoverWalletSubmit,(function(){n.recoverWallet()})),Br(r.confirmForce,r.confirmForceSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.confirmForceSubmit();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.disableWallet,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.showToggleWalletStatus(!0);case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.enableWallet,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.showToggleWalletStatus(!1);case 1:case"end":return e.stop()}}),e)})))),Br(r.toggleWalletStatusConfirm,r.toggleWalletStatusSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.toggleWalletStatus();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.managePeers,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.showManagePeersForm();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.addPeerSubmit,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.submitAddPeer();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.unapproveTokenAllowance,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.showUnapproveTokenAllowanceTableForm();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.unapproveTokenSubmit,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.submitUnapproveTokenAllowance();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.showVSPs,"click",(function(){n.showVSPPicker()})),Ne.bind(r.vspDisplay,"click",(function(){n.showVSPPicker()})),Br(r.vspPicker,r.customVspSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.setCustomVSP();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.purchaseTicketsBttn,"click",(function(){n.showPurchaseTicketsDialog()})),Br(r.purchaseTicketsForm,r.purchaserSubmit,(function(){n.purchaseTickets()})),Ne.bind(r.purchaserInput,"change",(function(){n.purchaserInputChanged()})),Ne.bind(r.ticketHistory,"click",(function(){n.showTicketHistory()})),Ne.bind(r.ticketHistoryNextPage,"click",(function(){n.nextTicketPage()})),Ne.bind(r.ticketHistoryPrevPage,"click",(function(){n.prevTicketPage()})),Ne.bind(r.setVotes,"click",(function(){n.showSetVotesDialog()})),Ne.bind(r.purchaseTicketsErrCloser,"click",(function(){Ne.hide(r.purchaseTicketsErrBox)})),Ne.bind(r.privacyInfoBttn,"click",(function(){n.showForm(r.mixingInfo)})),n.depositAddrForm=new Cr(r.deposit),Ne.bind(r.walletBal,"click",(function(){n.populateMaxSend()})),Ne.bind(r.sendAmt,"input",(function(){var e=ft().assets[n.selectedAssetID].unitInfo,t=tt(r.sendAmt.value),a=e.conventional.conversionFactor;Ne.showFiatValue(r.sendValue,t*a,ft().fiatRatesMap[n.selectedAssetID],e)})),Ne.bind(r.maxSend,"click",(function(){n.populateMaxSend()})),Ne.bind(r.sendAddr,"input",s(f().mark((function e(){var t,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=ft().assets[n.selectedAssetID],r.sendAddr.classList.remove("border-danger","border-success"),a=r.sendAddr.value||"",t&&""!==a){e.next=5;break}return e.abrupt("return");case 5:return e.next=7,n.validateSendAddress(a,t.id);case 7:e.sent?r.sendAddr.classList.add("border-success"):r.sendAddr.classList.add("border-danger");case 9:case"end":return e.stop()}}),e)})))),Ne.bind(r.showChangePW,"click",(function(){n.changeWalletPW=!n.changeWalletPW,n.setPWSettingViz(n.changeWalletPW)})),Ne.bind(r.changeWalletTypeSelect,"change",(function(){n.changeWalletType()})),Ne.bind(r.showChangeType,"click",(function(){Ne.isHidden(r.changeWalletType)?(Ne.show(r.changeWalletType,r.changeTypeHideIcon),Ne.hide(r.changeTypeShowIcon),r.changeTypeMsg.textContent=ke("KEEP_WALLET_TYPE")):n.showReconfig(n.selectedAssetID,{skipAnimation:!0})})),ft().registerNoteFeeder({fiatrateupdate:function(e){n.handleRatesNote(e)},balance:function(e){n.handleBalanceNote(e)},walletstate:function(e){n.handleWalletStateNote(e)},walletconfig:function(e){n.handleWalletStateNote(e)},walletsync:function(e){n.updateSyncAndPeers(e.assetID)},createwallet:function(e){n.handleCreateWalletNote(e)},walletnote:function(e){n.handleCustomWalletNote(e)}});var a=n.sortAssetButtons().id,o=k.fetchLocal(k.selectedAssetLK);return o&&(a=Number(o)),n.setSelectedAsset(a),setInterval((function(){var e,t=Nr(n.page.txHistoryTableBody.children);try{for(t.s();!(e=t.n()).done;){var r=e.value,a=Ne.tmplElement(r,"age");a.textContent=Ne.timeSince(parseInt(a.dataset.timestamp))}}catch(e){t.e(e)}finally{t.f()}}),5e3),n}return d(ve,[{key:"closePopups",value:function(){Ne.hide(this.page.forms),this.currTx=void 0,this.animation&&this.animation.stop()}},{key:"safePost",value:(de=s(f().mark((function e(t,n){var r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.selectedAssetID,e.next=3,S(t,n);case 3:if(a=e.sent,r===this.selectedAssetID){e.next=6;break}throw Error("asset changed during request. aborting");case 6:return e.abrupt("return",a);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return de.apply(this,arguments)})},{key:"stepSend",value:(ue=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,k,w,C;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.vSendErr,t.sendErr,t.vSendEstimates,t.txFeeNotAvailable),n=parseInt(t.sendForm.dataset.assetID||""),r=ft().assets[n].token,a=t.subtractCheckBox.checked||!1,o=ft().unitInfo(n).conventional.conversionFactor,s=Math.round(tt(t.sendAmt.value,0)*o),""!==(i=t.sendAddr.value||"")){e.next=10;break}return e.abrupt("return",Ne.showFormError(t.sendErr,ke(G,{address:i})));case 10:if(c=ft().assets[n],l=c.wallet,u=c.unitInfo,d=c.symbol,h=0,!(512&l.traits)){e.next=36;break}return p={addr:t.sendAddr.value,assetID:n,subtract:a,value:s},v=ft().loading(t.sendForm),e.next=17,S("/api/txfee",p);case 17:if(m=e.sent,v(),ft().checkResponse(m)){e.next=29;break}return t.txFeeNotAvailable.dataset.tooltip=ke("TXFEE_ERR_MSG",{err:m.msg}),Ne.show(t.txFeeNotAvailable),e.next=24,this.validateSendAddress(i,n);case 24:if(e.sent){e.next=27;break}return e.abrupt("return",Ne.showFormError(t.sendErr,ke(G,{address:i||""})));case 27:e.next=34;break;case 29:if(!m.ok){e.next=34;break}if(m.validaddress){e.next=32;break}return e.abrupt("return",Ne.showFormError(t.sendErr,ke(G,{address:t.sendAddr.value||""})));case 32:h=m.txfee,Ne.show(t.vSendEstimates);case 34:e.next=41;break;case 36:return e.next=38,this.validateSendAddress(i,n);case 38:if(e.sent){e.next=41;break}return e.abrupt("return",Ne.showFormError(t.sendErr,ke(G,{address:i||""})));case 41:return t.vSendSymbol.textContent=d.toUpperCase(),t.vSendLogo.src=Ne.logoPath(d),r?(g=ft().assets[r.parentID],y=g.unitInfo,b=g.symbol,t.vSendFee.textContent=Ne.formatFullPrecision(h,y)+" "+b):t.vSendFee.textContent=Ne.formatFullPrecision(h,u),x=ft().fiatRatesMap[n],Ne.showFiatValue(t.vSendFeeFiat,h,x,u),t.vSendDestinationAmt.textContent=Ne.formatFullPrecision(s-h,u),t.vTotalSend.textContent=Ne.formatFullPrecision(s,u),Ne.showFiatValue(t.vTotalSendFiat,s,x,u),t.vSendAddr.textContent=t.sendAddr.value||"",k=l.balance.available-s,t.balanceAfterSend.textContent=Ne.formatFullPrecision(k,u),Ne.showFiatValue(t.balanceAfterSendFiat,k,x,u),Ne.show(t.approxSign),a||(Ne.hide(t.approxSign),t.vSendDestinationAmt.textContent=Ne.formatFullPrecision(s,u),w=s,r||(w+=h),t.vTotalSend.textContent=Ne.formatFullPrecision(w,u),Ne.showFiatValue(t.vTotalSendFiat,w,x,u),C=l.balance.available-s,r||(C-=h),C<=0?(t.balanceAfterSend.textContent=Ne.formatFullPrecision(0,u),Ne.showFiatValue(t.balanceAfterSendFiat,0,x,u)):(t.balanceAfterSend.textContent=Ne.formatFullPrecision(C,u),Ne.showFiatValue(t.balanceAfterSendFiat,C,x,u))),Ne.hide(t.sendForm),e.next=58,this.showForm(t.vSendForm);case 58:case"end":return e.stop()}}),e,this)}))),function(){return ue.apply(this,arguments)})},{key:"cancelSend",value:(le=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.vSendForm,t.sendErr),e.next=4,this.showForm(t.sendForm);case 4:case"end":return e.stop()}}),e,this)}))),function(){return le.apply(this,arguments)})},{key:"validateSendAddress",value:(ce=s(f().mark((function e(t,n){var r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/validateaddress",{addr:t,assetID:n});case 2:return r=e.sent,e.abrupt("return",ft().checkResponse(r));case 4:case"end":return e.stop()}}),e)}))),function(e,t){return ce.apply(this,arguments)})},{key:"setPWSettingViz",value:function(e){var t=this.page;if(e)return Ne.hide(t.showIcon),Ne.show(t.hideIcon,t.changePW),void(t.switchPWMsg.textContent=ke("KEEP_WALLET_PASS"));Ne.hide(t.hideIcon,t.changePW),Ne.show(t.showIcon),t.switchPWMsg.textContent=ke("NEW_WALLET_PASS")}},{key:"assetVersionUsedByDEXes",value:function(){var e=this.selectedAssetID,t={},n=ft().exchanges;for(var r in n){var a=n[r],o=a.assets[e];o&&(t[o.version]||(t[o.version]=[]),t[o.version].push(a.host))}return t}},{key:"submitUnapproveTokenAllowance",value:(ie=s(f().mark((function e(){var t,n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,e.next=4,S("/api/unapprovetoken",{assetID:this.selectedAssetID,version:this.unapprovingTokenVersion});case 4:if(n=e.sent,ft().checkResponse(n)){e.next=9;break}return t.unapproveTokenErr.textContent=n.msg,Ne.show(t.unapproveTokenErr),e.abrupt("return");case 9:(r=En[this.selectedAssetID])&&r[Jr]&&(t.unapproveTokenTxID.href=r[Jr](n.txID)),t.unapproveTokenTxID.textContent=n.txID,Ne.hide(t.unapproveTokenSubmissionElements,t.unapproveTokenErr),Ne.show(t.unapproveTokenTxMsg);case 14:case"end":return e.stop()}}),e,this)}))),function(){return ie.apply(this,arguments)})},{key:"showUnapproveTokenAllowanceForm",value:(se=s(f().mark((function e(t){var n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,this.unapprovingTokenVersion=t,Ne.show(n.unapproveTokenSubmissionElements),Ne.hide(n.unapproveTokenTxMsg,n.unapproveTokenErr),(r=ft().assets[this.selectedAssetID])&&r.token){e.next=7;break}return e.abrupt("return");case 7:if(a=ft().assets[r.token.parentID]){e.next=10;break}return e.abrupt("return");case 10:return Ne.empty(n.tokenAllowanceRemoveSymbol),n.tokenAllowanceRemoveSymbol.appendChild(Ne.symbolize(r,!0)),n.tokenAllowanceRemoveVersion.textContent=t.toString(),e.next=16,S("/api/approvetokenfee",{assetID:this.selectedAssetID,version:t,approving:!1});case 16:o=e.sent,ft().checkResponse(o)?(s="".concat(Ne.formatCoinValue(o.txFee,a.unitInfo)," ").concat(a.unitInfo.conventional.unit),(i=ft().fiatRatesMap[a.id])&&(s+=" (".concat(Ne.formatFiatConversion(o.txFee,i,a.unitInfo)," USD)")),n.unapprovalFeeEstimate.textContent=s):(n.unapproveTokenErr.textContent=o.msg,Ne.show(n.unapproveTokenErr)),this.showForm(n.unapproveTokenForm);case 19:case"end":return e.stop()}}),e,this)}))),function(e){return se.apply(this,arguments)})},{key:"showUnapproveTokenAllowanceTableForm",value:(oe=s(f().mark((function e(){var t,n,r,a,o,s,i=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,(n=ft().assets[this.selectedAssetID])&&n.wallet&&n.wallet.approved){e.next=4;break}return e.abrupt("return");case 4:for(;t.tokenVersionBody.firstChild;)t.tokenVersionBody.removeChild(t.tokenVersionBody.firstChild);Ne.empty(t.tokenVersionTableAssetSymbol),t.tokenVersionTableAssetSymbol.appendChild(Ne.symbolize(n,!0)),r=this.assetVersionUsedByDEXes(),a=!1,o=f().mark((function e(o){var s,c,l,u;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==(s=n.wallet.approved[o])&&s===dt.Approved){e.next=3;break}return e.abrupt("return","continue");case 3:a=!0,c=t.tokenVersionRow.cloneNode(!0),(l=Ne.parseTemplate(c)).version.textContent=o.toString(),r[o]&&(l.usedBy.textContent=r[o].join(", ")),u=i.page.removeIconTmpl.cloneNode(!0),Ne.bind(u,"click",(function(){i.showUnapproveTokenAllowanceForm(o)})),l.remove.appendChild(u),t.tokenVersionBody.appendChild(c);case 12:case"end":return e.stop()}}),e)})),s=0;case 11:if(!(s<=n.wallet.version)){e.next=19;break}return e.delegateYield(o(s),"t0",13);case 13:if("continue"!==e.t0){e.next=16;break}return e.abrupt("continue",16);case 16:s++,e.next=11;break;case 19:Ne.setVis(a,t.tokenVersionTable),Ne.setVis(!a,t.tokenVersionNone),this.showForm(t.unapproveTokenTableForm);case 22:case"end":return e.stop()}}),e,this)}))),function(){return oe.apply(this,arguments)})},{key:"updateWalletPeersTable",value:(ae=s(f().mark((function e(){var t,n,r,a,o,i,c=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.peerSpinner),e.next=4,S("/api/getwalletpeers",{assetID:this.selectedAssetID});case 4:if(n=e.sent,ft().checkResponse(n)){e.next=9;break}return t.managePeersErr.textContent=n.msg,Ne.show(t.managePeersErr),e.abrupt("return");case 9:for(;t.peersTableBody.firstChild;)t.peersTableBody.removeChild(t.peersTableBody.firstChild);(r=n.peers||[]).sort((function(e,t){return e.source-t.source})),a=ke("DEFAULT"),o=ke("ADDED"),i=ke("DISCOVERED"),r.forEach((function(e){var n,r=t.peerTableRow.cloneNode(!0),l=Ne.parseTemplate(r);switch(l.addr.textContent=e.addr,e.source){case ht.WalletDefault:l.source.textContent=a;break;case ht.UserAdded:l.source.textContent=o;break;case ht.Discovered:l.source.textContent=i}if(n=e.connected?c.page.connectedIconTmpl.cloneNode(!0):c.page.disconnectedIconTmpl.cloneNode(!0),l.connected.appendChild(n),e.source===ht.UserAdded){var u=c.page.removeIconTmpl.cloneNode(!0);Ne.bind(u,"click",s(f().mark((function n(){var r;return f().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return Ne.hide(t.managePeersErr),n.next=3,S("/api/removewalletpeer",{assetID:c.selectedAssetID,addr:e.addr});case 3:if(r=n.sent,ft().checkResponse(r)){n.next=8;break}return t.managePeersErr.textContent=r.msg,Ne.show(t.managePeersErr),n.abrupt("return");case 8:c.spinUntilPeersUpdate();case 9:case"end":return n.stop()}}),n)})))),l.remove.appendChild(u)}t.peersTableBody.appendChild(r)}));case 16:case"end":return e.stop()}}),e,this)}))),function(){return ae.apply(this,arguments)})},{key:"showManagePeersForm",value:(re=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,e.next=3,this.updateWalletPeersTable();case 3:Ne.hide(t.managePeersErr),this.showForm(t.managePeersForm);case 5:case"end":return e.stop()}}),e,this)}))),function(){return re.apply(this,arguments)})},{key:"submitAddPeer",value:(ne=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.managePeersErr),e.next=4,S("/api/addwalletpeer",{assetID:this.selectedAssetID,addr:t.addPeerInput.value});case 4:if(n=e.sent,ft().checkResponse(n)){e.next=9;break}return t.managePeersErr.textContent=n.msg,Ne.show(t.managePeersErr),e.abrupt("return");case 9:this.spinUntilPeersUpdate(),t.addPeerInput.value="";case 11:case"end":return e.stop()}}),e,this)}))),function(){return ne.apply(this,arguments)})},{key:"spinUntilPeersUpdate",value:(te=s(f().mark((function e(){var t,n=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,Ne.show(t.peerSpinner),setTimeout((function(){Ne.isDisplayed(t.peerSpinner)&&n.updateWalletPeersTable()}),1e4);case 3:case"end":return e.stop()}}),e,this)}))),function(){return te.apply(this,arguments)})},{key:"showToggleWalletStatus",value:function(e){var t=this.page;Ne.hide(t.toggleWalletStatusErr,t.walletStatusDisable,t.disableWalletMsg,t.walletStatusEnable,t.enableWalletMsg),e?Ne.show(t.walletStatusDisable,t.disableWalletMsg):Ne.show(t.walletStatusEnable,t.enableWalletMsg),this.showForm(t.toggleWalletStatusConfirm)}},{key:"toggleWalletStatus",value:(ee=s(f().mark((function e(){var t,n,r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.toggleWalletStatusErr),n=ft().assets[this.selectedAssetID],r=!n.wallet.disabled,a={assetID:this.selectedAssetID,disable:r},o={assetName:n.name},s=ft().loading(t.toggleWalletStatusConfirm),e.next=10,S("/api/togglewalletstatus",a);case 10:if(i=e.sent,s(),ft().checkResponse(i)){e.next=16;break}return i.code===A.activeOrdersErr?t.toggleWalletStatusErr.textContent=ke("ACTIVE_ORDERS_ERR_MSG",o):t.toggleWalletStatusErr.textContent=i.msg,Ne.show(t.toggleWalletStatusErr),e.abrupt("return");case 16:c=ke("WALLET_DISABLED",o),r||(c=ke("WALLET_ENABLED",o)),this.assetUpdated(this.selectedAssetID,t.toggleWalletStatusConfirm,c);case 19:case"end":return e.stop()}}),e,this)}))),function(){return ee.apply(this,arguments)})},{key:"showBox",value:($=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.style.opacity="0",Ne.show(t),n&&n.focus(),e.next=5,Ne.animate(300,(function(e){t.style.opacity="".concat(e)}),"easeOut");case 5:t.style.opacity="1",this.displayed=t;case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return $.apply(this,arguments)})},{key:"showForm",value:(Z=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,this.currentForm=t,this.forms.forEach((function(e){return Ne.hide(e)})),t.style.right="10000px",Ne.show(n.forms,t),r=(n.forms.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(300,(function(e){t.style.right="".concat((1-e)*r,"px")}),"easeOutHard");case 8:t.style.right="0";case 9:case"end":return e.stop()}}),e,this)}))),function(e){return Z.apply(this,arguments)})},{key:"showSuccess",value:(J=s(f().mark((function e(t){var n=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.forms.forEach((function(e){return Ne.hide(e)})),this.currentForm=this.page.checkmarkForm,this.animation=Er(this.page,t),e.next=5,this.animation.wait();case 5:this.animation=new We(1500,(function(){}),"",(function(){n.currentForm===n.page.checkmarkForm&&n.closePopups()}));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return J.apply(this,arguments)})},{key:"showNewWallet",value:(Y=s(f().mark((function e(t){var n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,r=n.newWalletForm,this.newWalletForm.setAsset(t),a=this.newWalletForm.loadDefaults(),e.next=6,this.showForm(r);case 6:return e.next=8,a;case 8:case"end":return e.stop()}}),e,this)}))),function(e){return Y.apply(this,arguments)})},{key:"sortAssetButtons",value:function(){var e=this,t=this.page;this.assetButtons={},Ne.empty(t.assetSelect);var n=r(Object.values(ft().assets));n.sort((function(e,t){if(e.wallet&&!t.wallet)return-1;if(!e.wallet&&t.wallet)return 1;if(!e.wallet&&!t.wallet)return"dcr"===e.symbol?-1:1;var n=[e.wallet.balance,t.wallet.balance],r=n[0],a=n[1],o=r.available+r.immature+r.locked,s=a.available+a.immature+a.locked;if(0===o&&0===s)return e.symbol.localeCompare(t.symbol);if(0===o)return 1;if(0===o)return-1;var i=[ft().fiatRatesMap[e.id],ft().fiatRatesMap[t.id]],c=i[0],l=i[1];return c&&!l?-1:!c&&l?1:l*s-c*o}));var a,o=Nr(n);try{var s=function(){var n=a.value,r=t.iconSelectTmpl.cloneNode(!0);t.assetSelect.appendChild(r);var o=Ne.parseTemplate(r);e.assetButtons[n.id]={tmpl:o,bttn:r},e.updateAssetButton(n.id),Ne.bind(r,"click",(function(){e.setSelectedAsset(n.id),k.storeLocal(k.selectedAssetLK,String(n.id))}))};for(o.s();!(a=o.n()).done;)s()}catch(e){o.e(e)}finally{o.f()}return t.assetSelect.classList.remove("invisible"),n[0]}},{key:"updateAssetButton",value:function(e){var t,n=ft().assets[e],r=this.assetButtons[e],o=r.bttn,s=r.tmpl;Ne.hide(s.fiatBox,s.noWallet),o.classList.add("nowallet"),(t=s.img).src||(t.src=Ne.logoPath(n.symbol));var i=n.symbol.split(".");if(2===i.length){var c,l=i[1];s.parentImg.classList.remove("d-hide"),(c=s.parentImg).src||(c.src=Ne.logoPath(l))}if(this.selectedAssetID===e&&o.classList.add("selected"),s.name.textContent=n.name,n.wallet){o.classList.remove("nowallet");var u=n.wallet.balance,d=n.unitInfo,h=u.available+u.locked+u.immature,p=a(Ne.formatBestUnitsFourSigFigs(h,d),2),f=p[0],v=p[1];s.balance.textContent=f,s.unit.textContent=v,Ne.show(s.balanceBox);var m=ft().fiatRatesMap[n.id];m&&(Ne.show(s.fiatBox),s.fiat.textContent=Ne.formatFourSigFigs(h/d.conventional.conversionFactor*m))}else Ne.show(s.noWallet)}},{key:"setSelectedAsset",value:(Q=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.page.assetSelect,r=Nr(n.children);try{for(r.s();!(a=r.n()).done;)a.value.classList.remove("selected")}catch(e){r.e(e)}finally{r.f()}this.assetButtons[t].bttn.classList.add("selected"),this.selectedAssetID=t,this.page.hideMixTxsCheckbox.checked=!0,this.updateDisplayedAsset(t),this.showAvailableMarkets(t),o=this.showRecentActivity(t),s=this.showTxHistory(t),i=this.updateTicketBuyer(t),c=this.updatePrivacy(t),l=0,u=[o,s,i,c];case 13:if(!(l<u.length)){e.next=20;break}return d=u[l],e.next=17,d;case 17:l++,e.next=13;break;case 20:case"end":return e.stop()}}),e,this)}))),function(e){return Q.apply(this,arguments)})},{key:"updateDisplayedAsset",value:function(e){if(e===this.selectedAssetID){var t=ft().assets[e],n=t.symbol,r=t.wallet,a=t.name,o=t.token,s=t.unitInfo,i=this.page,c=this.body;if(Ne.setText(c,"[data-asset-name]",a),Ne.setText(c,"[data-ticker]",s.conventional.unit),i.assetLogo.src=Ne.logoPath(n),Ne.hide(i.balanceBox,i.fiatBalanceBox,i.createWallet,i.walletDetails,i.sendReceive,i.connectBttnBox,i.statusLocked,i.statusReady,i.statusOff,i.unlockBttnBox,i.lockBttnBox,i.connectBttnBox,i.peerCountBox,i.syncProgressBox,i.statusDisabled,i.tokenInfoBox,i.needsProviderBox,i.feeStateBox,i.txSyncBox,i.txProgress,i.txFindingAddrs),this.checkNeedsProvider(e),o){var l=ft().assets[o.parentID];i.tokenParentLogo.src=Ne.logoPath(l.symbol),i.tokenParentName.textContent=l.name,i.contractAddress.textContent=o.contractAddress,Ne.show(i.tokenInfoBox)}if(r){this.updateDisplayedAssetBalance();var u=r.feeState,d=r.running,h=r.disabled,p=r.type,f=ft().walletDefinition(e,p);i.walletType.textContent=f.tab,u&&this.updateFeeState(u),h?Ne.show(i.statusDisabled):d?this.updateSyncAndPeers(r.assetID):Ne.show(i.statusOff,i.connectBttnBox)}else Ne.show(i.createWallet);i.walletDetailsBox.classList.remove("invisible")}}},{key:"updateSyncAndPeers",value:function(e){var t=this.page;if(e===this.selectedAssetID){var n=ft().walletMap[e],r=n.peerCount,a=n.syncProgress,o=n.syncStatus,s=n.encrypted,i=n.open;if(n.running&&(Ne.show(t.sendReceive,t.peerCountBox,t.syncProgressBox),t.peerCount.textContent=String(r),t.syncProgress.textContent="".concat((100*a).toFixed(1),"%"),i?(Ne.show(t.statusReady),!ft().haveActiveOrders(e)&&s&&Ne.show(t.lockBttnBox)):Ne.show(t.statusLocked,t.unlockBttnBox),Ne.setVis(void 0!==o.txs,t.txSyncBox),void 0!==o.txs))if(Ne.hide(t.txProgress,t.txFindingAddrs),0===o.txs&&o.blocks>=o.targetHeight)Ne.show(t.txFindingAddrs);else{Ne.show(t.txProgress);var c=o.txs/o.targetHeight;t.txProgress.textContent="".concat((100*c).toFixed(1),"%")}}}},{key:"updateFeeState",value:function(e){var t=this.page,n=this.selectedAssetID;Ne.hide(t.feeStateBox);var r=ft().assets[n],a=r.unitInfo,o=r.token,s=ft().fiatRatesMap[n];if(s){var i=o?o.parentID:n,c=ft().fiatRatesMap[i];if(!o||c){Ne.show(t.feeStateBox);var l=o?ft().assets[o.parentID].unitInfo:a;Ne.formatBestRateElement(t.feeStateNetRate,i,e.rate,l),Ne.formatBestValueElement(t.feeStateSendFees,i,e.send,l),Ne.formatBestValueElement(t.feeStateSwapFees,i,e.swap,l),Ne.formatBestValueElement(t.feeStateRedeemFees,i,e.redeem,l),t.feeStateXcRate.textContent=Ne.formatFourSigFigs(s);var u=e.send/l.conventional.conversionFactor*c;t.feeStateSendFiat.textContent=Ne.formatFourSigFigs(u);var d=e.swap/l.conventional.conversionFactor*c;t.feeStateSwapFiat.textContent=Ne.formatFourSigFigs(d);var h=e.redeem/l.conventional.conversionFactor*c;t.feeStateRedeemFiat.textContent=Ne.formatFourSigFigs(h),Ne.show(t.feeStateBox)}}}},{key:"checkNeedsProvider",value:(K=s(f().mark((function e(t){var n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().needsCustomProvider(t);case 2:if(n=e.sent,r=this.page,a=r.needsProviderBox,o=r.needsProviderBttn,Ne.setVis(n,a),n){e.next=7;break}return e.abrupt("return");case 7:Ne.blink(o);case 8:case"end":return e.stop()}}),e,this)}))),function(e){return K.apply(this,arguments)})},{key:"updateTicketBuyer",value:(X=s(f().mark((function e(t){var n,r,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.ticketPage={number:0,history:[],scanned:!1},r=ft().assets[t],a=r.wallet,o=r.unitInfo,s=this.page,Ne.hide(s.stakingBox,s.pickVSP,s.stakingSummary,s.stakingErr,s.vspDisplayBox,s.ticketPriceBox,s.purchaseTicketsBox,s.stakingRpcSpvMsg,s.ticketsDisabled),null!=a&&a.running&&32768&a.traits){e.next=6;break}return e.abrupt("return");case 6:return Ne.show(s.stakingBox),i=ft().loading(s.stakingBox),e.next=10,this.safePost("/api/stakestatus",t);case 10:if(c=e.sent,i(),ft().checkResponse(c)){e.next=19;break}if(!c.msg.includes("disconnected from consensus RPC")){e.next=16;break}return Ne.show(s.stakingRpcSpvMsg),e.abrupt("return");case 16:return Ne.show(s.stakingErr),s.stakingErr.textContent=c.msg,e.abrupt("return");case 19:if(Ne.show(s.stakingSummary,s.ticketPriceBox),l=c.status,this.stakeStatus=l,s.stakingAgendaCount.textContent=String(l.stances.agendas.length),s.stakingTspendCount.textContent=String(l.stances.tspends.length),s.purchaserCurrentPrice.textContent=Ne.formatFourSigFigs(l.ticketPrice/o.conventional.conversionFactor),s.purchaserBal.textContent=Ne.formatCoinValue(a.balance.available,o),this.updateTicketStats(l.stats,o,l.ticketPrice,l.votingSubsidy),!(null===(n=ft().extensionWallet(this.selectedAssetID))||void 0===n?void 0:n.disableStaking)){e.next=33;break}return Ne.hide(s.setVotes,s.showVSPs),Ne.show(s.ticketsDisabled),s.extensionModeAppName.textContent=ft().user.extensionModeConfig.name,e.abrupt("return");case 33:this.setVSPViz(l.vsp);case 34:case"end":return e.stop()}}),e,this)}))),function(e){return X.apply(this,arguments)})},{key:"setVSPViz",value:function(e){var t=this.page,n=this.stakeStatus;if(Ne.hide(t.vspDisplayBox),e)return Ne.show(t.vspDisplayBox,t.purchaseTicketsBox),Ne.hide(t.pickVSP),void(t.vspURL.textContent=e);Ne.setVis(!n.isRPC,t.pickVSP),Ne.setVis(n.isRPC,t.purchaseTicketsBox)}},{key:"updateTicketStats",value:function(e,t,n,r){var a=this.page,o=this.stakeStatus;o.stats=e,n&&(o.ticketPrice=n),r&&(o.votingSubsidy=r);var s=o.tickets.filter((function(e){return e.status<=3&&e.status>=1})).length;a.stakingTicketCount.textContent=String(s),a.immatureTicketCount.textContent=String(e.mempool),Ne.setVis(e.mempool>0,a.immatureTicketCountBox),a.queuedTicketCount.textContent=String(e.queued),a.formQueuedTix.textContent=String(e.queued),Ne.setVis(e.queued>0,a.formQueueTixBox,a.queuedTicketCountBox),a.totalTicketCount.textContent=String(e.ticketCount),a.totalTicketRewards.textContent=Ne.formatFourSigFigs(e.totalRewards/t.conventional.conversionFactor),a.totalTicketVotes.textContent=String(e.votes),n&&(a.ticketPrice.textContent=Ne.formatFourSigFigs(n/t.conventional.conversionFactor)),r&&(a.votingSubsidy.textContent=Ne.formatFourSigFigs(r/t.conventional.conversionFactor))}},{key:"showVSPPicker",value:(z=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.selectedAssetID,n=this.page,this.showForm(n.vspPicker),Ne.empty(n.vspPickerList),Ne.hide(n.stakingErr),r=ft().loading(n.vspPicker),e.next=8,this.safePost("/api/listvsps",t);case 8:if(a=e.sent,r(),ft().checkResponse(a)){e.next=14;break}return Ne.show(n.stakingErr),n.stakingErr.textContent=a.msg,e.abrupt("return");case 14:o=a.vsps,s=Nr(o),e.prev=16,c=f().mark((function e(){var r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=i.value,a=n.vspRowTmpl.cloneNode(!0),n.vspPickerList.appendChild(a),(o=Ne.parseTemplate(a)).url.textContent=r.url,o.feeRate.textContent=r.feePercentage.toFixed(2),o.voting.textContent=String(r.voting),Ne.bind(a,"click",(function(){Ne.hide(n.stakingErr),l.setVSP(t,r)}));case 8:case"end":return e.stop()}}),e)})),s.s();case 19:if((i=s.n()).done){e.next=23;break}return e.delegateYield(c(),"t0",21);case 21:e.next=19;break;case 23:e.next=28;break;case 25:e.prev=25,e.t1=e.catch(16),s.e(e.t1);case 28:return e.prev=28,s.f(),e.finish(28);case 31:case"end":return e.stop()}}),e,this,[[16,25,28,31]])}))),function(){return z.apply(this,arguments)})},{key:"showPurchaseTicketsDialog",value:function(){var e=this.page;e.purchaserInput.value="",Ne.hide(e.purchaserErr),this.showForm(this.page.purchaseTicketsForm),e.purchaserInput.focus()}},{key:"purchaserInputChanged",value:function(){var e=this.page,t=parseInt(e.purchaserInput.value||"0");e.purchaserInput.value=t<=1?"1":String(t)}},{key:"purchaseTickets",value:(j=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=this.selectedAssetID,!((r=parseInt(t.purchaserInput.value||"0"))<1)){e.next=4;break}return e.abrupt("return");case 4:return a=ft().loading(t.purchaseTicketsForm),e.next=7,this.safePost("/api/purchasetickets",{assetID:n,n:r});case 7:if(o=e.sent,a(),ft().checkResponse(o)){e.next=13;break}return t.purchaserErr.textContent=o.msg,Ne.show(t.purchaserErr),e.abrupt("return");case 13:this.showSuccess(ke("TICKETS_PURCHASED",{n:r.toLocaleString(Ne.languages())}));case 14:case"end":return e.stop()}}),e,this)}))),function(){return j.apply(this,arguments)})},{key:"processTicketPurchaseUpdate",value:function(e){var t=this.stakeStatus,n=this.selectedAssetID,r=this.page,a=e.assetID,o=e.payload,s=o.err,i=o.remaining,c=o.tickets,l=o.stats;if(a===n){if(s)return Ne.show(r.purchaseTicketsErrBox),void(r.purchaseTicketsErr.textContent=s);c&&(t.tickets=c.concat(t.tickets)),l&&this.updateTicketStats(l,ft().assets[a].unitInfo),t.stats.queued=i,r.queuedTicketCount.textContent=String(i),r.formQueuedTix.textContent=String(i),Ne.setVis(i>0,r.queuedTicketCountBox)}}},{key:"setVSP",value:(_=s(f().mark((function e(t,n){var r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.closePopups(),r=this.page,a=ft().loading(r.stakingBox),e.next=5,this.safePost("/api/setvsp",{assetID:t,url:n.url});case 5:if(o=e.sent,a(),ft().checkResponse(o)){e.next=11;break}return Ne.show(r.stakingErr),r.stakingErr.textContent=o.msg,e.abrupt("return");case 11:this.setVSPViz(n.url);case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return _.apply(this,arguments)})},{key:"setCustomVSP",value:function(){var e=this.selectedAssetID,t={url:this.page.customVspUrl.value};this.setVSP(e,t)}},{key:"pageOfTickets",value:function(e){var t=this.stakeStatus,n=this.ticketPage,a=e*Yr,o=[];if(a<t.tickets.length){if(o.push.apply(o,r(t.tickets.slice(a,a+Yr))),o.length<Yr){var s=Yr-o.length;o.push.apply(o,r(n.history.slice(0,s)))}}else a-=t.tickets.length,o.push.apply(o,r(n.history.slice(a,a+Yr)));return o}},{key:"displayTicketPage",value:function(e,t){var n=this.page,r=this.selectedAssetID,a=ft().unitInfo(r),o=En[r][ft().user.net];Ne.empty(n.ticketHistoryRows),n.ticketHistoryPage.textContent=String(e);var s,i=Nr(t);try{for(i.s();!(s=i.n()).done;){var c=s.value,l=c.tx,u=c.status,d=n.ticketHistoryRowTmpl.cloneNode(!0);n.ticketHistoryRows.appendChild(d),ft().bindUrlHandlers(d);var h=Ne.parseTemplate(d);h.age.textContent=Ne.timeSince(1e3*l.stamp),h.price.textContent=Ne.formatFullPrecision(l.ticketPrice,a),h.status.textContent=ke(Ur[u]),h.hashStart.textContent=l.hash.slice(0,6),h.hashEnd.textContent=l.hash.slice(-6),h.detailsLinkUrl.setAttribute("href",o(l.hash))}}catch(e){i.e(e)}finally{i.f()}}},{key:"ticketPageN",value:(U=s(f().mark((function e(t){var n,a,o,s,i,c,l,u,d,h,p,v,m,g;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,a=this.stakeStatus,o=this.ticketPage,s=this.selectedAssetID,!((i=this.pageOfTickets(t)).length<Yr)||o.scanned){e.next=18;break}return l=Yr-i.length,u=o.history.length>0?o.history:a.tickets,d=u.length>0?u[u.length-1].tx.blockHeight:-1,h=u.filter((function(e){return e.tx.blockHeight===d})).length,p=ft().loading(n.ticketHistoryForm),e.next=10,this.safePost("/api/ticketpage",{assetID:s,scanStart:d,n:l,skipN:h});case 10:if(v=e.sent,p(),ft().checkResponse(v)){e.next=15;break}return console.error("error fetching ticket page",v.msg),e.abrupt("return");case 15:(c=this.ticketPage.history).push.apply(c,r(v.tickets)),i.push.apply(i,r(v.tickets)),v.tickets.length<l&&(this.ticketPage.scanned=!0);case 18:if(m=a.tickets.length+o.history.length,Ne.setVis(m>=Yr,n.ticketHistoryPagination),Ne.setVis(m>0,n.ticketHistoryTable),Ne.setVis(0===m,n.noTicketsMessage),0!==i.length){e.next=25;break}return Ne.hide(n.ticketHistoryNextPage),e.abrupt("return");case 25:this.displayTicketPage(t,i),o.number=t,g=t*Yr+i.length===m,Ne.setVis(!g||!o.scanned,n.ticketHistoryNextPage),Ne.setVis(t>0,n.ticketHistoryPrevPage);case 30:case"end":return e.stop()}}),e,this)}))),function(e){return U.apply(this,arguments)})},{key:"showTicketHistory",value:(V=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.showForm(this.page.ticketHistoryForm),e.next=3,this.ticketPageN(this.ticketPage.number);case 3:case"end":return e.stop()}}),e,this)}))),function(){return V.apply(this,arguments)})},{key:"nextTicketPage",value:(W=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ticketPageN(this.ticketPage.number+1);case 2:case"end":return e.stop()}}),e,this)}))),function(){return W.apply(this,arguments)})},{key:"prevTicketPage",value:(N=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ticketPageN(this.ticketPage.number-1);case 2:case"end":return e.stop()}}),e,this)}))),function(){return N.apply(this,arguments)})},{key:"showSetVotesDialog",value:function(){var e,t=this,n=this.page,r=this.stakeStatus,a=this.selectedAssetID,o=ft().unitInfo(a);Ne.hide(n.votingFormErr);var i=En[a][ft().user.net],c=function(){var e=s(f().mark((function e(r){var a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Ne.hide(n.votingFormErr),a=ft().loading(n.votingForm),e.next=4,t.safePost("/api/setvotes",r);case 4:if(o=e.sent,a(),ft().checkResponse(o)){e.next=10;break}throw Ne.show(n.votingFormErr),n.votingFormErr.textContent=o.msg,Error(o.msg);case 10:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),l=function(){var e=s(f().mark((function e(t,n){var o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c({assetID:a,choices:h({},t,n)});case 2:o=Nr(r.stances.agendas);try{for(o.s();!(s=o.n()).done;)(i=s.value).id===t&&(i.currentChoice=n)}catch(e){o.e(e)}finally{o.f()}case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();Ne.empty(n.votingAgendas);var u,d=Nr(r.stances.agendas);try{var p=function(){var e=u.value,t=n.votingAgendaTmpl.cloneNode(!0);n.votingAgendas.appendChild(t);var r=Ne.parseTemplate(t);r.description.textContent=e.description;var a,o=Nr(e.choices);try{var s=function(){var t=a.value,o=n.votingChoiceTmpl.cloneNode(!0);r.choices.appendChild(o);var s,i=Ne.parseTemplate(o);i.id.textContent=(s=t.id).charAt(0).toUpperCase()+s.slice(1),i.id.dataset.tooltip=t.description,i.radio.value=t.id,i.radio.name=e.id,Ne.bind(i.radio,"change",(function(){i.radio.checked&&l(e.id,t.id)})),t.id===e.currentChoice&&(i.radio.checked=!0)};for(o.s();!(a=o.n()).done;)s()}catch(e){o.e(e)}finally{o.f()}ft().bindTooltips(r.choices)};for(d.s();!(u=d.n()).done;)p()}catch(e){d.e(e)}finally{d.f()}var v=function(){var e=s(f().mark((function e(t,n){var o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c({assetID:a,tSpendPolicy:h({},t,n)});case 2:o=Nr(r.stances.tspends);try{for(o.s();!(s=o.n()).done;)(i=s.value).hash===t&&(i.currentPolicy=n)}catch(e){o.e(e)}finally{o.f()}case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();Ne.empty(n.votingTspends);var m,g=Nr(r.stances.tspends);try{var y=function(){var e=m.value,t=n.tspendTmpl.cloneNode(!0);n.votingTspends.appendChild(t),ft().bindUrlHandlers(t);for(var r=Ne.parseTemplate(t),a=function(){var t=c[s];t.name=e.hash,e.currentPolicy===t.value&&(t.checked=!0),Ne.bind(t,"change",(function(){var n;t.checked&&v(e.hash,null!==(n=t.value)&&void 0!==n?n:"")}))},s=0,c=[r.yes,r.no];s<c.length;s++)a();e.value>0?r.value.textContent=Ne.formatFourSigFigs(e.value/o.conventional.conversionFactor):Ne.hide(r.value),r.hash.textContent=e.hash,r.explorerLink.setAttribute("href",i(e.hash))};for(g.s();!(m=g.n()).done;)y()}catch(e){g.e(e)}finally{g.f()}var b=function(){var e=s(f().mark((function e(t,n){var o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c({assetID:a,treasuryPolicy:h({},t,n)});case 2:o=Nr(r.stances.treasuryKeys);try{for(o.s();!(s=o.n()).done;)(i=s.value).key===t&&(i.policy=n)}catch(e){o.e(e)}finally{o.f()}case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}();Ne.empty(n.votingTKeys);var x,k=Nr(null!==(e=r.stances.treasuryKeys)&&void 0!==e?e:[]);try{var w=function(){var e=x.value,t=n.tkeyTmpl.cloneNode(!0);n.votingTKeys.appendChild(t);for(var r=Ne.parseTemplate(t),a=function(){var t=s[o];t.name=e.key,e.policy===t.value&&(t.checked=!0),Ne.bind(t,"change",(function(){var n;t.checked&&b(e.key,null!==(n=t.value)&&void 0!==n?n:"")}))},o=0,s=[r.yes,r.no];o<s.length;o++)a();r.key.textContent=e.key};for(k.s();!(x=k.n()).done;)w()}catch(e){k.e(e)}finally{k.f()}this.showForm(n.votingForm)}},{key:"updatePrivacy",value:(q=s(f().mark((function e(t){var n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=null===(n=ft().extensionWallet(t))||void 0===n?void 0:n.disablePrivacy,this.mixing=!1,a=ft().assets[t].wallet,o=this.page,Ne.hide(o.mixingBox,o.mixerOff,o.mixerOn),!r&&null!=a&&a.running&&a.traits&Vr){e.next=7;break}return e.abrupt("return");case 7:return Ne.show(o.mixingBox,o.mixerLoading),e.next=10,this.safePost("/api/mixingstats",{assetID:t});case 10:if(s=e.sent,Ne.hide(o.mixerLoading),ft().checkResponse(s)){e.next=16;break}return Ne.show(o.mixingErr),o.mixingErr.textContent=s.msg,e.abrupt("return");case 16:this.mixing=s.stats.enabled,this.mixing?Ne.show(o.mixerOn):Ne.show(o.mixerOff),this.mixerToggle.setState(this.mixing);case 19:case"end":return e.stop()}}),e,this)}))),function(e){return q.apply(this,arguments)})},{key:"updateMixerState",value:(M=s(f().mark((function e(t){var n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,Ne.hide(n.mixingErr),r=ft().loading(n.mixingBox),e.next=5,S("/api/configuremixer",{assetID:this.selectedAssetID,enabled:t});case 5:if(a=e.sent,r(),ft().checkResponse(a)){e.next=11;break}return n.mixingErr.textContent=ke(H,{msg:a.msg}),Ne.show(n.mixingErr),e.abrupt("return");case 11:Ne.setVis(t,n.mixerOn),Ne.setVis(!t,n.mixerOff),this.mixerToggle.setState(t);case 14:case"end":return e.stop()}}),e,this)}))),function(e){return M.apply(this,arguments)})},{key:"updateDisplayedAssetBalance",value:function(){var e,t,n,r=this.page,a=ft().assets[this.selectedAssetID],o=a.wallet,s=a.unitInfo,i=a.id,c=o.balance;Ne.show(r.balanceBox,r.walletDetails);var l=c.locked+c.contractlocked+c.bondlocked,u=c.available+l+c.immature;r.balance.textContent=Ne.formatCoinValue(u,s),r.balanceUnit.textContent=s.conventional.unit;var d=ft().fiatRatesMap[i];d&&(Ne.show(r.fiatBalanceBox),r.fiatBalance.textContent=Ne.formatFiatConversion(u,d,s)),Ne.empty(r.balanceDetailBox);var h,p,f=function(e,t,n){var a=r.balanceDetailRow.cloneNode(!0);r.balanceDetailBox.appendChild(a);var o=Ne.parseTemplate(a);return o.name.textContent=e,n&&(o.tooltipMsg.dataset.tooltip=n,Ne.show(o.tooltipMsg)),o.balance.textContent=Ne.formatCoinValue(t,s),a},v=function(e,t,n){h=void 0,p=f(e,t,n)},m=function(e,t,n){(h=f(e,t,n)).classList.add("sub")},g=function(){h&&(p.classList.add("itemized"),h.classList.add("last"))};if(v(ke("AVAILABLE_TITLE"),c.available,""),void 0!==(null===(e=c.other)||void 0===e?void 0:e.Shielded)){var y=c.available-c.other.Shielded.amt;m(ke("TRANSPARENT"),y),m(ke("SHIELDED"),c.other.Shielded.amt)}g(),v(ke("LOCKED_TITLE"),l,ke("LOCKED_BAL_MSG")),c.orderlocked>0&&m(ke("ORDER"),c.orderlocked,ke("LOCKED_ORDER_BAL_MSG")),c.contractlocked>0&&m(ke("SWAPPING"),c.contractlocked,ke("LOCKED_SWAPPING_BAL_MSG")),c.bondlocked>0&&m(ke("BONDED"),c.bondlocked,ke("LOCKED_BOND_BAL_MSG")),c.bondReserves>0&&m(ke("BOND_RESERVES"),c.bondReserves,ke("BOND_RESERVES_MSG")),void 0!==(null==c||null===(t=c.other)||void 0===t?void 0:t.Staked)&&m("Staked",c.other.Staked.amt),g(),c.immature&&v(ke("IMMATURE_TITLE"),c.immature,ke("IMMATURE_BAL_MSG")),void 0!==(null==c||null===(n=c.other)||void 0===n?void 0:n.Unmixed)&&m("Unmixed",c.other.Unmixed.amt),g(),r.purchaserBal.textContent=Ne.formatFourSigFigs(c.available/s.conventional.conversionFactor),ft().bindTooltips(r.balanceDetailBox)}},{key:"showAvailableMarkets",value:function(e){for(var t=this.page,n=ft().user.exchanges,r=[],o=0,s=Object.values(n);o<s.length;o++){var i=s[o];if(i.markets)for(var c=0,l=Object.values(i.markets);c<l.length;c++){var u=l[c];u.baseid!==e&&u.quoteid!==e||r.push([i.host,i,u])}}var d=function(e,t){var n=t.spot;if(!n)return 0;var r=ft().unitInfo(e).conventional.conversionFactor;return(e===t.baseid?n.vol24:n.vol24*n.rate/Ft)/r};r.sort((function(t,n){var r=a(t,3),o=r[0],s=r[2],i=a(n,3),c=i[0],l=i[2];return s.spot||l.spot?d(e,l)-d(e,s):o.localeCompare(c)})),Ne.empty(t.availableMarkets);for(var h=function(){var r=a(f[p],3),o=r[0],s=r[1],i=r[2],c=i.spot,l=i.baseid,u=i.basesymbol,h=i.quoteid,v=i.quotesymbol,m=t.marketRow.cloneNode(!0);t.availableMarkets.appendChild(m);var g=Ne.parseTemplate(m);if(g.host.textContent=o,g.baseLogo.src=Ne.logoPath(u),g.quoteLogo.src=Ne.logoPath(v),Ne.empty(g.baseSymbol,g.quoteSymbol),g.baseSymbol.appendChild(Ne.symbolize(s.assets[l],!0)),g.quoteSymbol.appendChild(Ne.symbolize(s.assets[h],!0)),c){var y=ft().conventionalRate(l,h,c.rate,n[o]);g.price.textContent=Ne.formatFourSigFigs(y);var b=function(e){return e.split(".")[0].toUpperCase()};g.priceQuoteUnit.textContent=b(v),g.priceBaseUnit.textContent=b(u),g.volume.textContent=Ne.formatFourSigFigs(d(e,i)),g.volumeUnit.textContent=b(e===l?u:v)}else Ne.hide(g.priceBox,g.volumeBox);Ne.bind(m,"click",(function(){return ft().loadPage("markets",{host:o,baseID:l,quoteID:h})}))},p=0,f=r;p<f.length;p++)h();t.marketsOverviewBox.classList.remove("invisible")}},{key:"showRecentActivity",value:(O=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d,h,p,v,m,g,y;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,r=ft().loading(n.orderActivityBox),a={n:20,assets:[t],hosts:[],statuses:[]},e.next=5,S("/api/orders",a);case 5:if(o=e.sent,r(),Ne.hide(n.noActivity,n.orderActivity),o.orders&&0!==o.orders.length){e.next=12;break}return Ne.show(n.noActivity),n.orderActivityBox.classList.remove("invisible"),e.abrupt("return");case 12:for(Ne.show(n.orderActivity),Ne.empty(n.recentOrders),s=0,i=o.orders;s<i.length;s++)c=i[s],l=n.recentOrderTmpl.cloneNode(!0),n.recentOrders.appendChild(l),u=Ne.parseTemplate(l),d=void 0,h=void 0,p=[ft().unitInfo(c.baseID),ft().unitInfo(c.quoteID)],v=p[0],m=p[1],c.sell?(g=[ft().assets[c.baseID],ft().assets[c.quoteID]],d=g[0],h=g[1],u.fromQty.textContent=Ne.formatCoinValue(c.qty,v),1===c.type&&(u.toQty.textContent=Ne.formatCoinValue(c.qty/Ft*c.rate,m))):(y=[ft().assets[c.quoteID],ft().assets[c.baseID]],d=y[0],h=y[1],2===c.type?u.fromQty.textContent=Ne.formatCoinValue(c.qty,v):(u.fromQty.textContent=Ne.formatCoinValue(c.qty/Ft*c.rate,m),u.toQty.textContent=Ne.formatCoinValue(c.qty,v))),u.fromLogo.src=Ne.logoPath(d.symbol),Ne.empty(u.fromSymbol,u.toSymbol),u.fromSymbol.appendChild(Ne.symbolize(d,!0)),u.toLogo.src=Ne.logoPath(h.symbol),u.toSymbol.appendChild(Ne.symbolize(h,!0)),u.status.textContent=Rt(c),u.filled.textContent="".concat((Et(c)/c.qty*100).toFixed(1),"%"),u.age.textContent=Ne.timeSince(c.submitTime),u.link.href="order/".concat(c.id),ft().bindInternalNavigation(l);n.orderActivityBox.classList.remove("invisible");case 16:case"end":return e.stop()}}),e,this)}))),function(e){return O.apply(this,arguments)})},{key:"updateTxHistoryRow",value:function(e,t,n){var r=Ne.parseTemplate(e),o=n,s=n;if(t.tokenID)if(o=t.tokenID,n!==t.tokenID)s=n;else{var i=ft().assets[n];i.token?s=i.token.parentID:console.error("unable to determine fee asset for tx ".concat(t.id))}var c=ft().unitInfo(o),l=ft().unitInfo(s);r.age.textContent=Ne.timeSince(1e3*t.timestamp),r.age.dataset.timestamp=String(1e3*t.timestamp),Ne.setVis(0===t.timestamp,r.pending),Ne.setVis(0!==t.timestamp,r.age),t.timestamp>0&&(r.age.dataset.stamp=String(t.timestamp));var u=Xr(t.type);if(t.tokenID&&t.tokenID!==n){var d=ft().assets[t.tokenID].unitInfo.conventional.unit;u="".concat(d," ").concat(u)}if(r.type.textContent=u,r.id.textContent=$r(t.id,12),r.id.setAttribute("title",t.id),r.fees.textContent=Ne.formatCoinValue(t.fees,l),Hr.includes(t.type))r.amount.textContent="-";else{var h=a(zr(t.type),2),p=h[0],f=h[1],v=Ne.formatCoinValue(t.amount,c);r.amount.textContent="".concat(p).concat(v),""!==f&&r.amount.classList.add(f)}}},{key:"txHistoryRow",value:function(e,t){var n=this,r=this.page.txHistoryRowTmpl.cloneNode(!0);r.dataset.txid=e.id,Ne.bind(r,"click",(function(){return n.showTxDetailsPopup(e.id)})),this.updateTxHistoryRow(r,e,t);var a=Ne.parseTemplate(r);return this.stampers.push(a.age),r}},{key:"txHistoryDateRow",value:function(e){var t=this.page.txHistoryDateRowTmpl.cloneNode(!0);return Ne.parseTemplate(t).date.textContent=e,t}},{key:"setTxDetailsPopupElements",value:function(e){var t=this.page,n=En[this.selectedAssetID];n&&n[Jr]&&(t.txViewBlockExplorer.href=n[Jr](e.id));var r=Xr(e.type);if(e.tokenID&&e.tokenID!==this.selectedAssetID){var o=ft().assets[e.tokenID].symbol.split(".")[0].toUpperCase();r="".concat(o," ").concat(r)}if(t.txDetailsType.textContent=r,Ne.setVis(16===e.type,t.txTypeTooltip),t.txTypeTooltip.dataset.tooltip=ke("SWAP_OR_SEND_TOOLTIP"),Hr.includes(e.type))Ne.hide(t.txDetailsAmtSection);else{var s=this.selectedAssetID;e.tokenID&&(s=e.tokenID),Ne.show(t.txDetailsAmtSection);var i=ft().unitInfo(s),c=Ne.formatCoinValue(e.amount,i),l=a(zr(e.type),2),u=l[0],d=l[1];t.txDetailsAmount.textContent="".concat(u).concat(c," ").concat(i.conventional.unit),""!==d&&t.txDetailsAmount.classList.add(d)}var h=this.selectedAssetID;if(void 0!==e.tokenID){var p=ft().assets[e.tokenID];p.token?h=p.token.parentID:console.error("wallet transaction ".concat(e.id," is supposed to be a token tx, but asset ").concat(e.tokenID," is not a token"))}var f=ft().unitInfo(h),v=Ne.formatCoinValue(e.fees,f);t.txDetailsFee.textContent="".concat(v," ").concat(f.conventional.unit),t.txDetailsBlockNumber.textContent="".concat(e.blockNumber);var m=new Date(1e3*e.timestamp),g=m.toLocaleDateString(),y=m.toLocaleTimeString();if(t.txDetailsTimestamp.textContent="".concat(g," ").concat(y),Ne.setVis(0===e.blockNumber,t.timestampPending,t.blockNumberPending),Ne.setVis(0!==e.blockNumber,t.txDetailsBlockNumber,t.txDetailsTimestamp),t.txDetailsID.textContent=$r(e.id,20),t.txDetailsID.setAttribute("title",e.id),e.recipient?(Ne.show(t.txDetailsRecipientSection),t.txDetailsRecipient.textContent=$r(e.recipient,20),t.txDetailsRecipient.setAttribute("title",e.recipient)):Ne.hide(t.txDetailsRecipientSection),e.bondInfo){Ne.show(t.txDetailsBondIDSection,t.txDetailsBondLocktimeSection),Ne.setVis(""!==e.bondInfo.accountID,t.txDetailsBondAccountIDSection),t.txDetailsBondID.textContent=$r(e.bondInfo.bondID,20),t.txDetailsBondID.setAttribute("title",e.bondInfo.bondID);var b=new Date(1e3*e.bondInfo.lockTime),x=b.toLocaleDateString(),k=b.toLocaleTimeString();t.txDetailsBondLocktime.textContent="".concat(x," ").concat(k),t.txDetailsBondAccountID.textContent=$r(e.bondInfo.accountID,20),t.txDetailsBondAccountID.setAttribute("title",e.bondInfo.accountID)}else Ne.hide(t.txDetailsBondIDSection,t.txDetailsBondLocktimeSection,t.txDetailsBondAccountIDSection);e.additionalData&&e.additionalData.Nonce?(Ne.show(t.txDetailsNonceSection),t.txDetailsNonce.textContent="".concat(e.additionalData.Nonce)):Ne.hide(t.txDetailsNonceSection)}},{key:"showTxDetailsPopup",value:function(e){var t=ft().getWalletTx(this.selectedAssetID,e);t?(this.currTx=t,this.setTxDetailsPopupElements(t),this.showForm(this.page.txDetails)):console.error("wallet transaction ".concat(e," not found"))}},{key:"txHistoryTableNewestDate",value:function(){return this.page.txHistoryTableBody.children.length>=1&&Ne.parseTemplate(this.page.txHistoryTableBody.children[0]).date.textContent||""}},{key:"txDate",value:function(e){return 0===e.timestamp?(new Date).toLocaleDateString():new Date(1e3*e.timestamp).toLocaleDateString()}},{key:"handleTxNote",value:function(e,t){var n;if(!(ft().assets[this.selectedAssetID].wallet.traits&Vr&&this.page.hideMixTxs.checked)||17!==e.type)if(t)this.oldestTx?this.txDate(e)!==this.txHistoryTableNewestDate()?(this.page.txHistoryTableBody.insertBefore(this.txHistoryRow(e,this.selectedAssetID),this.page.txHistoryTableBody.children[0]),this.page.txHistoryTableBody.insertBefore(this.txHistoryDateRow(this.txDate(e)),this.page.txHistoryTableBody.children[0])):this.page.txHistoryTableBody.insertBefore(this.txHistoryRow(e,this.selectedAssetID),this.page.txHistoryTableBody.children[1]):(Ne.show(this.page.txHistoryTable),Ne.hide(this.page.noTxHistory),this.page.txHistoryTableBody.appendChild(this.txHistoryDateRow(this.txDate(e))),this.page.txHistoryTableBody.appendChild(this.txHistoryRow(e,this.selectedAssetID)),this.oldestTx=e);else{var r,a=Nr(this.page.txHistoryTableBody.children);try{for(a.s();!(r=a.n()).done;){var o=r.value;if(o.dataset.txid===e.id){this.updateTxHistoryRow(o,e,this.selectedAssetID);break}}}catch(e){a.e(e)}finally{a.f()}e.id===(null===(n=this.currTx)||void 0===n?void 0:n.id)&&this.setTxDetailsPopupElements(e)}}},{key:"getTxHistory",value:(L=s(f().mark((function e(t,n,a){var o,s,i,c,l,u,d,h,p;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:o=10,n&&(o=15),s={txs:[],lastTx:!1},i=a,c=0;case 5:if(!(c<40)){e.next=18;break}return e.next=8,ft().txHistory(t,o,i);case 8:if((l=e.sent).txs.length>0&&(i=l.txs[l.txs.length-1].id),u=l.txs,n&&(u=u.filter((function(e){return 17!==e.type}))),s.txs.length+u.length>10?(h=10-s.txs.length,(d=s.txs).push.apply(d,r(u.slice(0,h)))):(l.lastTx&&(s.lastTx=!0),(p=s.txs).push.apply(p,r(u))),!(s.txs.length>=10||l.lastTx)){e.next=15;break}return e.abrupt("break",18);case 15:c++,e.next=5;break;case 18:return e.abrupt("return",s);case 19:case"end":return e.stop()}}),e)}))),function(e,t,n){return L.apply(this,arguments)})},{key:"showTxHistory",value:(P=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d,h;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,Ne.hide(n.txHistoryTable,n.txHistoryBox,n.noTxHistory,n.earlierTxs,n.txHistoryNotAvailable,n.hideMixTxs),Ne.empty(n.txHistoryTableBody),(a=ft().assets[t].wallet)&&!a.disabled&&65536&a.traits){e.next=7;break}return Ne.show(n.txHistoryNotAvailable),e.abrupt("return");case 7:return this.oldestTx=void 0,o=!!(a.traits&Vr),Ne.setVis(o,n.hideMixTxs),Ne.show(n.txHistoryBox),e.prev=11,s=o&&!!n.hideMixTxsCheckbox.checked,e.next=15,this.getTxHistory(t,s);case 15:r=e.sent,e.next=22;break;case 18:return e.prev=18,e.t0=e.catch(11),Ne.show(n.noTxHistory),e.abrupt("return");case 22:if(0!==r.txs.length){e.next=25;break}return Ne.show(n.noTxHistory),e.abrupt("return");case 25:i=this.txDate(r.txs[0]),n.txHistoryTableBody.appendChild(this.txHistoryDateRow(i)),c=Nr(r.txs);try{for(c.s();!(l=c.n()).done;)u=l.value,(d=this.txDate(u))!==i&&(i=d,n.txHistoryTableBody.appendChild(this.txHistoryDateRow(d))),h=this.txHistoryRow(u,t),n.txHistoryTableBody.appendChild(h)}catch(e){c.e(e)}finally{c.f()}this.oldestTx=r.txs[r.txs.length-1],Ne.show(n.txHistoryTable),Ne.setVis(!r.lastTx,n.earlierTxs);case 32:case"end":return e.stop()}}),e,this,[[11,18]])}))),function(e){return P.apply(this,arguments)})},{key:"loadEarlierTxs",value:(B=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.oldestTx){e.next=2;break}return e.abrupt("return");case 2:return t=this.page,r=ft().assets[this.selectedAssetID].wallet,a=!!(r.traits&Vr)&&!!t.hideMixTxsCheckbox.checked,e.prev=5,e.next=8,this.getTxHistory(this.selectedAssetID,a,this.oldestTx.id);case 8:n=e.sent,e.next=15;break;case 11:return e.prev=11,e.t0=e.catch(5),console.error(e.t0),e.abrupt("return");case 15:o=this.txDate(this.oldestTx),s=Nr(n.txs);try{for(s.s();!(i=s.n()).done;)c=i.value,(l=this.txDate(c))!==o&&(o=l,t.txHistoryTableBody.appendChild(this.txHistoryDateRow(l))),u=this.txHistoryRow(c,this.selectedAssetID),t.txHistoryTableBody.appendChild(u)}catch(e){s.e(e)}finally{s.f()}Ne.setVis(!n.lastTx,t.earlierTxs),n.txs.length>0&&(this.oldestTx=n.txs[n.txs.length-1]);case 20:case"end":return e.stop()}}),e,this,[[5,11]])}))),function(){return B.apply(this,arguments)})},{key:"rescanWallet",value:(E=s(f().mark((function e(t){var n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,Ne.hide(n.reconfigErr),r="/api/rescanwallet",a={assetID:t},o=ft().loading(this.body),e.next=7,S(r,a);case 7:if(s=e.sent,o(),s.code!==A.activeOrdersErr){e.next=14;break}return this.forceUrl=r,this.forceReq=a,this.showConfirmForce(),e.abrupt("return");case 14:if(ft().checkResponse(s)){e.next=17;break}return Ne.showFormError(n.reconfigErr,s.msg),e.abrupt("return");case 17:this.assetUpdated(t,n.reconfigForm,ke("RESCAN_STARTED"));case 18:case"end":return e.stop()}}),e,this)}))),function(e){return E.apply(this,arguments)})},{key:"showConfirmForce",value:function(){Ne.hide(this.page.confirmForceErr),this.showForm(this.page.confirmForce)}},{key:"showRecoverWallet",value:function(){Ne.hide(this.page.recoverWalletErr),this.showForm(this.page.recoverWalletConfirm)}},{key:"openWallet",value:(I=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={assetID:t},e.next=3,S("/api/openwallet",n);case 3:if(r=e.sent,ft().checkResponse(r)){e.next=7;break}return console.error("openwallet error",r),e.abrupt("return");case 7:this.assetUpdated(t,void 0,ke("WALLET_UNLOCKED"));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return I.apply(this,arguments)})},{key:"showReconfig",value:(D=s(f().mark((function e(t,n){var r,a,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=this.page,Ne.hide(a.changeWalletType,a.changeTypeHideIcon,a.reconfigErr,a.showChangeType,a.changeTypeHideIcon,a.reconfigErr,a.enableWallet,a.disableWallet),this.changeWalletPW=!1,this.setPWSettingViz(this.changeWalletPW),o=ft().assets[t],s=ft().currentWalletDefinition(t),i=o.token?[o.token.definition]:o.info?o.info.availablewallets:[],c=null===(r=ft().extensionWallet(t))||void 0===r?void 0:r.disableWalletType,i.length>1&&!c){Ne.empty(a.changeWalletTypeSelect),Ne.show(a.showChangeType,a.changeTypeShowIcon),a.changeTypeMsg.textContent=ke("CHANGE_WALLET_TYPE"),l=Nr(i);try{for(l.s();!(u=l.n()).done;)d=u.value,h=document.createElement("option"),d.type===s.type&&(h.selected=!0),h.value=h.textContent=d.type,a.changeWalletTypeSelect.appendChild(h)}catch(e){l.e(e)}finally{l.f()}}if(null!=n&&n.elevateProviders){p=Nr(s.configopts);try{for(p.s();!(v=p.n()).done;)"providers"===(m=v.value).key&&(m.required=!0)}catch(e){p.e(e)}finally{p.f()}}return g=ft().walletMap[t],Ne.setVis(4&g.traits,a.downloadLogs),Ne.setVis(32&g.traits,a.recoverWallet),Ne.setVis(256&g.traits,a.exportWallet),Ne.setVis(1&g.traits,a.rescanWallet),Ne.setVis(1024&g.traits&&!g.disabled,a.managePeers),Ne.setVis(8192&g.traits&&!g.disabled,a.unapproveTokenAllowance),Ne.setVis(9509&g.traits,a.otherActionsLabel),g.disabled?Ne.show(a.enableWallet):Ne.show(a.disableWallet),this.showOrHideRecoverySupportMsg(g,s.seeded),a.recfgAssetLogo.src=Ne.logoPath(o.symbol),a.recfgAssetName.textContent=o.name,null!=n&&n.skipAnimation||this.showForm(a.reconfigForm),y=ft().loading(a.reconfigForm),e.next=26,S("/api/walletsettings",{assetID:t});case 26:if(b=e.sent,y(),ft().checkResponse(b)){e.next=31;break}return Ne.showFormError(a.reconfigErr,b.msg),e.abrupt("return");case 31:x=ft().haveActiveOrders(t),this.reconfigForm.update(o.id,s.configopts||[],x),this.setGuideLink(s.guidelink),this.reconfigForm.setConfig(b.map),this.updateDisplayedReconfigFields(s);case 36:case"end":return e.stop()}}),e,this)}))),function(e,t){return D.apply(this,arguments)})},{key:"showOrHideRecoverySupportMsg",value:function(e,t){this.setRecoverySupportMsgViz(t&&!e.running&&!e.disabled&&Boolean(32&e.traits),e.symbol)}},{key:"setRecoverySupportMsgViz",value:function(e,t){var n=this.page;if(e)return n.reconfigSupportMsg.textContent=ke("WALLET_RECOVERY_SUPPORT_MSG",{walletSymbol:t.toLocaleUpperCase()}),Ne.show(n.reconfigSupportMsg),n.submitReconfig.setAttribute("disabled",""),void n.submitReconfig.classList.add("grey");n.submitReconfig.removeAttribute("disabled"),n.submitReconfig.classList.remove("grey"),Ne.empty(n.reconfigSupportMsg),Ne.hide(n.reconfigSupportMsg)}},{key:"changeWalletType",value:function(){var e=this.page.changeWalletTypeSelect.value||"",t=ft().walletDefinition(this.selectedAssetID,e);this.reconfigForm.update(this.selectedAssetID,t.configopts||[],!1);var n=ft().walletMap[this.selectedAssetID],r=ft().currentWalletDefinition(this.selectedAssetID);t.type!==r.type?this.setRecoverySupportMsgViz(!1,n.symbol):this.showOrHideRecoverySupportMsg(n,t.seeded),this.setGuideLink(t.guidelink),this.updateDisplayedReconfigFields(t)}},{key:"setGuideLink",value:function(e){Ne.hide(this.walletCfgGuide),""!==e&&(this.walletCfgGuide.href=e,Ne.show(this.walletCfgGuide))}},{key:"updateDisplayedReconfigFields",value:function(e){var t,n=null===(t=ft().extensionWallet(this.selectedAssetID))||void 0===t?void 0:t.disablePassword;e.seeded||"token"===e.type||n?(Ne.hide(this.page.showChangePW,this.reconfigForm.fileSelector),this.changeWalletPW=!1,this.setPWSettingViz(!1)):Ne.show(this.page.showChangePW,this.reconfigForm.fileSelector)}},{key:"showDeposit",value:(T=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.depositAddrForm.setAsset(t),this.showForm(this.page.deposit);case 2:case"end":return e.stop()}}),e,this)}))),function(e){return T.apply(this,arguments)})},{key:"showSendForm",value:(F=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d,h,p,v,m,g;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,r=n.sendForm,a=ft().assets[t],o=a.wallet,s=a.unitInfo,i=a.symbol,c=a.token,Ne.hide(n.toggleSubtract),n.subtractCheckBox.checked=!1,(l=!!(64&o.traits))&&Ne.show(n.toggleSubtract),Ne.hide(n.sendErr,n.maxSendDisplay,n.sendTokenMsgBox),n.sendAddr.classList.remove("border-danger","border-success"),n.sendAddr.value="",n.sendAmt.value="",u=ft().fiatRatesMap[t],Ne.showFiatValue(n.sendValue,0,u,s),n.walletBal.textContent=Ne.formatFullPrecision(o.balance.available,s),n.sendLogo.src=Ne.logoPath(i),n.sendName.textContent=s.conventional.unit,c&&(d=ft().assets[c.parentID],n.sendTokenParentLogo.src=Ne.logoPath(d.symbol),n.sendTokenParentName.textContent=d.name,Ne.show(n.sendTokenMsgBox)),!(o.balance.available>0&&512&o.traits)){e.next=25;break}return h={assetID:t,subtract:l,maxWithdraw:!0,value:o.balance.available},p=ft().loading(this.body),e.next=22,S("/api/txfee",h);case 22:v=e.sent,p(),ft().checkResponse(v)&&(m=o.balance.available,c||(m-=v.txfee)<0&&(m=0),this.maxSend=m,n.maxSend.textContent=Ne.formatFullPrecision(m,s),Ne.showFiatValue(n.maxSendFiat,m,u,s),c?(g=ft().assets[c.parentID].unitInfo,n.maxSendFee.textContent=Ne.formatFullPrecision(v.txfee,g)+" "+g.conventional.unit,Ne.showFiatValue(n.maxSendFeeFiat,v.txfee,ft().fiatRatesMap[c.parentID],g)):(n.maxSendFee.textContent=Ne.formatFullPrecision(v.txfee,s),Ne.showFiatValue(n.maxSendFeeFiat,v.txfee,u,s)),Ne.show(n.maxSendDisplay));case 25:Ne.showFiatValue(n.sendValue,0,u,s),n.walletBal.textContent=Ne.formatFullPrecision(o.balance.available,s),r.dataset.assetID=String(t),this.showForm(r);case 29:case"end":return e.stop()}}),e,this)}))),function(e){return F.apply(this,arguments)})},{key:"doConnect",value:(C=s(f().mark((function e(t){var n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=ft().loading(this.body),e.next=3,S("/api/connectwallet",{assetID:t});case 3:r=e.sent,n(),ft().checkResponse(r)||(a=ft().assets[t].symbol,(o=this.page).errorModalMsg.textContent=ke("CONNECTING_WALLET_ERR_MSG",{assetName:a,errMsg:r.msg}),this.showForm(o.errorModal)),this.updateDisplayedAsset(t);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"assetUpdated",value:function(e,t,n){e===this.selectedAssetID&&(this.updateDisplayedAsset(e),t&&Object.is(this.currentForm,t)&&(n?this.showSuccess(n):this.closePopups()))}},{key:"populateMaxSend",value:(w=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,n=ft().assets[this.selectedAssetID],r=n.id,a=n.unitInfo,o=n.wallet,s=ft().fiatRatesMap[r],64&o.traits?(i=o.balance.available,t.sendAmt.value=String(i/a.conventional.conversionFactor),Ne.showFiatValue(t.sendValue,i,s,a),t.subtractCheckBox.checked=!0):(t.sendAmt.value=String(this.maxSend/a.conventional.conversionFactor),Ne.showFiatValue(t.sendValue,this.maxSend,s,a),t.subtractCheckBox.checked=!1);case 4:case"end":return e.stop()}}),e,this)}))),function(){return w.apply(this,arguments)})},{key:"send",value:(x=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.page,a=parseInt(null!==(t=r.sendForm.dataset.assetID)&&void 0!==t?t:""),o=null!==(n=r.subtractCheckBox.checked)&&void 0!==n&&n,s=ft().unitInfo(a).conventional.conversionFactor,i=r.vSendPw.value||"",r.vSendPw.value="",""!==i){e.next=9;break}return Ne.showFormError(r.vSendErr,ke(R)),e.abrupt("return");case 9:return c={assetID:a,address:r.sendAddr.value,subtract:o,value:Math.round(tt(r.sendAmt.value)*s),pw:i},l=ft().loading(r.vSendForm),e.next=13,S("/api/send",c);case 13:if(u=e.sent,l(),ft().checkResponse(u)){e.next=18;break}return Ne.showFormError(r.vSendErr,u.msg),e.abrupt("return");case 18:d=ft().assets[a].name,this.assetUpdated(a,r.vSendForm,ke("SEND_SUCCESS",{assetName:d}));case 20:case"end":return e.stop()}}),e,this)}))),function(){return x.apply(this,arguments)})},{key:"reconfig",value:(m=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,r=this.selectedAssetID,Ne.hide(n.reconfigErr),a=ft().currentWalletDefinition(r).type,Ne.isHidden(n.changeWalletType)||(a=n.changeWalletTypeSelect.value||""),o=ft().loading(n.reconfigForm),s={assetID:r,config:this.reconfigForm.map(r),walletType:a},this.changeWalletPW&&(s.newWalletPW=n.newPW.value),e.next=10,this.safePost("/api/reconfigurewallet",s);case 10:if(i=e.sent,n.newPW.value="",o(),ft().checkResponse(i)){e.next=16;break}return Ne.showFormError(n.reconfigErr,i.msg),e.abrupt("return");case 16:if(null===(t=this.data)||void 0===t||!t.goBack){e.next=19;break}return ft().loadPage(this.data.goBack),e.abrupt("return");case 19:this.assetUpdated(r,n.reconfigForm,ke("RECONFIG_SUCCESS")),this.updateTicketBuyer(r),ft().clearTxHistory(r),this.showTxHistory(r),this.updatePrivacy(r),this.checkNeedsProvider(r);case 25:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"lock",value:(p=s(f().mark((function e(t){var n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,r=ft().loading(n.newWalletForm),e.next=4,S("/api/closewallet",{assetID:t});case 4:if(a=e.sent,r(),ft().checkResponse(a)){e.next=8;break}return e.abrupt("return");case 8:this.updateDisplayedAsset(t),this.updatePrivacy(t);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"downloadLogs",value:(u=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(t=new URLSearchParams("")).append("assetid","".concat(this.selectedAssetID)),(n=new URL(window.location.href)).search=t.toString(),n.pathname="/wallets/logfile",window.open(n.toString());case 6:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"displayExportWalletAuth",value:(l=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,Ne.hide(t.exportWalletErr),t.exportWalletPW.value="",this.showForm(t.exportWalletAuth);case 4:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"exportWalletAuthSubmit",value:(c=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n={assetID:this.selectedAssetID,pass:t.exportWalletPW.value},r=ft().loading(t.forms),e.next=6,S("/api/restorewalletinfo",n);case 6:a=e.sent,r(),ft().checkResponse(a)?(t.exportWalletPW.value="",this.displayRestoreWalletInfo(a.restorationinfo)):Ne.showFormError(t.exportWalletErr,a.msg);case 9:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"displayRestoreWalletInfo",value:(o=s(f().mark((function e(t){var n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.page,Ne.empty(n.restoreInfoCardsList),r=Nr(t);try{for(r.s();!(a=r.n()).done;)o=a.value,s=this.restoreInfoCard.cloneNode(!0),(i=Ne.parseTemplate(s)).name.textContent=o.target,i.seed.textContent=o.seed,i.seedName.textContent="".concat(o.seedName,":"),i.instructions.textContent=o.instructions,n.restoreInfoCardsList.appendChild(s)}catch(e){r.e(e)}finally{r.f()}this.showForm(n.restoreWalletInfo);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"recoverWallet",value:(n=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.recoverWalletErr),n={assetID:this.selectedAssetID},r="/api/recoverwallet",a=ft().loading(t.forms),e.next=7,S(r,n);case 7:o=e.sent,a(),o.code===A.activeOrdersErr?(this.forceUrl=r,this.forceReq=n,this.showConfirmForce()):ft().checkResponse(o)?this.closePopups():Ne.showFormError(t.recoverWalletErr,o.msg);case 10:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"confirmForceSubmit",value:(t=s(f().mark((function e(){var t,n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,this.forceReq.force=!0,n=ft().loading(t.forms),e.next=5,S(this.forceUrl,this.forceReq);case 5:r=e.sent,n(),ft().checkResponse(r)?this.closePopups():Ne.showFormError(t.confirmForceErr,r.msg);case 8:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"handleBalanceNote",value:function(e){this.updateAssetButton(e.assetID),e.assetID===this.selectedAssetID&&this.updateDisplayedAssetBalance()}},{key:"handleRatesNote",value:function(e){if(this.updateAssetButton(this.selectedAssetID),e.fiatRates[this.selectedAssetID]){this.updateDisplayedAssetBalance();var t=ft().walletMap[this.selectedAssetID].feeState;t&&this.updateFeeState(t)}}},{key:"handleWalletStateNote",value:function(e){var t=e.wallet,n=t.assetID,r=t.feeState;this.updateAssetButton(n),this.assetUpdated(n),"WalletPeersUpdate"===e.topic&&n===this.selectedAssetID&&Ne.isDisplayed(this.page.managePeersForm)&&this.updateWalletPeersTable(),r&&n===this.selectedAssetID&&this.updateFeeState(r)}},{key:"handleCreateWalletNote",value:function(e){this.updateAssetButton(e.assetID),this.assetUpdated(e.assetID),this.showTxHistory(e.assetID)}},{key:"handleCustomWalletNote",value:function(e){var t=e.payload;switch(t.route){case"tipChange":var n=t;if(42===n.assetID){if(!this.stakeStatus)return;var r=n.data;if(ft().walletMap[n.assetID].synced){var a=ft().unitInfo(n.assetID);this.updateTicketStats(r.stats,a,r.ticketPrice,r.votingSubsidy)}}break;case"ticketPurchaseUpdate":this.processTicketPurchaseUpdate(t);break;case"transaction":var o=t;o.assetID===this.selectedAssetID&&this.handleTxNote(o.transaction,o.new);break;case"transactionHistorySynced":var s=t;s.assetID===this.selectedAssetID&&this.showTxHistory(s.assetID)}}},{key:"unload",value:function(){clearInterval(this.secondTicker),Ne.unbind(document,"keyup",this.keyup)}}]),ve}(lt);function $r(e,t){return e.length<=t?e:"".concat(e.substring(0,t/2),"...").concat(e.substring(e.length-t/2))}function ea(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var ta="order",na="match",ra="bondpost",aa="conn";function oa(){return"desktop_notifications-".concat(window.location.host)}var sa,ia=(h(Kr={},ta,"BROWSER_NTFN_ORDERS"),h(Kr,na,"BROWSER_NTFN_MATCHES"),h(Kr,ra,"BROWSER_NTFN_BONDS"),h(Kr,aa,"BROWSER_NTFN_CONNECTIONS"),Kr),ca=(h(Qr={},ta,!0),h(Qr,na,!0),h(Qr,ra,!0),h(Qr,aa,!0),function(){function e(){i(this,e)}var t,n;return d(e,null,[{key:"ntfnPermissionGranted",value:function(){return"granted"===window.Notification.permission}},{key:"ntfnPermissionDenied",value:function(){return"denied"===window.Notification.permission}},{key:"requestNtfnPermission",value:(n=s(f().mark((function t(){return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("Notification"in window){t.next=2;break}return t.abrupt("return");case 2:if(!e.ntfnPermissionGranted()){t.next=6;break}e.sendDesktopNotification(ke(ee)),t.next=10;break;case 6:if(e.ntfnPermissionDenied()){t.next=10;break}return t.next=9,Notification.requestPermission();case 9:e.sendDesktopNotification(ke(ee));case 10:case"end":return t.stop()}}),t)}))),function(){return n.apply(this,arguments)})},{key:"sendDesktopNotification",value:(t=s(f().mark((function t(n,r){var a;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.ntfnPermissionGranted()){t.next=2;break}return t.abrupt("return");case 2:return a=new window.Notification(n,{body:r,icon:"/img/softened-icon.png"}),t.abrupt("return",a);case 4:case"end":return t.stop()}}),t)}))),function(e,n){return t.apply(this,arguments)})}]),e}()),la=function(){function e(){i(this,e)}var t,n;return d(e,null,[{key:"ntfnPermissionGranted",value:function(){return!0}},{key:"ntfnPermissionDenied",value:function(){return!1}},{key:"requestNtfnPermission",value:(n=s(f().mark((function t(){return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.sendDesktopNotification(ke(ee));case 2:return t.abrupt("return",Promise.resolve());case 3:case"end":return t.stop()}}),t)}))),function(){return n.apply(this,arguments)})},{key:"sendDesktopNotification",value:(t=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!ua()){e.next=5;break}return e.next=3,window.sendOSNotification(t,n);case 3:e.next=11;break;case 5:if(!da()){e.next=10;break}return e.next=8,window.webkit.messageHandlers.bwHandler.postMessage(["sendOSNotification",t,n]);case 8:e.next=11;break;case 10:console.error("sendDesktopNotification: unknown environment");case 11:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})}]),e}();function ua(){return void 0!==window.isWebview}function da(){var e,t;return void 0!==(null===(e=window.webkit)||void 0===e||null===(t=e.messageHandlers)||void 0===t?void 0:t.bwHandler)}var ha=ua()||da()?la:ca;function pa(){return(pa=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(sa.browserNtfnEnabled&&sa[t.type]){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,ha.sendDesktopNotification(t.subject,ya(t.details));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function fa(){var e;if(void 0!==sa)return sa;var t=oa();return sa=null!==(e=k.fetchLocal(t))&&void 0!==e?e:{}}var va=/\{\{\{([^|]+)\|([^}]+)\}\}\}/g,ma=/\{\{\{order\|([^}]+)\}\}\}/g;function ga(e,t){for(var n=t.replace(ma,(function(e,t){var n=document.createElement("a");return n.setAttribute("href","/order/"+t),n.setAttribute("class","subtlelink"),n.textContent=t.slice(0,8),n.outerHTML})).replace(va,(function(e,t,n){var r=document.createElement("a");return r.setAttribute("data-explorer-coin",n),r.setAttribute("target","_blank"),r.textContent=n.slice(0,8),Pn(t,r),r.outerHTML})),r=Ne.noderize(n).body;r.firstChild;)e.appendChild(r.firstChild)}function ya(e){return e.replace(va,(function(e,t,n){return n.slice(0,8)}))}var ba=["bonds"];var xa=function(e){g(A,e);var t,n,r,a,o,c,l,u,p,m,x,w,C,F,T,D,I=(T=A,D=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(e){return!1}}(),function(){var e,t=b(T);if(D){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function A(e){var t;i(this,A),h(v(t=I.call(this)),"body",void 0),h(v(t),"currentDEX",void 0),h(v(t),"page",void 0),h(v(t),"forms",void 0),h(v(t),"fiatRateSources",void 0),h(v(t),"regAssetForm",void 0),h(v(t),"confirmRegisterForm",void 0),h(v(t),"newWalletForm",void 0),h(v(t),"walletWaitForm",void 0),h(v(t),"dexAddrForm",void 0),h(v(t),"appPassResetForm",void 0),h(v(t),"currentForm",void 0),h(v(t),"keyup",void 0),t.body=e;var n=t.page=Ne.idDescendants(e);t.forms=Ne.applySelector(n.forms,":scope > form"),t.fiatRateSources=Ne.applySelector(n.fiatRateSources,"input[type=checkbox]"),n.darkMode.checked="1"===k.fetchLocal(k.darkModeLK),Ne.bind(n.darkMode,"click",(function(){k.storeLocal(k.darkModeLK,n.darkMode.checked?"1":"0"),n.darkMode.checked?document.body.classList.add("dark"):document.body.classList.remove("dark")})),n.showPokes.checked="1"===k.fetchLocal(k.popupsLK),Ne.bind(n.showPokes,"click",(function(){var e=n.showPokes.checked||!1;k.storeLocal(k.popupsLK,e?"1":"0"),ft().showPopups=e})),n.commitHash.textContent=ft().commitHash.substring(0,7),Ne.bind(n.addADex,"click",(function(){t.dexAddrForm.refresh(),t.showForm(n.dexAddrForm)})),t.fiatRateSources.forEach((function(e){Ne.bind(e,"change",s(f().mark((function t(){var n;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,S("/api/toggleratesource",{disable:!e.checked,source:e.value});case 2:return n=t.sent,ft().checkResponse(n)||(e.checked=!e.checked),t.next=6,ft().fetchUser();case 6:case"end":return t.stop()}}),t)}))))})),t.regAssetForm=new gr(n.regAssetForm,function(){var e=s(f().mark((function e(r,a){var o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r!==pt){e.next=5;break}return e.next=3,ft().fetchUser();case 3:return window.location.reload(),e.abrupt("return");case 5:if(o=ft().assets[r],!(s=o.wallet)){e.next=19;break}return i=t.currentDEX.bondAssets[o.symbol],e.next=11,t.getBondsFeeBuffer(r,n.regAssetForm);case 11:if(c=e.sent,t.confirmRegisterForm.setAsset(r,a,c),!(s.synced&&s.balance.available>=2*i.amount+c)){e.next=16;break}return t.animateConfirmForm(n.regAssetForm),e.abrupt("return");case 16:return t.walletWaitForm.setWallet(r,c,a),t.slideSwap(n.walletWait),e.abrupt("return");case 19:t.confirmRegisterForm.setAsset(r,a,0),t.newWalletForm.setAsset(r),t.slideSwap(n.newWalletForm);case 22:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),t.confirmRegisterForm=new mr(n.confirmRegForm,(function(){t.registerDEXSuccess()}),(function(){t.animateRegAsset(n.confirmRegForm)})),t.newWalletForm=new pr(n.newWalletForm,(function(e){return t.newWalletCreated(e,t.confirmRegisterForm.tier)}),(function(){return t.animateRegAsset(n.newWalletForm)})),t.walletWaitForm=new yr(n.walletWait,(function(){t.animateConfirmForm(n.walletWait)}),(function(){t.animateRegAsset(n.walletWait)})),t.dexAddrForm=new xr(n.dexAddrForm,function(){var e=s(f().mark((function e(r,a){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.currentDEX=r,t.confirmRegisterForm.setExchange(r,a),t.walletWaitForm.setExchange(r),t.regAssetForm.setExchange(r,a),t.animateRegAsset(n.dexAddrForm);case 5:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),Ne.bind(n.importAccount,"click",(function(){return t.prepareAccountImport(n.authorizeAccountImportForm)})),Br(n.authorizeAccountImportForm,n.authorizeImportAccountConfirm,(function(){return t.importAccount()})),Ne.bind(n.changeAppPW,"click",(function(){return t.showForm(n.changeAppPWForm)})),Br(n.changeAppPWForm,n.submitNewPW,(function(){return t.changeAppPW()})),t.appPassResetForm=new Sr(n.resetAppPWForm,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().loadPage("login");case 2:Ne.hide(n.forms);case 3:case"end":return e.stop()}}),e)})))),Ne.bind(n.resetAppPW,"click",(function(){t.appPassResetForm.refresh(),t.showForm(n.resetAppPWForm),t.appPassResetForm.focus()})),Ne.bind(n.accountFile,"change",(function(){return t.onAccountFileChange()})),Ne.bind(n.removeAccount,"click",(function(){return t.clearAccountFile()})),Ne.bind(n.addAccount,"click",(function(){return n.accountFile.click()})),Ne.bind(n.exportSeed,"click",(function(){Ne.hide(n.exportSeedErr),t.showForm(n.exportSeedAuth)})),Br(n.exportSeedAuth,n.exportSeedSubmit,(function(){return t.submitExportSeedReq()})),Ne.bind(n.gameCodeLink,"click",(function(){return t.showForm(n.gameCodeForm)})),Ne.bind(n.gameCodeSubmit,"click",(function(){return t.submitGameCode()}));var r=function(){Ne.hide(n.forms),n.exportSeedPW.value="",n.legacySeed.textContent="",n.mnemonic.textContent=""};return Ne.bind(n.forms,"mousedown",(function(e){Ne.mouseInElement(e,t.currentForm)||r()})),t.keyup=function(e){"Escape"===e.key&&r()},Ne.bind(document,"keyup",t.keyup),n.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){r()}))})),t.renderDesktopNtfnSettings(),t}return d(A,[{key:"updateNtfnSetting",value:function(e){var t=e.target,n=t.getAttribute("name");null!==n&&function(e,t){fa(),sa[e]=t,k.storeLocal(oa(),sa)}(n,t.checked)}},{key:"getBrowserNtfnSettings",value:function(){return fa()}},{key:"renderDesktopNtfnSettings",value:(F=s(f().mark((function e(){var t,n,r,a,o,i,c=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,n=this.getBrowserNtfnSettings(),r=ia,(a=t.browserNtfnCheckboxTemplate).removeAttribute("id"),o=t.browserNtfnCheckboxContainer,Ne.empty(t.browserNtfnCheckboxContainer),Object.keys(r).forEach((function(e){var t=a.cloneNode(!0),s=n[e],i=Ne.tmplElement(t,"checkbox");Ne.tmplElement(t,"label").textContent=ke(r[e]),i.setAttribute("name",e),s&&i.setAttribute("checked","checked"),o.appendChild(t),Ne.bind(i,"click",c.updateNtfnSetting)})),i=t.browserNtfnEnabled,Ne.bind(i,"click",function(){var e=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!ha.ntfnPermissionDenied()){e.next=2;break}return e.abrupt("return");case 2:if(!(n=t.target).checked){e.next=7;break}return e.next=6,ha.requestNtfnPermission();case 6:n.checked=!ha.ntfnPermissionDenied();case 7:c.updateNtfnSetting(t),n.dispatchEvent(new Event("change"));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Ne.bind(i,"change",(function(e){var n=e.target,r=ha.ntfnPermissionDenied();Ne.setVis(n.checked,t.browserNtfnCheckboxContainer),Ne.setVis(r,t.browserNtfnBlockedMsg),n.disabled=r})),i.checked=ha.ntfnPermissionGranted()&&n.browserNtfnEnabled,i.dispatchEvent(new Event("change"));case 13:case"end":return e.stop()}}),e,this)}))),function(){return F.apply(this,arguments)})},{key:"slideSwap",value:function(e){Ar(this.currentForm,e),this.currentForm=e}},{key:"getBondsFeeBuffer",value:(C=s(f().mark((function e(t,n){var r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=ft().loading(n),e.next=3,S("/api/bondsfeebuffer",{assetID:t});case 3:if(a=e.sent,r(),ft().checkResponse(a)){e.next=7;break}return e.abrupt("return",0);case 7:return e.abrupt("return",a.feeBuffer);case 8:case"end":return e.stop()}}),e)}))),function(e,t){return C.apply(this,arguments)})},{key:"newWalletCreated",value:(w=s(f().mark((function e(t,n){var r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchUser();case 2:if(r=e.sent){e.next=5;break}return e.abrupt("return");case 5:return a=this.page,o=r.assets[t],s=o.wallet,i=this.currentDEX.bondAssets[o.symbol].amount,e.next=11,this.getBondsFeeBuffer(t,a.newWalletForm);case 11:if(c=e.sent,this.confirmRegisterForm.setFees(t,c),!(s.synced&&s.balance.available>=2*i+c)){e.next=17;break}return e.next=16,this.animateConfirmForm(a.newWalletForm);case 16:return e.abrupt("return");case 17:this.walletWaitForm.setWallet(t,c,n),this.slideSwap(a.walletWait);case 19:case"end":return e.stop()}}),e,this)}))),function(e,t){return w.apply(this,arguments)})},{key:"onAccountFileChange",value:(x=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,(n=t.accountFile.files)&&n.length){e.next=4;break}return e.abrupt("return");case 4:t.selectedAccount.textContent=n[0].name,Ne.show(t.removeAccount),Ne.hide(t.addAccount);case 7:case"end":return e.stop()}}),e,this)}))),function(){return x.apply(this,arguments)})},{key:"clearAccountFile",value:function(){var e=this.page;e.accountFile.value="",e.selectedAccount.textContent=ke(j),Ne.hide(e.removeAccount),Ne.show(e.addAccount)}},{key:"prepareAccountImport",value:(m=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.page.importAccountErr.textContent="",this.showForm(t);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"importAccount",value:(p=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n="",!t.accountFile.value){e.next=10;break}if((r=t.accountFile.files)&&r.length){e.next=7;break}return console.error("importAccount: no file specified"),e.abrupt("return");case 7:return e.next=9,r[0].text();case 9:n=e.sent;case 10:e.prev=10,a=JSON.parse(n),e.next=19;break;case 14:return e.prev=14,e.t0=e.catch(10),t.importAccountErr.textContent=e.t0.message,Ne.show(t.importAccountErr),e.abrupt("return");case 19:if(void 0!==a){e.next=22;break}return Ne.showFormError(t.importAccountErr,ke("ACCT_UNDEFINED")),e.abrupt("return");case 22:return s=(o=a).bonds,i=void 0===s?[]:s,c=ea(o,ba),l={account:c,bonds:i},u=ft().loading(this.body),e.next=27,S("/api/importaccount",l);case 27:if(d=e.sent,u(),ft().checkResponse(d)){e.next=32;break}return Ne.showFormError(t.importAccountErr,d.msg),e.abrupt("return");case 32:return e.next=34,ft().fetchUser();case 34:Ne.hide(t.forms),window.location.reload();case 36:case"end":return e.stop()}}),e,this,[[10,14]])}))),function(){return p.apply(this,arguments)})},{key:"submitExportSeedReq",value:(u=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=t.exportSeedPW.value,r=ft().loading(this.body),e.next=5,S("/api/exportseed",{pass:n});case 5:if(a=e.sent,r(),ft().checkResponse(a)){e.next=10;break}return Ne.showFormError(t.exportSeedErr,a.msg),e.abrupt("return");case 10:t.exportSeedPW.value="",128===a.seed.length&&1===a.seed.split(" ").length?t.legacySeed.textContent=a.seed.match(/.{1,32}/g).map((function(e){var t;return null===(t=e.match(/.{1,8}/g))||void 0===t?void 0:t.join(" ")})).join("\n"):t.mnemonic.textContent=a.seed,this.showForm(t.authorizeSeedDisplay);case 13:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"showForm",value:(l=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,this.currentForm=t,this.forms.forEach((function(e){return Ne.hide(e)})),t.style.right="10000px",Ne.show(n.forms,t),r=(n.forms.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(300,(function(e){t.style.right="".concat((1-e)*r,"px")}),"easeOutHard");case 8:t.style.right="0";case 9:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"getCertFile",value:(c=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t="",!this.dexAddrForm.page.certFile.value){e.next=7;break}if(!(n=this.dexAddrForm.page.certFile.files)||!n.length){e.next=7;break}return e.next=6,n[0].text();case 6:t=e.sent;case 7:return e.abrupt("return",t);case 8:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"registerDEXSuccess",value:(o=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:window.location.reload();case 1:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"changeAppPW",value:(a=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.changePWErrMsg),n=function(){t.appPW.value="",t.newAppPW.value="",t.confirmNewPW.value=""},t.appPW.value&&t.newAppPW.value&&t.confirmNewPW.value){e.next=7;break}return Ne.showFormError(t.changePWErrMsg,ke("NO_APP_PASS_ERROR_MSG")),n(),e.abrupt("return");case 7:if(t.newAppPW.value===t.confirmNewPW.value){e.next=11;break}return Ne.showFormError(t.changePWErrMsg,ke(N)),n(),e.abrupt("return");case 11:return r=ft().loading(t.changeAppPW),a={appPW:t.appPW.value,newAppPW:t.newAppPW.value},n(),e.next=16,S("/api/changeapppass",a);case 16:if(o=e.sent,r(),ft().checkResponse(o)){e.next=21;break}return Ne.showFormError(t.changePWErrMsg,o.msg),e.abrupt("return");case 21:Ne.hide(t.forms);case 22:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"unload",value:function(){Ne.unbind(document,"keyup",this.keyup)}},{key:"animateRegAsset",value:(r=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:Ne.hide(t),n=this.page.regAssetForm,this.currentForm=n,this.regAssetForm.animate(),Ne.show(n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"animateConfirmForm",value:(n=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.confirmRegisterForm.animate(),n=this.page.confirmRegForm,this.currentForm=n,Ne.hide(t),Ne.show(n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"submitGameCode",value:(t=s(f().mark((function e(){var t,n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.gameCodeErr),n=t.gameCodeInput.value){e.next=7;break}return t.gameCodeErr.textContent=ke("NO_CODE_PROVIDED"),Ne.show(t.gameCodeErr),e.abrupt("return");case 7:return r=t.gameCodeMsg.value||"",a=ft().loading(t.gameCodeForm),e.next=11,S("/api/redeemgamecode",{code:n,msg:r});case 11:if(o=e.sent,a(),ft().checkResponse(o)){e.next=17;break}return t.gameCodeErr.textContent=ke(H,{msg:o.msg}),Ne.show(t.gameCodeErr),e.abrupt("return");case 17:Ne.show(t.gameCodeSuccess),t.gameRedeemTx.dataset.explorerCoin=o.coinString,Pn(42,t.gameRedeemTx),t.gameRedeemTx.textContent=o.coinString,s=ft().unitInfo(42),t.gameRedeemValue.textContent=Ne.formatCoinValue(o.win,s);case 24:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),A}(lt);function ka(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var wa=function(){function e(t,n,r){i(this,e),h(this,"base",void 0),h(this,"baseSymbol",void 0),h(this,"quote",void 0),h(this,"quoteSymbol",void 0),h(this,"buys",void 0),h(this,"sells",void 0),this.base=t.base,this.baseSymbol=n,this.quote=t.quote,this.quoteSymbol=r,this.buys=t.book.buys||[],this.sells=t.book.sells||[]}return d(e,[{key:"add",value:function(e){if(0!==e.qtyAtomic){var t=e.sell?this.sells:this.buys;t.splice(function(e,t,n){for(var r=0;r<e.length;r++)if(e[r].rate<t===n)return r;return e.length}(t,e.rate,!e.sell),0,e)}else window.log("zeroqty","zero quantity order encountered",e)}},{key:"remove",value:function(e){this.removeFromSide(this.sells,e)||this.removeFromSide(this.buys,e)}},{key:"removeFromSide",value:function(e,t){var n=a(this.findOrder(e,t),2),r=n[0],o=n[1];return!!r&&(e.splice(o,1),!0)}},{key:"findOrder",value:function(e,t){for(var n=0;n<e.length;n++)if(e[n].token===t)return[e[n],n];return[null,-1]}},{key:"updateRemaining",value:function(e,t,n){this.updateRemainingSide(this.sells,e,t,n)||this.updateRemainingSide(this.buys,e,t,n)}},{key:"updateRemainingSide",value:function(e,t,n,r){var a=this.findOrder(e,t)[0];return!!a&&(a.qty=n,a.qtyAtomic=r,!0)}},{key:"setEpoch",value:function(e){var t=function(t){return void 0===t.epoch||0===t.epoch||t.epoch===e};this.sells=this.sells.filter(t),this.buys=this.buys.filter(t)}},{key:"empty",value:function(){return!this.sells.length&&!this.buys.length}},{key:"count",value:function(){return this.sells.length+this.buys.length}},{key:"bestGapOrder",value:function(e){var t,n=null,r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ka(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ka(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}(e);try{for(r.s();!(t=r.n()).done;){var a=t.value;if(!a.epoch)return a;n||(n=a)}}catch(e){r.e(e)}finally{r.f()}return n}},{key:"bestGapBuy",value:function(){return this.bestGapOrder(this.buys)}},{key:"bestGapSell",value:function(){return this.bestGapOrder(this.sells)}}]),e}();function Ca(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Sa(e,t,n){if(e||!t.error){if(void 0!==n[e])for(var r=0;r<n[e].length;r++)n[e][r](t)}else{var a=t.error;console.error("websocket error (code ".concat(a.code,"): ").concat(a.message))}}var Fa=0;const Ta=new(function(){function e(){i(this,e),h(this,"uri",void 0),h(this,"connection",void 0),h(this,"handlers",void 0),h(this,"queue",void 0),h(this,"maxQlength",void 0),h(this,"reloader",void 0),this.handlers={},this.queue=[],this.maxQlength=5}return d(e,[{key:"registerRoute",value:function(e,t){this.handlers[e]=this.handlers[e]||[],this.handlers[e].push(t)}},{key:"deregisterRoute",value:function(e){this.handlers[e]=[]}},{key:"request",value:function(e,t){if(this.connection&&this.connection.readyState===window.WebSocket.OPEN){Fa++;var n=JSON.stringify({route:e,type:1,id:Fa,payload:t});window.log("ws","sending",n),this.connection.send(n)}else{for(;this.queue.length>this.maxQlength-1;)this.queue.shift();this.queue.push([e,t])}}},{key:"close",value:function(e){window.log("ws","close, reason:",e,this.handlers),this.handlers={},this.connection&&this.connection.close()}},{key:"connect",value:function(e,t){var n=this;this.uri=e,this.reloader=t;var r=0;!function o(){window.log("ws","connecting to ".concat(e));var s=n.connection=new window.WebSocket(e);if(s){var i=setTimeout((function(){s&&s.close()}),500);s.onmessage=function(e){var t=JSON.parse(e.data);Sa(t.route,t.payload,n.handlers)},s.onclose=function(e){window.log("ws","onclose"),clearTimeout(i),s=n.connection=null,Sa("close",null,n.handlers),r++;var t=Math.min(Math.pow(1.25,r),10);console.error("websocket disconnected (".concat(e.code,"), trying again in ").concat(t.toFixed(1)," seconds")),setTimeout((function(){o()}),1e3*t)},s.onopen=function(){window.log("ws","onopen"),clearTimeout(i),r>0&&(r=0,t()),Sa("open",null,n.handlers);var e=n.queue;n.queue=[];var o,s=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ca(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ca(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}(e);try{for(s.s();!(o=s.n()).done;){var c=a(o.value,2),l=c[0],u=c[1];n.request(l,u)}}catch(e){s.e(e)}finally{s.f()}},s.onerror=function(e){window.log("ws","onerror:",e),Sa("error",e,n.handlers)}}}()}}]),e}());function Da(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ia(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Da(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Da(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Aa(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ra(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ra(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Ra(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ea=Ne.bind,Ba="book",Pa="book_order",La="unbook_order",Oa="update_remaining",Ma="epoch_order",qa="candles",Na="candle_update",Wa="buygreen-bg",Va="sellred-bg",Ua="5m",_a=new Intl.NumberFormat(Ne.languages(),{minimumFractionDigits:1,maximumFractionDigits:2}),ja=4294967295,Ha=function(e){g(_,e);var t,n,o,c,l,u,p,m,x,w,C,F,T,D,I,A,R,q,N,W,V,U=(W=_,V=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(e){return!1}}(),function(){var e,t=b(W);if(V){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function _(e,t){var n;i(this,_),h(v(n=U.call(this)),"page",void 0),h(v(n),"main",void 0),h(v(n),"maxLoaded",void 0),h(v(n),"maxOrderUpdateCounter",void 0),h(v(n),"market",void 0),h(v(n),"openAsset",void 0),h(v(n),"currentCreate",void 0),h(v(n),"maxEstimateTimer",void 0),h(v(n),"book",void 0),h(v(n),"cancelData",void 0),h(v(n),"metaOrders",void 0),h(v(n),"preorderCache",void 0),h(v(n),"currentOrder",void 0),h(v(n),"depthLines",void 0),h(v(n),"activeMarkerRate",void 0),h(v(n),"hovers",void 0),h(v(n),"ogTitle",void 0),h(v(n),"depthChart",void 0),h(v(n),"candleChart",void 0),h(v(n),"candleDur",void 0),h(v(n),"balanceWgt",void 0),h(v(n),"mm",void 0),h(v(n),"marketList",void 0),h(v(n),"newWalletForm",void 0),h(v(n),"depositAddrForm",void 0),h(v(n),"approveTokenForm",void 0),h(v(n),"reputationMeter",void 0),h(v(n),"keyup",void 0),h(v(n),"secondTicker",void 0),h(v(n),"candlesLoading",void 0),h(v(n),"accelerateOrderForm",void 0),h(v(n),"recentMatches",void 0),h(v(n),"recentMatchesSortKey",void 0),h(v(n),"recentMatchesSortDirection",void 0),h(v(n),"stats",void 0),h(v(n),"loadingAnimations",void 0),h(v(n),"mmRunning",void 0),h(v(n),"forms",void 0);var r=n.page=Ne.idDescendants(e);if(n.main=e,!n.main.parentElement)return y(n);n.maxOrderUpdateCounter=0,n.metaOrders={},n.recentMatches=[],n.preorderCache={},n.depthLines={hover:[],input:[]},n.hovers=[],n.recentMatchesSortKey="age",n.recentMatchesSortDirection=-1,n.ogTitle=document.title,n.forms=new hr(r.forms,{closed:function(e){e===r.vDetailPane&&n.showVerifyForm()}});var a={click:function(e){n.reportDepthClick(e)},volume:function(e){n.reportDepthVolume(e)},mouse:function(e){n.reportDepthMouse(e)},zoom:function(e){n.reportDepthZoom(e)}};n.depthChart=new Kt(r.depthChart,a,k.fetchLocal(k.depthZoomLK));var o={mouse:function(e){n.reportMouseCandle(e)}};n.candleChart=new Qt(r.candlesChart,o),n.accelerateOrderForm=new br(r.accelerateForm,(function(){})),n.approveTokenForm=new Tr(r.approveTokenForm),n.candleDur=k.fetchLocal(k.lastCandleDurationLK)||"1h";var c=Ne.tmplElement(r.notRegistered,"registerBttn");Ea(c,"click",(function(){ft().loadPage("register",{host:n.market.dex.host})})),r.walletInfoTmpl.removeAttribute("id");var l=r.walletInfoTmpl,u=r.walletInfoTmpl.cloneNode(!0);l.after(u);var d=n.balanceWgt=new Xa(l,u),p=d.base.stateIcons.icons,m=d.quote.stateIcons.icons;Ea(d.base.tmpl.connect,"click",(function(){n.unlockWallet(n.market.base.id)})),Ea(d.quote.tmpl.connect,"click",(function(){n.unlockWallet(n.market.quote.id)})),Ea(d.base.tmpl.expired,"click",(function(){n.unlockWallet(n.market.base.id)})),Ea(d.quote.tmpl.expired,"click",(function(){n.unlockWallet(n.market.quote.id)})),Ea(p.sleeping,"click",(function(){n.unlockWallet(n.market.base.id)})),Ea(m.sleeping,"click",(function(){n.unlockWallet(n.market.quote.id)})),Ea(p.locked,"click",(function(){n.unlockWallet(n.market.base.id)})),Ea(m.locked,"click",(function(){n.unlockWallet(n.market.quote.id)})),Ea(p.disabled,"click",(function(){n.showToggleWalletStatus(n.market.base)})),Ea(m.disabled,"click",(function(){n.showToggleWalletStatus(n.market.quote)})),Ea(d.base.tmpl.newWalletBttn,"click",(function(){n.showCreate(n.market.base)})),Ea(d.quote.tmpl.newWalletBttn,"click",(function(){n.showCreate(n.market.quote)})),Ea(d.base.tmpl.walletAddr,"click",(function(){n.showDeposit(n.market.base.id)})),Ea(d.quote.tmpl.walletAddr,"click",(function(){n.showDeposit(n.market.quote.id)})),Ea(d.base.tmpl.wantProviders,"click",(function(){n.showCustomProviderDialog(n.market.base.id)})),Ea(d.quote.tmpl.wantProviders,"click",(function(){n.showCustomProviderDialog(n.market.quote.id)})),n.depositAddrForm=new Cr(r.deposit);var g={orderReportForm:r.orderReportForm,dexBalancesRowTmpl:r.dexBalancesRowTmpl,placementRowTmpl:r.placementRowTmpl,placementAmtRowTmpl:r.placementAmtRowTmpl};Ne.cleanTemplates(r.dexBalancesRowTmpl,r.placementRowTmpl,r.placementAmtRowTmpl),n.mm=new ar(r.mmRunning,n.forms,g,"markets"),n.reputationMeter=new un(r.reputationMeter),Br(r.toggleWalletStatusConfirm,r.toggleWalletStatusSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.toggleWalletStatus();case 1:case"end":return e.stop()}}),e)})))),mt(r),Ne.cleanTemplates(r.orderRowTmpl,r.durBttnTemplate,r.booleanOptTmpl,r.rangeOptTmpl,r.orderOptTmpl,r.userOrderTmpl,r.recentMatchesTemplate),Ea(r.approveBaseBttn,"click",(function(){n.showTokenApprovalForm(!0)})),Ea(r.approveQuoteBttn,"click",(function(){n.showTokenApprovalForm(!1)}));var b=function(e){Ne.setVis(!e,r.showTradingTier),Ne.setVis(e,r.tradingLimits,r.hideTradingTier)};Ea(r.showTradingTier,"click",(function(){b(!0)})),Ea(r.hideTradingTier,"click",(function(){b(!1)}));var x=function(e){Ne.setVis(!e,r.showTradingReputation),Ne.setVis(e,r.reputationMeter,r.hideTradingReputation)};Ea(r.showTradingReputation,"click",(function(){x(!0)})),Ea(r.hideTradingReputation,"click",(function(){x(!1)})),Ea(r.buyBttn,"click",(function(){n.setBuy()})),Ea(r.sellBttn,"click",(function(){n.setSell()})),Ea(r.limitBttn,"click",(function(){Ja(r.marketBttn,r.limitBttn),n.setOrderVisibility(),r.rateField.value&&(n.depthLines.input=[{rate:tt(r.rateField.value,0),color:n.isSell()?n.depthChart.theme.sellLine:n.depthChart.theme.buyLine}],n.drawChartLines())})),Ea(r.marketBttn,"click",(function(){Ja(r.limitBttn,r.marketBttn),n.setOrderVisibility(),n.setMarketBuyOrderEstimate(),n.depthLines.input=[],n.drawChartLines()})),Ea(r.maxOrd,"click",(function(){if(n.isSell()){var e=n.market.maxSell;if(!e)return;r.lotField.value=String(e.swap.lots)}else{var t=n.market.maxBuys[n.adjustedRate()];if(!t)return;r.lotField.value=String(t.swap.lots)}n.lotChanged()})),Ne.disableMouseWheel(r.rateField,r.lotField,r.qtyField,r.mktBuyField),Ta.registerRoute(Ba,(function(e){n.handleBookRoute(e)})),Ta.registerRoute(Pa,(function(e){n.handleBookOrderRoute(e)})),Ta.registerRoute(La,(function(e){n.handleUnbookOrderRoute(e)})),Ta.registerRoute(Oa,(function(e){n.handleUpdateRemainingRoute(e)})),Ta.registerRoute(Ma,(function(e){n.handleEpochOrderRoute(e)})),Ta.registerRoute(qa,(function(e){n.handleCandlesRoute(e)})),Ta.registerRoute(Na,(function(e){n.handleCandleUpdateRoute(e)})),Ta.registerRoute("epoch_match_summary",(function(e){n.handleEpochMatchSummary(e)})),n.newWalletForm=new pr(r.newWalletForm,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.createWallet();case 1:case"end":return e.stop()}}),e)})))),Br(r.orderForm,r.submitBttn,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.stepSubmit();case 1:case"end":return e.stop()}}),e)})))),Br(r.verifyForm,r.vSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.submitOrder();case 1:case"end":return e.stop()}}),e)})))),Br(r.cancelForm,r.cancelSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.submitCancel();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.vFeeDetails,"click",(function(){return n.forms.show(r.vDetailPane)})),Ne.bind(r.closeDetailPane,"click",(function(){return n.showVerifyForm()})),r.recentMatchesTable.querySelectorAll("[data-ordercol]").forEach((function(e){return Ea(e,"click",(function(){return w(e.dataset.ordercol||"")}))}));var w=function(e){C(),n.recentMatchesSortKey===e?n.recentMatchesSortDirection*=-1:(n.recentMatchesSortKey=e,n.recentMatchesSortDirection=1),n.refreshRecentMatchesTable(),S()},C=function(){r.recentMatchesTable.querySelectorAll("[data-ordercol]").forEach((function(e){return e.classList.remove("sorted-asc","sorted-dsc")}))},S=function(){var e=n.recentMatchesSortKey,t=1===n.recentMatchesSortDirection?"sorted-asc":"sorted-dsc";Ne.safeSelector(r.recentMatchesTable,"[data-ordercol=".concat(e,"]")).classList.add(t)};S();var F=function(){n.forms.close()};n.keyup=function(e){"Escape"===e.key&&F()},Ea(document,"keyup",n.keyup),r.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){F()}))})),Ea(r.lotField,["change","keyup"],(function(){n.lotChanged()})),Ea(r.qtyField,"change",(function(){n.quantityChanged(!0)})),Ea(r.qtyField,"keyup",(function(){n.quantityChanged(!1)})),Ea(r.mktBuyField,["change","keyup"],(function(){n.marketBuyChanged()})),Ea(r.rateField,"change",(function(){n.rateFieldChanged()})),Ea(r.rateField,"keyup",(function(){n.previewQuoteAmt(!0)})),Ea(r.marketSearchV1,["change","keyup"],(function(){n.filterMarkets()}));var T=function(e){Ne.setVis(!e,r.disclaimer,r.disclaimerAck),Ne.setVis(e,r.showDisclaimer)};Ea(r.disclaimerAck,"click",(function(){k.storeLocal(k.orderDisclaimerAckedLK,!0),T(!0)})),Ea(r.showDisclaimer,"click",(function(){k.storeLocal(k.orderDisclaimerAckedLK,!1),T(!1)})),T(k.fetchLocal(k.orderDisclaimerAckedLK));var D=function(){n.depthLines.hover=[],n.drawChartLines()};Ea(r.buyRows,"mouseleave",D),Ea(r.sellRows,"mouseleave",D),Ea(r.userOrders,"mouseleave",(function(){n.activeMarkerRate=null,n.setDepthMarkers()}));var I=r.marketStats,A=I.cloneNode(!0);A.classList.add("listopen"),Ne.hide(I,A),A.removeAttribute("id"),ft().headerSpace.appendChild(A),n.stats=[{row:I,tmpl:Ne.parseTemplate(I)},{row:A,tmpl:Ne.parseTemplate(A)}];var R=function(){k.storeLocal(k.leftMarketDockLK,"0"),r.leftMarketDock.classList.remove("default"),r.leftMarketDock.classList.add("stashed");var e,t=Aa(n.stats);try{for(t.s();!(e=t.n()).done;)e.value.row.classList.remove("listopen")}catch(e){t.e(e)}finally{t.f()}},E=function(){k.storeLocal(k.leftMarketDockLK,"1"),r.leftMarketDock.classList.remove("default","stashed");var e,t=Aa(n.stats);try{for(t.s();!(e=t.n()).done;)e.value.row.classList.add("listopen")}catch(e){t.e(e)}finally{t.f()}};Ne.bind(r.leftHider,"click",(function(){return R()})),Ne.bind(r.marketReopener,"click",(function(){return E()}));var B,P=Aa(n.stats);try{for(P.s();!(B=P.n()).done;){var L=B.value;Ne.bind(L.tmpl.marketSelect,"click",(function(){0===r.leftMarketDock.clientWidth?E():R()}))}}catch(e){P.e(e)}finally{P.f()}n.marketList=new za(r.marketListV1);var O,M=Aa(n.marketList.markets);try{var q=function(){var e=O.value;Ea(e.node,"click",(function(){var t,r,a,o,s=e.mkt,i=s.quoteid,c=s.baseid,l=s.xc.host;(null===(t=n.market)||void 0===t||null===(r=t.base)||void 0===r?void 0:r.id)===c&&(null===(a=n.market)||void 0===a||null===(o=a.quote)||void 0===o?void 0:o.id)===i||(n.startLoadingAnimations(),n.setMarket(l,c,i))}))};for(M.s();!(O=M.n()).done;)q()}catch(e){M.e(e)}finally{M.f()}return"1"!==k.fetchLocal(k.leftMarketDockLK)&&R(),ft().registerNoteFeeder({order:function(e){n.handleOrderNote(e)},match:function(e){n.handleMatchNote(e)},epoch:function(e){n.handleEpochNote(e)},conn:function(e){n.handleConnNote(e)},balance:function(e){n.handleBalanceNote(e)},bondpost:function(e){n.handleBondUpdate(e)},spots:function(e){n.handlePriceUpdate(e)},walletstate:function(e){n.handleWalletState(e)},reputation:function(){n.updateReputation()},feepayment:function(){n.updateReputation()},runstats:function(e){e.baseID===n.market.base.id&&e.quoteID===n.market.quote.id&&e.host===n.market.dex.host&&(n.mm.update(),Boolean(n.mmRunning)!==Boolean(e.stats)&&(n.mmRunning=Boolean(e.stats),n.resolveOrderFormVisibility()))},epochreport:function(e){e.baseID===n.market.base.id&&e.quoteID===n.market.quote.id&&e.host===n.market.dex.host&&n.mm.handleEpochReportNote(e)},cexproblems:function(e){e.baseID===n.market.base.id&&e.quoteID===n.market.quote.id&&e.host===n.market.dex.host&&n.mm.handleCexProblemsNote(e)},runevent:function(e){e.baseID===n.market.base.id&&e.quoteID===n.market.quote.id&&e.host===n.market.dex.host&&n.mm.update()}}),n.loadingAnimations={},n.startLoadingAnimations(),n.secondTicker=window.setInterval((function(){for(var e=0,t=Object.values(n.metaOrders);e<t.length;e++){var a=t[e];a.details.age.textContent=Ne.timeSince(a.ord.submitTime)}var o,s=Aa(Ne.applySelector(r.recentMatchesLiveList,"[data-tmpl=age]"));try{for(s.s();!(o=s.n()).done;){var i,c=o.value;c.textContent=Ne.timeSince(parseFloat(null!==(i=c.dataset.sinceStamp)&&void 0!==i?i:"0"))}}catch(e){s.e(e)}finally{s.f()}}),1e3),n.init(t),n}return d(_,[{key:"init",value:(N=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(n=null!=t&&t.host?Ka(t.host,parseInt(t.baseID),parseInt(t.quoteID)):k.fetchLocal(k.lastMarketLK))&&this.marketList.exists(n.host,n.base,n.quote)||(r=this.marketList.first())&&(n={host:r.mkt.xc.host,base:r.mkt.baseid,quote:r.mkt.quoteid}),n?this.setMarket(n.host,n.base,n.quote):this.balanceWgt.setBalanceVisibility(!1),this.setRegistrationStatusVisibility();case 4:case"end":return e.stop()}}),e,this)}))),function(e){return N.apply(this,arguments)})},{key:"startLoadingAnimations",value:function(){var e=this.page,t=this.loadingAnimations,n=this.depthChart,r=this.candleChart;n.canvas.classList.add("invisible"),r.canvas.classList.add("invisible"),t.candles&&t.candles.stop(),t.candles=new Yt(e.candlesChart,{message:ke("CANDLES_LOADING")}),t.depth&&t.depth.stop(),t.depth=new Yt(e.depthChart,{message:ke("DEPTH_LOADING")})}},{key:"isSell",value:function(){return this.page.sellBttn.classList.contains("selected")}},{key:"isLimit",value:function(){return this.page.limitBttn.classList.contains("selected")}},{key:"setBuy",value:function(){var e=this.page;Ja(e.sellBttn,e.buyBttn),e.submitBttn.classList.remove(Va),e.submitBttn.classList.add(Wa),e.maxLbl.textContent=ke(E),this.setOrderBttnText(),this.setOrderVisibility(),this.drawChartLines(),this.isLimit()?(this.currentOrder=this.parseOrder(),this.updateOrderBttnState()):this.marketBuyChanged()}},{key:"setSell",value:function(){var e=this.page;Ja(e.buyBttn,e.sellBttn),e.submitBttn.classList.add(Va),e.submitBttn.classList.remove(Wa),e.maxLbl.textContent=ke(B),this.setOrderBttnText(),this.setOrderVisibility(),this.drawChartLines(),this.currentOrder=this.parseOrder(),this.updateOrderBttnState()}},{key:"hasPendingBonds",value:function(){return Object.keys(this.market.dex.auth.pendingBonds||[]).length>0}},{key:"setCurrMarketPrice",value:function(){var e=this.market;if(e){var t=ft().exchanges[e.dex.host],n=t.markets[e.cfg.name];if(n.spot){var r,a=Aa(this.stats);try{for(a.s();!(r=a.n()).done;){var o=r.value,s=t.assets[n.baseid].unitInfo.conventional,i=s.conversionFactor,c=s.unit,l=ft().fiatRatesMap[n.baseid];l?(o.tmpl.volume.textContent=Ne.formatFourSigFigs(n.spot.vol24/i*l),o.tmpl.volUnit.textContent="USD"):(o.tmpl.volume.textContent=Ne.formatFourSigFigs(n.spot.vol24/i),o.tmpl.volUnit.textContent=c),eo(o.tmpl,t,n)}}catch(e){a.e(e)}finally{a.f()}this.page.obPrice.textContent=Ne.formatFourSigFigs(n.spot.rate/this.market.rateConversionFactor),this.page.obPrice.classList.remove("sellcolor","buycolor"),this.page.obPrice.classList.add(n.spot.change24>=0?"buycolor":"sellcolor"),Ne.setVis(n.spot.change24>=0,this.page.obUp),Ne.setVis(n.spot.change24<0,this.page.obDown)}}}},{key:"setMarketDetails",value:function(){if(this.market){var e,t=Aa(this.stats);try{for(t.s();!(e=t.n()).done;){var n=e.value,r=this.market,a=r.baseCfg,o=r.quoteCfg;n.tmpl.baseIcon.src=Ne.logoPath(a.symbol),n.tmpl.quoteIcon.src=Ne.logoPath(o.symbol),Ne.empty(n.tmpl.baseSymbol,n.tmpl.quoteSymbol),n.tmpl.baseSymbol.appendChild(Ne.symbolize(a,!0)),n.tmpl.quoteSymbol.appendChild(Ne.symbolize(o,!0))}}catch(e){t.e(e)}finally{t.f()}}}},{key:"setHighLow",value:function(){var e=0,t=0,n=this.market.cfg.spot;if(n&&n.low24&&n.high24)e=n.high24,t=n.low24;else{var r,a=null===(r=this.market)||void 0===r?void 0:r.candleCaches[Ua];if(!a){if(this.candleDur!==Ua)return void this.requestCandles(Ua);var o,s=Aa(this.stats);try{for(s.s();!(o=s.n()).done;){var i=o.value;i.tmpl.high.textContent="-",i.tmpl.low.textContent="-"}}catch(e){s.e(e)}finally{s.f()}return}for(var c=(new Date).getTime()-864e5,l=a.candles.length-1;l>=0;l--){var u=a.candles[l];if(u.endStamp<c)break;(0===t||u.lowRate>0&&u.lowRate<t)&&(t=u.lowRate),u.highRate>e&&(e=u.highRate)}}var d,h=this.market.base.id,p=this.market.quote.id,f=this.market.dex,v=Aa(this.stats);try{for(v.s();!(d=v.n()).done;){var m=d.value;m.tmpl.high.textContent=e>0?Ne.formatFourSigFigs(ft().conventionalRate(h,p,e,f)):"-",m.tmpl.low.textContent=t>0?Ne.formatFourSigFigs(ft().conventionalRate(h,p,t,f)):"-"}}catch(e){v.e(e)}finally{v.f()}}},{key:"assetsAreSupported",value:function(){var e,t,n,r,a=this.market,o=a.base,s=a.quote,i=a.baseCfg,c=a.quoteCfg;if(!o||!s)return{isSupported:!1,text:ke("NOT_SUPPORTED",{asset:(o?c.symbol:i.symbol).toUpperCase()})};var l=o.token?null===(e=ft().assets[o.token.parentID].info)||void 0===e?void 0:e.versions:null===(t=o.info)||void 0===t?void 0:t.versions,u=s.token?null===(n=ft().assets[s.token.parentID].info)||void 0===n?void 0:n.versions:null===(r=s.info)||void 0===r?void 0:r.versions,d="";return l.includes(i.version)?u.includes(c.version)||(d=ke(P,{asset:s.symbol.toUpperCase(),version:c.version+""})):d=ke(P,{asset:o.symbol.toUpperCase(),version:i.version+""}),{isSupported:l.includes(i.version)&&u.includes(c.version),text:d}}},{key:"setOrderVisibility",value:function(){var e=this.page;this.isLimit()?(Ne.show(e.priceBox,e.tifBox,e.qtyBox,e.maxBox),Ne.hide(e.mktBuyBox),this.previewQuoteAmt(!0)):(Ne.hide(e.tifBox,e.maxBox,e.priceBox),this.isSell()?(Ne.hide(e.mktBuyBox),Ne.show(e.qtyBox),this.previewQuoteAmt(!0)):(Ne.show(e.mktBuyBox),Ne.hide(e.qtyBox),this.previewQuoteAmt(!1))),this.updateOrderBttnState()}},{key:"resolveOrderFormVisibility",value:(q=s(f().mark((function e(){var t,n,r,a,o,i,c,l,u,d,h,p=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=function(){var e=s(f().mark((function e(){var t,n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(p.assetsAreSupported().isSupported){e.next=2;break}return e.abrupt("return",!1);case 2:if(p.market&&!(p.market.dex.auth.effectiveTier<1)){e.next=4;break}return e.abrupt("return",!1);case 4:if(t=p.tokenAssetApprovalStatuses(),n=t.baseAssetApprovalStatus,r=t.quoteAssetApprovalStatus,n===dt.Approved&&r===dt.Approved){e.next=7;break}return e.abrupt("return",!1);case 7:if(a=p.market,o=a.base,s=a.quote,o&&ft().assets[o.id].wallet&&s&&ft().assets[s.id].wallet){e.next=11;break}return e.abrupt("return",!1);case 11:if(!p.mmRunning){e.next=13;break}return e.abrupt("return",!1);case 13:return e.abrupt("return",!0);case 14:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),e.t0=Ne,e.next=5,n();case 5:e.t1=e.sent,e.t2=t.orderForm,e.t3=t.orderTypeBttns,e.t0.setVis.call(e.t0,e.t1,e.t2,e.t3),this.market&&(r=this.market.dex.auth,a=r.effectiveTier,o=r.pendingStrength,Ne.setVis(a>0||o>0,t.reputationAndTradingTierBox)),(i=ft().mmStatus)&&void 0===this.mmRunning&&this.market.base&&this.market.quote&&(c=this.market,l=c.base.id,u=c.quote.id,d=c.dex.host,h=i.bots.find((function(e){var t=e.config;return t.baseID===l&&t.quoteID===u&&t.host===d})),this.mmRunning=Boolean(null==h?void 0:h.running)),Ne.setVis(this.mmRunning,t.mmRunning),this.mmRunning&&Ne.hide(t.orderForm,t.orderTypeBttns);case 14:case"end":return e.stop()}}),e,this)}))),function(){return q.apply(this,arguments)})},{key:"setLoaderMsgVisibility",value:function(){var e=this.page,t=this.assetsAreSupported(),n=t.isSupported,r=t.text;n?Ne.hide(e.loaderMsg):(e.loaderMsg.textContent=r,Ne.show(e.loaderMsg),Ne.hide(e.notRegistered),Ne.hide(e.noWallet))}},{key:"showTokenApprovalForm",value:(R=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t?this.market.base.id:this.market.quote.id,this.approveTokenForm.setAsset(n,this.market.dex.host),this.forms.show(this.page.approveTokenForm);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return R.apply(this,arguments)})},{key:"tokenAssetApprovalStatuses",value:function(){var e=this.market,t=e.base,n=e.quote,r=dt.Approved,a=dt.Approved;if(null!=t&&t.token){var o,s=ft().assets[t.id],i=this.market.dex.assets[t.id].version;null!=s&&null!==(o=s.wallet)&&void 0!==o&&o.approved&&void 0!==s.wallet.approved[i]&&(r=s.wallet.approved[i])}if(null!=n&&n.token){var c,l=ft().assets[n.id],u=this.market.dex.assets[n.id].version;null!=l&&null!==(c=l.wallet)&&void 0!==c&&c.approved&&void 0!==l.wallet.approved[u]&&(a=l.wallet.approved[u])}return{baseAssetApprovalStatus:r,quoteAssetApprovalStatus:a}}},{key:"setTokenApprovalVisibility",value:function(){var e=this.page,t=this.tokenAssetApprovalStatuses(),n=t.baseAssetApprovalStatus,r=t.quoteAssetApprovalStatus;if(n===dt.Approved&&r===dt.Approved)return Ne.hide(e.tokenApproval),e.sellBttn.removeAttribute("disabled"),void e.buyBttn.removeAttribute("disabled");n!==dt.Approved&&r===dt.Approved&&(e.sellBttn.setAttribute("disabled","disabled"),e.buyBttn.removeAttribute("disabled"),this.setBuy(),Ne.show(e.approvalRequiredSell),Ne.hide(e.approvalRequiredBuy,e.approvalRequiredBoth)),n===dt.Approved&&r!==dt.Approved&&(e.buyBttn.setAttribute("disabled","disabled"),e.sellBttn.removeAttribute("disabled"),this.setSell(),Ne.show(e.approvalRequiredBuy),Ne.hide(e.approvalRequiredSell,e.approvalRequiredBoth)),n!==dt.Approved&&r!==dt.Approved&&(Ne.show(e.approvalRequiredBoth),Ne.hide(e.approvalRequiredSell,e.approvalRequiredBuy)),Ne.show(e.tokenApproval),e.approvalPendingBaseSymbol.textContent=e.baseTokenAsset.textContent=this.market.base.symbol.toUpperCase(),e.approvalPendingQuoteSymbol.textContent=e.quoteTokenAsset.textContent=this.market.quote.symbol.toUpperCase(),Ne.setVis(n===dt.NotApproved,e.approveBaseBttn),Ne.setVis(r===dt.NotApproved,e.approveQuoteBttn),Ne.setVis(n===dt.Pending,e.approvalPendingBase),Ne.setVis(r===dt.Pending,e.approvalPendingQuote)}},{key:"setRegistrationStatusView",value:function(e,t,n){var r=this.page;r.regStatusTitle.textContent=e,r.regStatusConfsDisplay.textContent=t,r.registrationStatus.classList.remove("completed","error","waiting"),r.registrationStatus.classList.add(n)}},{key:"updateRegistrationStatusView",value:function(){var e=this.page,t=this.market.dex;if(e.regStatusDex.textContent=t.host,e.postingBondsDex.textContent=t.host,t.auth.effectiveTier>=1)this.setRegistrationStatusView(ke("REGISTRATION_FEE_SUCCESS"),"","completed");else{var n=(t.auth.pendingBonds||[]).map((function(e){var n=t.bondAssets[e.symbol].confs;return"".concat(e.confs," / ").concat(n)})).join(", ");this.setRegistrationStatusView(ke("WAITING_FOR_CONFS"),n,"waiting")}}},{key:"setRegistrationStatusVisibility",value:function(){var e=this,t=this.page,n=this.market;if(n&&n.dex&&n.dex.connectionStatus===ut.Connected){this.updateRegistrationStatusView();var r=function(e){for(var n=0,r=[t.registrationStatus,t.bondRequired,t.bondCreationPending,t.notRegistered,t.penaltyCompsRequired];n<r.length;n++){var a=r[n];Ne.setVis(a===e,a)}};if(n.dex.auth.effectiveTier>=1){var a=function(){var t=s(f().mark((function t(){return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r(void 0),e.resolveOrderFormVisibility();case 2:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();if(Ne.isHidden(t.orderForm))return void setTimeout(a,5e3);a()}else n.dex.viewOnly?(t.unregisteredDex.textContent=n.dex.host,r(t.notRegistered)):n.dex.auth.targetTier>0&&n.dex.auth.rep.penalties>n.dex.auth.penaltyComps?(t.acctPenalties.textContent="".concat(n.dex.auth.rep.penalties),t.acctPenaltyComps.textContent="".concat(n.dex.auth.penaltyComps),t.compsDexSettingsLink.href="/dexsettings/".concat(n.dex.host),r(t.penaltyCompsRequired)):this.hasPendingBonds()?r(t.registrationStatus):n.dex.auth.targetTier>0?r(t.bondCreationPending):(t.acctTier.textContent="".concat(n.dex.auth.effectiveTier),t.dexSettingsLink.href="/dexsettings/".concat(n.dex.host),r(t.bondRequired))}}},{key:"setOrderBttnText",value:function(){this.isSell()?this.page.submitBttn.textContent=ke("SET_BUTTON_SELL",{asset:Ne.shortSymbol(this.market.baseCfg.unitInfo.conventional.unit)}):this.page.submitBttn.textContent=ke("SET_BUTTON_BUY",{asset:Ne.shortSymbol(this.market.baseCfg.unitInfo.conventional.unit)})}},{key:"setOrderBttnEnabled",value:function(e,t){var n=this.page.submitBttn;e?(n.removeAttribute("disabled"),n.removeAttribute("title")):(n.setAttribute("disabled","true"),t&&n.setAttribute("title",t))}},{key:"updateOrderBttnState",value:function(){var e=this.market,t=this.currentOrder,n=t.qty,r=t.rate,a=t.isLimit,o=t.sell,s=ft().assets[this.market.base.id].wallet,i=ft().assets[e.quote.id].wallet;if(s&&i)if(n<=0||n<e.cfg.lotsize)this.setOrderBttnEnabled(!1,ke(re));else if(a)if(r){if(o)return s.balance.available<e.cfg.lotsize?void this.setOrderBttnEnabled(!1,ke(ne)):void(e.maxSell&&this.setOrderBttnEnabled(n<=e.maxSell.swap.value,ke(ne)));var c=this.adjustedRate(),l=e.cfg.lotsize*(c/Ft);if(i.balance.available<l)this.setOrderBttnEnabled(!1,ke(te));else if(e.maxBuys[c]){var u=n<=e.maxBuys[c].swap.lots*e.cfg.lotsize;this.setOrderBttnEnabled(u,ke(te))}}else this.setOrderBttnEnabled(!1,ke(ae));else o?this.setOrderBttnEnabled(n<=s.balance.available,ke(ne)):this.setOrderBttnEnabled(n<=i.balance.available,ke(te))}},{key:"setCandleDurBttns",value:function(){var e=this,t=this.page,n=this.market;Ne.empty(t.durBttnBox);var r,a=Aa(n.dex.candleDurs);try{var o=function(){var n=r.value,a=t.durBttnTemplate.cloneNode(!0);a.textContent=n,Ne.bind(a,"click",(function(){return e.candleDurationSelected(n)})),t.durBttnBox.appendChild(a)};for(a.s();!(r=a.n()).done;)o()}catch(e){a.e(e)}finally{a.f()}this.loadCandles()}},{key:"setMarket",value:(A=s(f().mark((function e(t,n,r){var a,o,i,c,l,u,d,h,p,v,m,g,y,b,x,w;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=ft().user.exchanges[t],o=this.page,window.cexBook=s(f().mark((function e(){var a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/cexbook",{host:t,baseID:n,quoteID:r});case 2:a=e.sent,console.log(a.book);case 4:case"end":return e.stop()}}),e)}))),o.lotField.value="",o.qtyField.value="",o.rateField.value="",this.depthChart.clear(),Ne.empty(this.page.buyRows),Ne.empty(this.page.sellRows),this.recentMatches=[],Ne.empty(o.recentMatchesLiveList),this.balanceWgt.setBalanceVisibility(!1),Ne.hide(o.notRegistered,o.bondRequired,o.noWallet,o.penaltyCompsRequired),a&&a.markets&&a.connectionStatus===ut.Connected){e.next=19;break}return i=ke("CONNECTION_FAILED"),a.disabled&&(i=ke("DEX_DISABLED_MSG")),o.chartErrMsg.textContent=i,Ne.show(o.chartErrMsg),e.abrupt("return");case 19:c=Aa(this.stats);try{for(c.s();!(l=c.n()).done;)u=l.value,Ne.show(u.row)}catch(e){c.e(e)}finally{c.f()}d=a.assets[n],h=a.assets[r],p=[ft().unitInfo(n,a),ft().unitInfo(r,a)],m=p[1],g=Ft/(v=p[0]).conventional.conversionFactor*m.conventional.conversionFactor,Ne.hide(o.maxOrd,o.chartErrMsg),this.maxEstimateTimer&&(window.clearTimeout(this.maxEstimateTimer),this.maxEstimateTimer=null),y=Qa(d.symbol,h.symbol),b=ft().assets[n],x=ft().assets[r],w={dex:a,sid:y,cfg:a.markets[y],base:b,quote:x,baseUnitInfo:v,quoteUnitInfo:m,maxSell:null,maxBuys:{},maxSellRequested:!1,candleCaches:{},baseCfg:d,quoteCfg:h,rateConversionFactor:g,sellBalance:0,buyBalance:0,bookLoaded:!1},this.market=w,this.mm.setMarket(t,n,r),this.mmRunning=void 0,o.lotSize.textContent=Ne.formatCoinValue(w.cfg.lotsize,w.baseUnitInfo),o.rateStep.textContent=Ne.formatCoinValue(w.cfg.ratestep/g),this.displayMessageIfMissingWallet(),this.balanceWgt.setWallets(t,n,r),this.setMarketDetails(),this.setCurrMarketPrice(),Ta.request("loadmarket",Ka(t,n,r)),k.storeLocal(k.lastMarketLK,{host:t,base:n,quote:r}),ft().updateMarketElements(this.main,n,r,a),this.marketList.select(t,n,r),this.setLoaderMsgVisibility(),this.setTokenApprovalVisibility(),this.setRegistrationStatusVisibility(),this.resolveOrderFormVisibility(),this.setOrderBttnText(),this.setOrderBttnEnabled(!1,ke(ae)),this.setCandleDurBttns(),this.previewQuoteAmt(!1),this.updateTitle(),this.reputationMeter.setHost(a.host),this.updateReputation(),this.loadUserOrders();case 56:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return A.apply(this,arguments)})},{key:"displayMessageIfMissingWallet",value:function(){var e,t,n,r,a=this.page,o=this.market,s=o.baseCfg.symbol.toLocaleUpperCase(),i=o.quoteCfg.symbol.toLocaleUpperCase(),c="";if(Ne.hide(a.noWallet),null!==(e=o.base)&&void 0!==e&&e.wallet||null!==(t=o.quote)&&void 0!==t&&t.wallet)if(null!==(n=o.base)&&void 0!==n&&n.wallet){if(null!==(r=o.quote)&&void 0!==r&&r.wallet)return;c=ke(oe,{asset:i})}else c=ke(oe,{asset:s});else c=ke("NO_WALLET_MSG",{asset1:s,asset2:i});a.noWallet.textContent=c,Ne.show(a.noWallet)}},{key:"reportDepthClick",value:function(e){this.page.rateField.value=String(e),this.rateFieldChanged()}},{key:"reportDepthVolume",value:function(e){var t=this.page,n=this.market,r=n.baseUnitInfo,a=n.quoteUnitInfo;t.sellBookedBase.textContent=Ne.formatCoinValue(e.sellBase*r.conventional.conversionFactor,r),t.sellBookedQuote.textContent=Ne.formatCoinValue(e.sellQuote*a.conventional.conversionFactor,a),t.buyBookedBase.textContent=Ne.formatCoinValue(e.buyBase*r.conventional.conversionFactor,r),t.buyBookedQuote.textContent=Ne.formatCoinValue(e.buyQuote*a.conventional.conversionFactor,a)}},{key:"reportDepthMouse",value:function(e){for(;this.hovers.length;)this.hovers.shift().classList.remove("hover");var t=this.page;if(e){Ne.show(t.depthLegend);for(var n=0,r=Object.values(this.metaOrders);n<r.length;n++){var a=r[n],o=a.div,s=a.ord;2===s.status&&e.hoverMarkers.indexOf(s.rate)>-1&&(o.classList.add("hover"),this.hovers.push(o))}t.hoverPrice.textContent=Ne.formatCoinValue(e.rate),t.hoverVolume.textContent=Ne.formatCoinValue(e.depth),t.hoverVolume.style.color=e.dotColor}else Ne.hide(t.depthLegend)}},{key:"reportDepthZoom",value:function(e){k.storeLocal(k.depthZoomLK,e)}},{key:"reportMouseCandle",value:function(e){var t=this.page;e?(Ne.show(t.candlesLegend),t.candleStart.textContent=Ne.formatCoinValue(e.startRate/this.market.rateConversionFactor),t.candleEnd.textContent=Ne.formatCoinValue(e.endRate/this.market.rateConversionFactor),t.candleHigh.textContent=Ne.formatCoinValue(e.highRate/this.market.rateConversionFactor),t.candleLow.textContent=Ne.formatCoinValue(e.lowRate/this.market.rateConversionFactor),t.candleVol.textContent=Ne.formatCoinValue(e.matchVolume,this.market.baseUnitInfo)):Ne.hide(t.candlesLegend)}},{key:"parseOrder",value:function(){var e=this.page,t=e.qtyField,n=this.isLimit(),r=this.isSell(),a=this.market,o=a.baseUnitInfo.conventional.conversionFactor;return n||r||(t=e.mktBuyField,o=a.quoteUnitInfo.conventional.conversionFactor),{host:a.dex.host,isLimit:n,sell:r,base:a.base.id,quote:a.quote.id,qty:Ya(t.value||"",o),rate:Ya(e.rateField.value||"",a.rateConversionFactor),tifnow:e.tifNow.checked||!1,options:{}}}},{key:"previewQuoteAmt",value:function(e){var t=this.page;if(this.market.base&&this.market.quote){var n=this.currentOrder=this.parseOrder(),r=this.adjustedRate();if(t.orderErr.textContent="",r&&(n.sell?this.preSell():this.preBuy()),this.depthLines.input=[],r&&this.isLimit()&&(this.depthLines.input=[{rate:n.rate/this.market.rateConversionFactor,color:n.sell?this.depthChart.theme.sellLine:this.depthChart.theme.buyLine}]),this.drawChartLines(),!e||!r||!n.qty)return t.orderPreview.textContent="",void this.drawChartLines();var a=ft().assets[n.quote].unitInfo.conventional.unit,o=n.qty*n.rate/Ft,s=Ne.formatCoinValue(o,this.market.quoteUnitInfo);t.orderPreview.textContent=ke("ORDER_PREVIEW",{total:s,asset:a}),this.isSell()?this.preSell():this.preBuy()}}},{key:"preSell",value:function(){var e=this,t=this.market,n=ft().assets[t.base.id].wallet;return n.balance.available<t.cfg.lotsize?(this.setMaxOrder(null),void this.updateOrderBttnState()):t.maxSell?(this.setMaxOrder(t.maxSell.swap),void this.updateOrderBttnState()):void(t.maxSellRequested||(t.maxSellRequested=!0,this.scheduleMaxEstimate("/api/maxsell",{},0,(function(r){t.maxSellRequested=!1,t.maxSell=r.maxSell,t.sellBalance=n.balance.available,e.setMaxOrder(r.maxSell.swap),e.updateOrderBttnState()}))))}},{key:"preBuy",value:function(){var e=this,t=this.market,n=this.adjustedRate(),r=ft().assets[t.quote.id].wallet;if(r){var a=t.cfg.lotsize*(n/Ft);if(r.balance.available<a)return this.setMaxOrder(null),void this.updateOrderBttnState();if(t.maxBuys[n])return this.setMaxOrder(t.maxBuys[n].swap),void this.updateOrderBttnState();var o=Object.keys(t.maxBuys).length?350:0;this.scheduleMaxEstimate("/api/maxbuy",{rate:n},o,(function(r){t.maxBuys[n]=r.maxBuy,t.buyBalance=ft().assets[t.quote.id].wallet.balance.available,e.setMaxOrder(r.maxBuy.swap),e.updateOrderBttnState()}))}}},{key:"scheduleMaxEstimate",value:function(e,t,n,r){var a=this,o=this.page;this.maxLoaded||(this.maxLoaded=ft().loading(o.maxOrd));var i=[this.market.base.id,this.market.quote.id],c=i[0],l=i[1],u=[ft().assets[c].wallet,ft().assets[l].wallet],d=u[0],h=u[1];if(d&&d.running&&h&&h.running){this.maxEstimateTimer&&window.clearTimeout(this.maxEstimateTimer),Ne.show(o.maxOrd,o.maxLotBox),Ne.hide(o.maxAboveZero,o.maxZeroNoFees,o.maxZeroNoBal),o.maxFromLots.textContent=ke("CALCULATING"),o.maxFromLotsLbl.textContent="",this.maxOrderUpdateCounter++;var p=this.maxOrderUpdateCounter;this.maxEstimateTimer=window.setTimeout(s(f().mark((function n(){var s;return f().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(a.maxEstimateTimer=null,p===a.maxOrderUpdateCounter){n.next=3;break}return n.abrupt("return");case 3:return n.next=5,S(e,Ia({host:a.market.dex.host,base:c,quote:l},t));case 5:if(s=n.sent,p===a.maxOrderUpdateCounter){n.next=8;break}return n.abrupt("return");case 8:if(ft().checkResponse(s)){n.next=13;break}return console.warn("max order estimate not available:",s),o.maxFromLots.textContent=ke("ESTIMATE_UNAVAILABLE"),a.maxLoaded&&(a.maxLoaded(),a.maxLoaded=null),n.abrupt("return");case 13:r(s);case 14:case"end":return n.stop()}}),n)}))),n)}}},{key:"setMaxOrder",value:function(e){var t=this.page;this.maxLoaded&&(this.maxLoaded(),this.maxLoaded=null),Ne.show(t.maxOrd,t.maxLotBox);var n=this.isSell(),r=0;if(e&&(r=e.lots),t.maxFromLots.textContent=r.toString(),t.maxFromLotsLbl.textContent=ke(1===r?"LOT":"LOTS"),e){var a=n?this.market.base:this.market.quote;if(0===r){var o=this.market.cfg.lotsize;if(!n){var s=this.anyRate()[1];if(0===s)return;o*=s}if(a.wallet.balance.available/o>0){if(a.token){var i=ft().assets[a.token.parentID],c=i.wallet.balance.available,l=i.unitInfo;return void(c<e.feeReservesPerLot&&(Ne.show(t.maxZeroNoFees),t.maxZeroNoFeesTicker.textContent=l.conventional.unit,t.maxZeroMinFees.textContent=Ne.formatCoinValue(e.feeReservesPerLot,l)))}if(a.wallet.balance.available/(o+e.feeReservesPerLot)>0)return}return Ne.show(t.maxZeroNoBal),void(t.maxZeroNoBalTicker.textContent=a.unitInfo.conventional.unit)}Ne.show(t.maxAboveZero),t.maxFromAmt.textContent=Ne.formatCoinValue(e.value||0,a.unitInfo),t.maxFromTicker.textContent=a.unitInfo.conventional.unit}}},{key:"validateOrder",value:function(e){var t=this.page,n=this.market,r=n.cfg.minimumRate,a=n.rateConversionFactor;if(e.isLimit){if(!e.rate)return Ne.show(t.orderErr),t.orderErr.textContent=ke("NO_ZERO_RATE"),!1;if(e.rate<r){Ne.show(t.orderErr);var o=e.rate/a,s=r/a;return t.orderErr.textContent="rate is lower than the market's minimum rate. ".concat(o," < ").concat(s),!1}}return!!e.qty||(Ne.show(t.orderErr),t.orderErr.textContent=ke("NO_ZERO_QUANTITY"),!1)}},{key:"handleBook",value:function(e){var t,n=this.market,r=n.cfg,a=n.baseUnitInfo,o=n.quoteUnitInfo,s=n.baseCfg,i=n.quoteCfg;this.book=new wa(e,s.symbol,i.symbol),this.loadTable();var c,l=Aa(e.book.epoch||[]);try{for(l.s();!(c=l.n()).done;){var u=c.value;u.rate>0&&this.book.add(u),this.addTableOrder(u)}}catch(e){l.e(e)}finally{l.f()}if(!this.book)return this.depthChart.clear(),Ne.empty(this.page.buyRows),void Ne.empty(this.page.sellRows);Ne.show(this.page.epochLine),this.loadingAnimations.depth&&this.loadingAnimations.depth.stop(),this.depthChart.canvas.classList.remove("invisible"),this.depthChart.set(this.book,r.lotsize,r.ratestep,a,o),this.recentMatches=null!==(t=e.book.recentMatches)&&void 0!==t?t:[],this.refreshRecentMatchesTable()}},{key:"midGapConventional",value:function(){var e=this.midGap();if(!e)return e;var t=this.market,n=t.baseUnitInfo,r=t.quoteUnitInfo;return e*n.conventional.conversionFactor/r.conventional.conversionFactor}},{key:"midGap",value:function(){var e=this.book;if(e)return e.buys&&e.buys.length?e.sells&&e.sells.length?(e.buys[0].msgRate+e.sells[0].msgRate)/2/Ft:e.buys[0].msgRate/Ft:e.sells&&e.sells.length?e.sells[0].msgRate/Ft:null}},{key:"setMarketBuyOrderEstimate",value:function(){var e=this.market,t=e.cfg.lotsize,n=ft().user.exchanges[e.dex.host].markets[e.sid].buybuffer,r=this.midGapConventional();r&&(this.page.minMktBuy.textContent=Ne.formatCoinValue(t*n*r,e.baseUnitInfo))}},{key:"maxUserOrderCount",value:function(){var e=this.market,t=e.dex.host,n=e.cfg.name;return Math.max(10,ft().orders(t,n).length)}},{key:"loadUserOrders",value:(I=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d,h,p;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(s in t=this.market,n=t.base,r=t.quote,a=t.dex.host,o=t.cfg.name,this.metaOrders)delete this.metaOrders[s];if(n&&r){e.next=4;break}return e.abrupt("return",this.resolveUserOrders([]));case 4:if(!((i=ft().orders(a,o)).length>=10)){e.next=7;break}return e.abrupt("return",this.resolveUserOrders(i));case 7:return c={hosts:[a],market:{baseID:n.id,quoteID:r.id},n:this.maxUserOrderCount()},e.next=10,S("/api/orders",c);case 10:l=e.sent,u=l.orders||[],d=Aa(i),e.prev=13,p=f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=h.value,u.some((function(e){return e.id===t.id}))||u.push(t);case 2:case"end":return e.stop()}}),e)})),d.s();case 16:if((h=d.n()).done){e.next=20;break}return e.delegateYield(p(),"t0",18);case 18:e.next=16;break;case 20:e.next=25;break;case 22:e.prev=22,e.t1=e.catch(13),d.e(e.t1);case 25:return e.prev=25,d.f(),e.finish(25);case 28:return e.abrupt("return",this.resolveUserOrders(l.orders||[]));case 29:case"end":return e.stop()}}),e,this,[[13,22,25,28]])}))),function(){return I.apply(this,arguments)})},{key:"refreshActiveOrders",value:function(){var e=ft().orders(this.market.dex.host,Qa(this.market.baseCfg.symbol,this.market.quoteCfg.symbol));return this.resolveUserOrders(e)}},{key:"resolveUserOrders",value:function(e){var t,n,r,a=this,o=this.page,s=this.metaOrders,i=this.market,c=i.cfg,l=function(e){return e.status<3||At(e)},u=Aa(e);try{for(u.s();!(r=u.n()).done;){var d=r.value;s[d.id]={ord:d}}}catch(e){u.e(e)}finally{u.f()}var h=Object.keys(s).map((function(e){return s[e]}));h.sort((function(e,t){var n=[l(e.ord),l(t.ord)],r=n[0],a=n[1];return r&&!a?-1:!r&&a?1:t.ord.submitTime-e.ord.submitTime}));var p=this.maxUserOrderCount();for(var f in h.length>p&&(h=h.slice(0,p)),s)delete s[f];Ne.empty(o.userOrders),Ne.setVis(null===(t=h)||void 0===t?void 0:t.length,o.userOrders),Ne.setVis(!(null!==(n=h)&&void 0!==n&&n.length),o.userNoOrders);var v,m=!1,g=Aa(h);try{var y=function(){var e=v.value,t=o.userOrderTmpl.cloneNode(!0);o.userOrders.appendChild(t);var n=Ne.parseTemplate(t),r=Ne.parseTemplate(n.header),u=Ne.parseTemplate(n.details);e.div=t,e.header=r,e.details=u;var d,h=e.ord,p=h.id,f=l(h);p&&(s[p]=e),!h.readyToTick&&At(h)&&(n.header.classList.add("unready-user-order"),m=!0),r.sideLight.classList.add(h.sell?"sell":"buy"),f||r.sideLight.classList.add("inactive"),u.side.textContent=e.header.side.textContent=Tt(h),u.side.classList.add(h.sell?"sellcolor":"buycolor"),r.side.classList.add(h.sell?"sellcolor":"buycolor"),u.qty.textContent=e.header.qty.textContent=Ne.formatCoinValue(h.qty,i.baseUnitInfo),d=2===h.type?a.marketOrderRateString(h,i):Ne.formatRateFullPrecision(h.rate,i.baseUnitInfo,i.quoteUnitInfo,c.ratestep),u.rate.textContent=e.header.rate.textContent=d,r.baseSymbol.textContent=i.baseUnitInfo.conventional.unit,u.type.textContent=function(e){switch(e){case 1:return ke(X);case 2:return ke(K);default:return ke("CANCEL_ORDER")}}(h.type),a.updateMetaOrder(e),Ne.bind(t,"mouseenter",(function(){a.activeMarkerRate=h.rate,a.setDepthMarkers()}));var g,y=function(e){e.stopPropagation(),a.showCancel(t,p)},b=function(e){e.stopPropagation(),a.showAccelerate(h)};p?(qt(h)&&(Ne.show(u.cancelBttn),Ea(u.cancelBttn,"click",(function(e){y(e)}))),Ea(u.accelerateBttn,"click",(function(e){b(e)})),ft().canAccelerateOrder(h)&&Ne.show(u.accelerateBttn),u.link.href="order/".concat(p),ft().bindInternalNavigation(t)):(Ne.hide(u.accelerateBttn),Ne.hide(u.cancelBttn),Ne.hide(u.link)),Ne.bind(n.header,"click",(function(){if(Ne.isDisplayed(n.details))return Ne.hide(n.details),r.expander.classList.add("ico-arrowdown"),void r.expander.classList.remove("ico-arrowup");Ne.show(n.details),r.expander.classList.remove("ico-arrowdown"),r.expander.classList.add("ico-arrowup"),g&&g.remove()})),Ne.bind(n.header,"mouseenter",(function(){if(!Ne.isDisplayed(n.details)){g&&g.remove();var e=document.createElement("div");g=e,document.body.appendChild(e),e.className="user-order-floaty-menu";var r=Ne.layoutMetrics(n.header),s=r.bodyTop+r.height;e.style.top="".concat(s-1,"px"),e.style.left="".concat(r.bodyLeft,"px");var i=a.metaOrders[p].ord,c=function(t,n){var r=t.cloneNode(!0);e.appendChild(r),Ne.show(r),Ne.bind(r,"click",(function(e){n(e)}))};qt(i)&&c(u.cancelBttn,(function(e){y(e)})),ft().canAccelerateOrder(i)&&c(u.accelerateBttn,(function(e){b(e)})),e.appendChild(u.link.cloneNode(!0));var l=o.orderScroller.scrollTop,d=function n(r){var a=o.orderScroller.scrollTop-l;e.style.top="".concat(s+a,"px"),Ne.mouseInElement(r,e)||Ne.mouseInElement(r,t)||(e.remove(),g=null,document.removeEventListener("mousemove",n),o.orderScroller.removeEventListener("scroll",n))};document.addEventListener("mousemove",d),o.orderScroller.addEventListener("scroll",d)}})),ft().bindTooltips(t)};for(g.s();!(v=g.n()).done;)y()}catch(e){g.e(e)}finally{g.f()}Ne.setVis(m,o.unreadyOrdersMsg),this.setDepthMarkers()}},{key:"marketOrderRateString",value:function(e,t){var n;if(null===(n=e.matches)||void 0===n||!n.length)return ke(K);var r=Ne.formatRateFullPrecision(Lt(e),t.baseUnitInfo,t.quoteUnitInfo,t.cfg.ratestep);return e.matches.length>1&&(r="~ "+r),r}},{key:"updateMetaOrder",value:function(e){var t=e.header,n=e.details,r=e.ord;r.status<=2||At(r)?t.activeLight.classList.add("active"):t.activeLight.classList.remove("active"),n.status.textContent=t.status.textContent=Rt(r),n.age.textContent=Ne.timeSince(r.submitTime),n.filled.textContent="".concat((Et(r)/r.qty*100).toFixed(1),"%"),n.settled.textContent="".concat((Bt(r)/r.qty*100).toFixed(1),"%")}},{key:"setDepthMarkers",value:function(){for(var e={buys:[],sells:[]},t=this.market.rateConversionFactor,n=0,r=Object.values(this.metaOrders);n<r.length;n++){var a=r[n].ord;a.rate&&2===a.status&&(a.sell?e.sells.push({rate:a.rate/t,active:a.rate===this.activeMarkerRate}):e.buys.push({rate:a.rate/t,active:a.rate===this.activeMarkerRate}))}this.depthChart.setMarkers(e),this.book&&this.depthChart.draw()}},{key:"updateTitle",value:function(){var e=this.midGapConventional(),t=this.market,n=t.baseUnitInfo.conventional.unit,r=t.quoteUnitInfo.conventional.unit;document.title=e?"".concat(Ne.formatCoinValue(e)," | ").concat(n).concat(r," | ").concat(this.ogTitle):"".concat(n).concat(r," | ").concat(this.ogTitle)}},{key:"handleBookRoute",value:function(e){ft().log("book","handleBookRoute:",e);var t=e.payload,n=this.market,r=n.baseCfg,a=n.quoteCfg,o=n.dex.host;t.base===r.id&&t.quote===a.id&&e.host===o&&(this.handleBook(t),this.market.bookLoaded=!0,this.updateTitle(),this.setMarketBuyOrderEstimate())}},{key:"handleBookOrderRoute",value:function(e){if(ft().log("book","handleBookOrderRoute:",e),e.host===this.market.dex.host&&e.marketID===this.market.sid){var t=e.payload;t.rate>0&&this.book.add(t),this.addTableOrder(t),this.updateTitle(),this.depthChart.draw()}}},{key:"handleUnbookOrderRoute",value:function(e){if(ft().log("book","handleUnbookOrderRoute:",e),e.host===this.market.dex.host&&e.marketID===this.market.sid){var t=e.payload;this.book.remove(t.token),this.removeTableOrder(t),this.updateTitle(),this.depthChart.draw()}}},{key:"handleUpdateRemainingRoute",value:function(e){if(ft().log("book","handleUpdateRemainingRoute:",e),e.host===this.market.dex.host&&e.marketID===this.market.sid){var t=e.payload;this.book.updateRemaining(t.token,t.qty,t.qtyAtomic),this.updateTableOrder(t),this.depthChart.draw()}}},{key:"handleEpochOrderRoute",value:function(e){if(ft().log("book","handleEpochOrderRoute:",e),e.host===this.market.dex.host&&e.marketID===this.market.sid){var t=e.payload;t.msgRate>0&&this.book.add(t),t.qtyAtomic>0&&this.addTableOrder(t),this.depthChart.draw()}}},{key:"handleCandlesRoute",value:function(e){if(this.candlesLoading&&(clearTimeout(this.candlesLoading.timer),this.candlesLoading.loaded(),this.candlesLoading=null),e.host===this.market.dex.host&&e.marketID===this.market.cfg.name){var t=e.payload.dur;this.market.candleCaches[t]=e.payload,this.setHighLow(),this.candleDur===t&&(this.loadingAnimations.candles&&this.loadingAnimations.candles.stop(),this.candleChart.canvas.classList.remove("invisible"),this.candleChart.setCandles(e.payload,this.market.cfg,this.market.baseUnitInfo,this.market.quoteUnitInfo))}}},{key:"handleEpochMatchSummary",value:function(e){this.addRecentMatches(e.payload.matchSummaries),this.refreshRecentMatchesTable()}},{key:"handleCandleUpdateRoute",value:function(e){if(e.host===this.market.dex.host){var t=e.payload,n=t.dur,r=t.candle,a=this.market.candleCaches[n];if(a){var o=a.candles;0===o.length?o.push(r):o[o.length-1].startStamp===r.startStamp?o[o.length-1]=r:o.push(r),this.candleDur===n&&this.candleChart.draw()}}}},{key:"showToggleWalletStatus",value:function(e){var t=this.page;this.openAsset=e,Ne.hide(t.toggleWalletStatusErr,t.walletStatusDisable,t.disableWalletMsg),Ne.show(t.walletStatusEnable,t.enableWalletMsg),this.forms.show(t.toggleWalletStatusConfirm)}},{key:"toggleWalletStatus",value:(D=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,Ne.hide(t.toggleWalletStatusErr),n={assetID:this.openAsset.id,disable:!1},r=ft().loading(t.toggleWalletStatusConfirm),e.next=7,S("/api/togglewalletstatus",n);case 7:if(a=e.sent,r(),ft().checkResponse(a)){e.next=13;break}return t.toggleWalletStatusErr.textContent=a.msg,Ne.show(t.toggleWalletStatusErr),e.abrupt("return");case 13:Ne.hide(this.page.forms),this.balanceWgt.updateAsset(this.openAsset.id);case 15:case"end":return e.stop()}}),e,this)}))),function(){return D.apply(this,arguments)})},{key:"showVerify",value:function(){this.preorderCache={};var e,t=this.page,n=this.currentOrder=this.parseOrder(),r=n.sell,a=ft().assets[n.base],o=ft().assets[n.quote],s=r?o:a,i=r?a:o,c=function(e){switch(e.dataset.icon){case"from":if(i.token){var t=ft().assets[i.token.parentID];e.src=Ne.logoPath(t.symbol)}else e.src=Ne.logoPath(i.symbol);break;case"to":if(s.token){var n=ft().assets[s.token.parentID];e.src=Ne.logoPath(n.symbol)}else e.src=Ne.logoPath(s.symbol)}},l=Aa(Ne.applySelector(t.vDetailPane,"[data-icon]"));try{for(l.s();!(e=l.n()).done;)c(e.value)}catch(e){l.e(e)}finally{l.f()}var u,d=Aa(Ne.applySelector(t.vFeeSummary,"[data-icon]"));try{for(d.s();!(u=d.n()).done;)c(u.value)}catch(e){d.e(e)}finally{d.f()}Ne.hide(t.vPreorderErr),Ne.show(t.vPreorder),t.vBuySell.textContent=ke(r?"SELLING":"BUYING");var h=ke(r?B:E);if(t.vSideSubmit.textContent=h,t.vOrderHost.textContent=n.host,n.isLimit){Ne.show(t.verifyLimit),Ne.hide(t.verifyMarket);var p="Limit ".concat(h," Order");t.vOrderType.textContent=n.tifnow?p+" (immediate)":p,t.vRate.textContent=Ne.formatCoinValue(n.rate/this.market.rateConversionFactor),t.vQty.textContent=Ne.formatCoinValue(n.qty,a.unitInfo);var f=n.rate/Ft*n.qty;t.vTotal.textContent=Ne.formatCoinValue(f,o.unitInfo),this.showFiatValue(o.id,f,t.vFiatTotal)}else{Ne.hide(t.verifyLimit),Ne.show(t.verifyMarket),t.vOrderType.textContent="Market ".concat(h," Order");var v=n.sell?this.market.baseUnitInfo:this.market.quoteUnitInfo;t.vmFromTotal.textContent=Ne.formatCoinValue(n.qty,v),t.vmFromAsset.textContent=i.symbol.toUpperCase(),this.showFiatValue(i.id,n.qty,t.vmFromTotalFiat);var m=this.midGap();if(m){Ne.show(t.vMarketEstimate);var g=n.sell?n.qty*m:n.qty/m;t.vmToTotal.textContent=Ne.formatCoinValue(g,s.unitInfo),t.vmToAsset.textContent=s.symbol.toUpperCase(),this.showFiatValue(s.id,g,t.vmTotalFiat)}else Ne.hide(t.vMarketEstimate)}r?(t.vHeader.classList.add(Va),t.vHeader.classList.remove(Wa),t.vSubmit.classList.add(Va),t.vSubmit.classList.remove(Wa)):(t.vHeader.classList.add(Wa),t.vHeader.classList.remove(Va),t.vSubmit.classList.add(Wa),t.vSubmit.classList.remove(Va)),this.showVerifyForm(),a.wallet.open&&o.wallet.open?this.preOrder(n):(Ne.hide(t.vPreorder),this.unlockWalletsForEstimates())}},{key:"showFiatValue",value:function(e,t,n){if(n){var r=ft().fiatRatesMap[e];n.textContent=Ne.formatFiatConversion(t,r,ft().unitInfo(e)),r?Ne.show(n.parentElement):Ne.hide(n.parentElement)}}},{key:"showVerifyForm",value:(T=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,Ne.hide(t.vErr),this.forms.show(t.verifyForm);case 3:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"unlockWalletsForEstimates",value:(F=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=ft().loading(t.verifyForm),e.next=4,this.unlockMarketWallets();case 4:n(),Ne.show(t.vPreorder),this.preOrder(this.parseOrder());case 7:case"end":return e.stop()}}),e,this)}))),function(){return F.apply(this,arguments)})},{key:"unlockWallet",value:(C=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/openwallet",{assetID:t});case 2:if(n=e.sent,ft().checkResponse(n)){e.next=5;break}throw Error("error unlocking wallet "+n.msg);case 5:this.balanceWgt.updateAsset(t);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"unlockMarketWallets",value:(w=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(t=this.market,n=t.base,r=t.quote,a=[],n.wallet.open||a.push(n.id),r.wallet.open||a.push(r.id),o=0,s=a;o<s.length;o++)i=s[o],this.unlockWallet(i);case 5:case"end":return e.stop()}}),e,this)}))),function(){return w.apply(this,arguments)})},{key:"fetchPreorder",value:(x=s(f().mark((function e(t){var n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,r=JSON.stringify(t.options),!(a=this.preorderCache[r])){e.next=5;break}return e.abrupt("return",a);case 5:return Ne.hide(n.vPreorderErr),o=ft().loading(n.verifyForm),e.next=9,S("/api/preorder",Za(t));case 9:if(s=e.sent,o(),ft().checkResponse(s)){e.next=13;break}return e.abrupt("return",{err:s.msg});case 13:return this.preorderCache[r]=s.estimate,e.abrupt("return",s.estimate);case 15:case"end":return e.stop()}}),e,this)}))),function(e){return x.apply(this,arguments)})},{key:"setPreorderErr",value:function(e){var t=this.page;Ne.hide(t.vPreorder),Ne.show(t.vPreorderErr),t.vPreorderErrTip.dataset.tooltip=e}},{key:"showPreOrderAdvancedOptions",value:function(){var e=this.page;Ne.hide(e.showAdvancedOptions),Ne.show(e.hideAdvancedOptions,e.vOtherOrderOpts)}},{key:"hidePreOrderAdvancedOptions",value:function(){var e=this.page;Ne.hide(e.hideAdvancedOptions,e.vOtherOrderOpts),Ne.show(e.showAdvancedOptions)}},{key:"reloadOrderOpts",value:function(e,t,n,r){var a=this.page;Ne.empty(a.vDefaultOrderOpts,a.vOtherOrderOpts);var o,s=function(t,n){var o=function(e,t,n,r){var a,o,s=r&&t.sell||!r&&!t.sell,i=(a=t.host,o=s?t.base:t.quote,ft().exchanges[a].assets[o].symbol);switch(!0){case!!e.boolean:return new bt(e,i,t.options,n).node;case!!e.xyRange:return new xt(e,i,t.options,n).node;default:console.error("no option type specified",e)}return console.error("unknown option type",e),document.createElement("div")}(t,e,r,n);t.showByDefault?a.vDefaultOrderOpts.appendChild(o):a.vOtherOrderOpts.appendChild(o)},i=Aa(t.options||[]);try{for(i.s();!(o=i.n()).done;)s(o.value,!0)}catch(e){i.e(e)}finally{i.f()}var c,l=Aa(n.options||[]);try{for(l.s();!(c=l.n()).done;)s(c.value,!1)}catch(e){l.e(e)}finally{l.f()}ft().bindTooltips(a.vDefaultOrderOpts),ft().bindTooltips(a.vOtherOrderOpts)}},{key:"preOrder",value:(m=s(f().mark((function e(t){var n,r,a=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.page,r=function(){var e=s(f().mark((function e(){var o,i,c,l,u;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a.fetchPreorder(t);case 2:if(!(o=e.sent).err){e.next=5;break}return e.abrupt("return",a.setPreorderErr(o.err));case 5:i=o,Ne.hide(n.vPreorderErr),Ne.show(n.vPreorder),c=i.swap,l=i.redeem,c.options=c.options||[],l.options=l.options||[],a.setFeeEstimates(c,l,t),u=function(){var e=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r();case 2:Ne.animate(400,(function(e){n.vFeeSummary.style.backgroundColor="rgba(128, 128, 128, ".concat(.5-.5*e,")")}));case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Ne.bind(n.showAdvancedOptions,"click",(function(){a.showPreOrderAdvancedOptions()})),Ne.bind(n.hideAdvancedOptions,"click",(function(){a.hidePreOrderAdvancedOptions()})),a.reloadOrderOpts(t,c,l,u);case 16:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),r();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"setFeeEstimates",value:function(e,t,n){var r=this.page,a=this.market;if(e.estimate&&t.estimate){Ne.show(r.vPreorderEstimates);var o=a.baseUnitInfo,s=a.quoteUnitInfo,i=a.rateConversionFactor,c=function(e){return e<.05?"< 0.1":_a.format(e)},l=1,u=1,d=o,h=s;if(a.base.token){var p=ft().assets[a.base.token.parentID];d=p.unitInfo;var f=ft().fiatRatesMap[a.base.id],v=ft().fiatRatesMap[p.id];l=f&&v?v/f*o.conventional.conversionFactor/p.unitInfo.conventional.conversionFactor:0}if(a.quote.token){var m=ft().assets[a.quote.token.parentID];h=m.unitInfo;var g=ft().fiatRatesMap[a.quote.id],y=ft().fiatRatesMap[m.id];u=g&&y?y/g*s.conventional.conversionFactor/m.unitInfo.conventional.conversionFactor:0}var b=d,x=h,k=l,w=u;if(this.currentOrder.sell){var C=[b,x];x=C[0],b=C[1];var S=[k,w];w=S[0],k=S[1]}var F=e.estimate.value||0,T=w>0?F/w:F,D=e.estimate.realisticBestCase/T*100;r.vSwapFeesLowPct.textContent=w<=0?"":"(".concat(c(D),"%)"),r.vSwapFeesLow.textContent=Ne.formatCoinValue(e.estimate.realisticBestCase,x);var I=e.estimate.realisticWorstCase/T*100;r.vSwapFeesHighPct.textContent=w<=0?"":"(".concat(c(I),"%)"),r.vSwapFeesHigh.textContent=Ne.formatCoinValue(e.estimate.realisticWorstCase,x);var A=e.estimate.maxFees/T*100;r.vSwapFeesMaxPct.textContent=w<=0?"":"(".concat(c(A),"%)"),r.vSwapFeesMax.textContent=Ne.formatCoinValue(e.estimate.maxFees,x);var R=this.midGap()||n.rate/i,E=n.sell?F*R:F/R,B=k>0?E/k:E,P=t.estimate.realisticBestCase/B*100;r.vRedeemFeesLowPct.textContent=k<=0?"":"(".concat(c(P),"%)"),r.vRedeemFeesLow.textContent=Ne.formatCoinValue(t.estimate.realisticBestCase,b);var L=t.estimate.realisticWorstCase/B*100;r.vRedeemFeesHighPct.textContent=k<=0?"":"(".concat(c(L),"%)"),r.vRedeemFeesHigh.textContent=Ne.formatCoinValue(t.estimate.realisticWorstCase,b),l&&u?(Ne.show(r.vFeeSummaryPct),Ne.hide(r.vFeeSummary),r.vFeeSummaryLow.textContent=c(D+P),r.vFeeSummaryHigh.textContent=c(I+L)):(Ne.hide(r.vFeeSummaryPct),Ne.show(r.vFeeSummary),r.summarySwapFeesLow.textContent=r.vSwapFeesLow.textContent,r.summarySwapFeesHigh.textContent=r.vSwapFeesHigh.textContent,r.summaryRedeemFeesLow.textContent=r.vRedeemFeesLow.textContent,r.summaryRedeemFeesHigh.textContent=r.vRedeemFeesHigh.textContent)}else Ne.hide(r.vPreorderEstimates)}},{key:"submitCancel",value:(p=s(f().mark((function e(){var t,n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.cancelData,r=n.order,a={orderID:r.id},o=ft().loading(t.cancelSubmit),e.next=7,S("/api/cancel",a);case 7:if(s=e.sent,o(),ft().checkResponse(s)){e.next=13;break}return t.cancelErr.textContent=s.msg,Ne.show(t.cancelErr),e.abrupt("return");case 13:Ne.hide(n.bttn,t.forms),r.cancelling=!0;case 15:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"showCancel",value:function(e,t){var n=this.metaOrders[t].ord,r=this.page,a=n.qty-n.filled,o=It(n)?this.market.quote:this.market.base;r.cancelRemain.textContent=Ne.formatCoinValue(a,o.unitInfo),r.cancelUnit.textContent=o.symbol.toUpperCase(),Ne.hide(r.cancelErr),this.forms.show(r.cancelForm),this.cancelData={bttn:Ne.tmplElement(e,"cancelBttn"),order:n}}},{key:"showAccelerate",value:function(e){var t=ft().loading(this.main);this.accelerateOrderForm.refresh(e),t(),this.forms.show(this.page.accelerateForm)}},{key:"showCreate",value:function(e){var t=this.page;this.currentCreate=e,this.newWalletForm.setAsset(e.id),this.forms.show(t.newWalletForm)}},{key:"stepSubmit",value:function(){var e=this.page,t=this.market;if(Ne.hide(e.orderErr),this.validateOrder(this.parseOrder())){var n=ft().walletMap[t.base.id],r=ft().walletMap[t.quote.id];return n?r?void this.showVerify():(e.orderErr.textContent=ke(L,{asset:t.quote.symbol}),void Ne.show(e.orderErr)):(e.orderErr.textContent=ke(L,{asset:t.base.symbol}),void Ne.show(e.orderErr))}}},{key:"showDeposit",value:(u=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.depositAddrForm.setAsset(t),this.forms.show(this.page.deposit);case 2:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"showCustomProviderDialog",value:function(e){ft().loadPage("wallets",{promptProvider:e,goBack:"markets"})}},{key:"handlePriceUpdate",value:function(e){this.market&&(e.host===this.market.dex.host&&e.spots[this.market.cfg.name]&&this.setCurrMarketPrice(),this.marketList.updateSpots(e))}},{key:"handleWalletState",value:(l=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.market){e.next=2;break}return e.abrupt("return");case 2:if(t.wallet.assetID===(null===(n=this.market.base)||void 0===n?void 0:n.id)||t.wallet.assetID===(null===(r=this.market.quote)||void 0===r?void 0:r.id)){e.next=4;break}return e.abrupt("return");case 4:this.setTokenApprovalVisibility(),this.resolveOrderFormVisibility();case 6:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"handleBondUpdate",value:(c=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.dex,this.market){e.next=3;break}return e.abrupt("return");case 3:if(n===this.market.dex.host){e.next=5;break}return e.abrupt("return");case 5:if("AccountRegistered"!==t.topic){e.next=8;break}return e.next=8,ft().fetchUser();case 8:this.market.dex=ft().exchanges[n],this.setRegistrationStatusVisibility(),this.updateReputation();case 11:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"updateReputation",value:function(){var e=this.page,t=this.market,n=t.dex.host,r=t.cfg,o=t.baseCfg.unitInfo,s=t.quoteCfg.unitInfo,i=ft().exchanges[n].auth;e.parcelSizeLots.textContent=String(r.parcelsize),e.marketLimitBase.textContent=Ne.formatFourSigFigs(r.parcelsize*r.lotsize/o.conventional.conversionFactor),e.marketLimitBaseUnit.textContent=o.conventional.unit,e.marketLimitQuoteUnit.textContent=s.conventional.unit;var c=this.anyRate()[1];if(c){var l=r.lotsize*c;e.marketLimitQuote.textContent=Ne.formatFourSigFigs(r.parcelsize*l/s.conventional.conversionFactor)}else e.marketLimitQuote.textContent="-";var u=dn(i);e.tradingTier.textContent=String(u);var d=function(e){for(var t=ft().exchanges[e],n=t.auth,r=t.maxScore,a=t.markets,o=n.rep.score,s=dn(n),i=0,c=0,l=Object.values(a);c<l.length;c++){var u,d=l[c],h=0,p=cn(d.inflight||[]);try{for(p.s();!(u=p.n()).done;)h+=Fn(u.value,d)}catch(e){p.e(e)}finally{p.f()}var f,v=cn(d.orders||[]);try{for(v.s();!(f=v.n()).done;)h+=Fn(f.value,d)}catch(e){v.e(e)}finally{v.f()}i+=h/(d.parcelsize*d.lotsize)}return[i,2*Tn(o,r)*s]}(n),h=a(d,2),p=h[0],f=h[1];e.tradingLimit.textContent=(f*r.parcelsize).toFixed(2),e.limitUsage.textContent=f>0?(p/f*100).toFixed(1):"0",e.orderLimitRemain.textContent=((f-p)*r.parcelsize).toFixed(1),e.orderTradingTier.textContent=String(u),this.reputationMeter.update()}},{key:"anyRate",value:function(){var e=this.market,t=e.cfg.spot,n=e.baseCfg.id,r=e.quoteCfg.id,a=e.rateConversionFactor;if(e.bookLoaded){var o=this.midGap();if(o)return[o*Ft,o,this.midGapConventional()||0]}if(t&&t.rate)return[t.rate,t.rate/Ft,t.rate/a];var s=[ft().fiatRatesMap[n],ft().fiatRatesMap[r]],i=s[0],c=s[1];if(i&&c){var l=i/c,u=l*a;return[u,u/Ft,l]}return[0,0,0]}},{key:"handleMatchNote",value:function(e){var t=this.metaOrders[e.orderID],n=e.match;if(!t)return this.refreshActiveOrders();if(2===t.ord.type&&0===n.status){var r=ft().order(e.orderID);r&&(t.details.rate.textContent=t.header.rate.textContent=this.marketOrderRateString(r,this.market))}(0===n.side&&3===n.status||1===n.side&&4===n.status)&&this.updateReputation(),ft().canAccelerateOrder(t.ord)?Ne.show(t.details.accelerateBttn):Ne.hide(t.details.accelerateBttn)}},{key:"handleOrderNote",value:function(e){var t=e.order,n=this.metaOrders[t.id],r="AsyncOrderFailure"===e.topic||"AsyncOrderSubmitted"===e.topic;if(!n||r||"OrderLoaded"===e.topic&&t.readyToTick)return this.refreshActiveOrders();var a=n.ord.status;n.ord=t,"MissedCancel"===e.topic&&Ne.show(n.details.cancelBttn),t.filled===t.qty&&Ne.hide(n.details.cancelBttn),ft().canAccelerateOrder(t)?Ne.show(n.details.accelerateBttn):Ne.hide(n.details.accelerateBttn),this.updateMetaOrder(n),(1===a&&2===t.status||2===a&&t.status>2)&&(this.setDepthMarkers(),this.updateReputation(),this.mm.readBook())}},{key:"handleEpochNote",value:function(e){if(ft().log("book","handleEpochNote:",e),this.market&&e.host===this.market.dex.host&&e.marketID===this.market.sid){this.book&&(this.book.setEpoch(e.epoch),this.depthChart.draw()),this.clearOrderTableEpochs();for(var t=0,n=Object.values(this.metaOrders);t<n.length;t++){var r=n[t],a=r.ord,o=r.details,s=r.header,i=e.epoch>a.epoch;switch(!0){case 1===a.type&&1===a.status&&i:var c=0===a.tif?ke(O):ke(M);o.status.textContent=s.status.textContent=c,a.status=0===a.tif?3:2;break;case 2===a.type&&1===a.status:o.status.textContent=s.status.textContent=ke(O),a.status=3}}}}},{key:"recentMatchesSortCompare",value:function(){var e=this;switch(this.recentMatchesSortKey){case"rate":return function(t,n){return e.recentMatchesSortDirection*(t.rate-n.rate)};case"qty":return function(t,n){return e.recentMatchesSortDirection*(t.qty-n.qty)};case"age":return function(t,n){return e.recentMatchesSortDirection*(t.stamp-n.stamp)}}}},{key:"refreshRecentMatchesTable",value:function(){var e=this.page,t=this.recentMatches;if(Ne.empty(e.recentMatchesLiveList),t){var n=this.recentMatchesSortCompare();t.sort(n);var r,a=Aa(t);try{for(a.s();!(r=a.n()).done;){var o=r.value,s=e.recentMatchesTemplate.cloneNode(!0),i=Ne.parseTemplate(s);ft().bindTooltips(s),i.rate.textContent=Ne.formatCoinValue(o.rate/this.market.rateConversionFactor),i.qty.textContent=Ne.formatCoinValue(o.qty,this.market.baseUnitInfo),i.age.textContent=Ne.timeSince(o.stamp),i.age.dataset.sinceStamp=String(o.stamp),s.classList.add(o.sell?"sellcolor":"buycolor"),e.recentMatchesLiveList.append(s)}}catch(e){a.e(e)}finally{a.f()}}}},{key:"addRecentMatches",value:function(e){this.recentMatches=[].concat(r(e),r(this.recentMatches)).slice(0,100)}},{key:"handleBalanceNote",value:function(e){this.approveTokenForm.handleBalanceNote(e),this.preorderCache={};var t=this.market;if(t&&t.dex&&t.dex.connectionStatus===ut.Connected){this.mm.handleBalanceNote(e);var n=this.balanceWgt;e.assetID!==n.base.id&&e.assetID!==n.quote.id||n.setBalanceVisibility(!0);var r=e.balance.available;switch(e.assetID){case t.baseCfg.id:if(!t.maxSell)break;"number"==typeof t.sellBalance&&t.sellBalance!==r&&(t.maxSell=null),this.isSell()&&this.preSell();break;case t.quoteCfg.id:if(!Object.keys(t.maxBuys).length)break;"number"==typeof t.buyBalance&&t.buyBalance!==r&&(t.maxBuys={}),this.isSell()||this.preBuy()}}}},{key:"submitOrder",value:(o=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.orderErr,t.vErr),n=this.currentOrder,r={order:Za(n)},this.validateOrder(n)){e.next=6;break}return e.abrupt("return");case 6:return t.vSubmit.classList.add("d-hide"),t.vLoader.classList.remove("d-hide"),e.next=10,S("/api/tradeasync",r);case 10:if(a=e.sent,t.vSubmit.classList.remove("d-hide"),t.vLoader.classList.add("d-hide"),ft().checkResponse(a)){e.next=17;break}return t.vErr.textContent=a.msg,Ne.show(t.vErr),e.abrupt("return");case 17:Ne.hide(t.forms),this.refreshActiveOrders();case 19:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"createWallet",value:(n=s(f().mark((function e(){var t,n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchUser();case 2:if(t=e.sent){e.next=5;break}return e.abrupt("return");case 5:n=t.assets[this.currentCreate.id],Ne.hide(this.page.forms),(r=this.market).baseCfg.id===n.id?r.base=n:r.quoteCfg.id===n.id&&(r.quote=n),this.balanceWgt.updateAsset(n.id),this.displayMessageIfMissingWallet(),this.resolveOrderFormVisibility();case 12:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"lotChanged",value:function(){var e=this.page,t=parseInt(e.lotField.value||"0");if(t<=0)return e.lotField.value=""===e.lotField.value?"":"0",e.qtyField.value="",this.previewQuoteAmt(!1),void this.setOrderBttnEnabled(!1,ke(re));var n=t*this.market.cfg.lotsize;if(e.lotField.value=String(t),e.qtyField.value=String(n/this.market.baseUnitInfo.conventional.conversionFactor),!this.isLimit()&&this.isSell()){var r=ft().assets[this.market.base.id].wallet;this.setOrderBttnEnabled(n<=r.balance.available,ke(ne))}this.previewQuoteAmt(!0)}},{key:"quantityChanged",value:function(e){var t=this.page,n=this.currentOrder=this.parseOrder();if(n.qty<0)return t.lotField.value="0",t.qtyField.value="",void this.previewQuoteAmt(!1);var r=this.market.cfg.lotsize,a=Math.floor(n.qty/r),o=n.qty=this.currentOrder.qty=a*r;t.lotField.value=String(a),(n.isLimit||n.sell)&&(e&&(t.qtyField.value=String(o/this.market.baseUnitInfo.conventional.conversionFactor)),this.previewQuoteAmt(!0))}},{key:"marketBuyChanged",value:function(){var e=this.page,t=Ya(e.mktBuyField.value||"",this.market.quoteUnitInfo.conventional.conversionFactor),n=this.midGap();if(t>0){var r=ft().assets[this.market.quote.id].wallet;this.setOrderBttnEnabled(t<=r.balance.available,ke(te))}else this.setOrderBttnEnabled(!1,ke(re));if(!n||!t)return e.mktBuyLots.textContent="0",void(e.mktBuyScore.textContent="0");var a=t/n,o=a/this.market.cfg.lotsize;e.mktBuyLots.textContent=o.toFixed(1),e.mktBuyScore.textContent=Ne.formatCoinValue(a,this.market.baseUnitInfo)}},{key:"rateFieldChanged",value:function(){var e=this.adjustedRate();if(e<=0)return this.depthLines.input=[],this.drawChartLines(),this.page.rateField.value="0",this.previewQuoteAmt(!0),void this.updateOrderBttnState();var t=this.currentOrder=this.parseOrder(),n=e/this.market.rateConversionFactor;this.page.rateField.value=String(n),this.depthLines.input=[{rate:n,color:t.sell?this.depthChart.theme.sellLine:this.depthChart.theme.buyLine}],this.drawChartLines(),this.previewQuoteAmt(!0),this.updateOrderBttnState()}},{key:"adjustedRate",value:function(){var e=this.page.rateField.value;if(!e)return NaN;var t=Ya(e,this.market.rateConversionFactor);return t-t%this.market.cfg.ratestep}},{key:"loadTable",value:function(){this.loadTableSide(!0),this.loadTableSide(!1)}},{key:"binOrdersByRateAndEpoch",value:function(e){if(!e||!e.length)return[];var t=[],n=[],r=[],a=e[0].msgRate;e[0].epoch?n.push(e[0]):r.push(e[0]);for(var o=1;o<e.length;o++)e[o].msgRate!==a&&(t.push(r),t.push(n),n=[],r=[],a=e[o].msgRate),e[o].epoch?n.push(e[o]):r.push(e[o]);return t.push(r),t.push(n),t.filter((function(e){return e.length>0}))}},{key:"loadTableSide",value:function(e){var t=this,n=e?this.book.sells:this.book.buys,r=e?this.page.sellRows:this.page.buyRows;Ne.empty(r),n&&n.length&&this.binOrdersByRateAndEpoch(n).forEach((function(e){r.appendChild(t.orderTableRow(e))}))}},{key:"addTableOrder",value:function(e){var t=e.sell?this.page.sellRows:this.page.buyRows,n=t.firstChild;if(0!==e.rate){for(n&&0===n.manager.getRate()&&(n=n.nextSibling);n;){if(0===n.manager.compare(e))return void n.manager.insertOrder(e);if(n.manager.compare(e)>0){var r=this.orderTableRow([e]);return void t.insertBefore(r,n)}n=n.nextSibling}var a=this.orderTableRow([e]);t.appendChild(a)}else{if(0===e.qtyAtomic)return;n&&0===n.manager.getRate()?n.manager.insertOrder(e):(n=this.orderTableRow([e]),t.insertBefore(n,t.firstChild))}}},{key:"removeTableOrder",value:function(e){for(var t=e.token,n=0,r=[this.page.sellRows,this.page.buyRows];n<r.length;n++)for(var a=r[n],o=0,s=Array.from(a.children);o<s.length;o++)if(s[o].manager.removeOrder(t))return}},{key:"updateTableOrder",value:function(e){for(var t=0,n=[this.page.sellRows,this.page.buyRows];t<n.length;t++)for(var r=n[t],a=0,o=Array.from(r.children);a<o.length;a++)if(o[a].manager.updateOrderQty(e))return}},{key:"clearOrderTableEpochs",value:function(){this.clearOrderTableEpochSide(this.page.sellRows),this.clearOrderTableEpochSide(this.page.buyRows)}},{key:"clearOrderTableEpochSide",value:function(e){for(var t=0,n=Array.from(e.children);t<n.length;t++)n[t].manager.removeEpochOrders()}},{key:"orderTableRow",value:function(e){var t=this,n=this.page.orderRowTmpl.cloneNode(!0),r=this.market,a=r.baseUnitInfo,o=r.quoteUnitInfo,s=r.rateConversionFactor,i=r.cfg.ratestep,c=new $a(n,e,a,o,i);return n.manager=c,Ea(n,"click",(function(){t.reportDepthClick(n.manager.getRate()/s)})),0!==n.manager.getRate()&&Ne.bind(n,"mouseenter",(function(){var e=t.depthChart;t.depthLines.hover=[{rate:n.manager.getRate()/s,color:n.manager.isSell()?e.theme.sellLine:e.theme.buyLine}],t.drawChartLines()})),n}},{key:"handleConnNote",value:(t=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.marketList.setConnectionStatus(t),t.connectionStatus!==ut.Connected){e.next=6;break}return e.next=4,ft().fetchUser();case 4:return e.next=6,ft().loadPage("markets");case 6:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})},{key:"filterMarkets",value:function(){var e,t=null===(e=this.page.marketSearchV1.value)||void 0===e?void 0:e.toLowerCase(),n=t?function(e){return e.name.includes(t)}:function(){return!0};this.marketList.setFilter(n)}},{key:"drawChartLines",value:function(){this.depthChart.setLines([].concat(r(this.depthLines.hover),r(this.depthLines.input))),this.depthChart.draw()}},{key:"candleDurationSelected",value:function(e){var t,n;null!==(t=this.market)&&void 0!==t&&null!==(n=t.dex)&&void 0!==n&&n.candleDurs.includes(e)||(e="1h"),this.candleDur=e,this.loadCandles(),k.storeLocal(k.lastCandleDurationLK,e)}},{key:"loadCandles",value:function(){var e,t=Aa(Ne.kids(this.page.durBttnBox));try{for(t.s();!(e=t.n()).done;){var n=e.value;n.textContent===this.candleDur?n.classList.add("selected"):n.classList.remove("selected")}}catch(e){t.e(e)}finally{t.f()}var r=this.market,a=r.candleCaches,o=r.cfg,s=r.baseUnitInfo,i=r.quoteUnitInfo,c=a[this.candleDur];c?this.candleChart.setCandles(c,o,s,i):this.requestCandles()}},{key:"requestCandles",value:function(e){var t=this;this.candlesLoading={loaded:function(){},timer:window.setTimeout((function(){t.candlesLoading&&(t.candlesLoading=null,console.error("candles not received"))}),1e4)};var n=this.market,r=n.dex,a=n.baseCfg,o=n.quoteCfg;Ta.request("loadcandles",{host:r.host,base:a.id,quote:o.id,dur:e||this.candleDur})}},{key:"unload",value:function(){Ta.request("unmarket",{}),Ta.deregisterRoute(Ba),Ta.deregisterRoute(Pa),Ta.deregisterRoute(La),Ta.deregisterRoute(Oa),Ta.deregisterRoute(Ma),Ta.deregisterRoute(qa),Ta.deregisterRoute(Na),this.depthChart.unattach(),this.candleChart.unattach(),Ne.unbind(document,"keyup",this.keyup),clearInterval(this.secondTicker)}}]),_}(lt),za=function(){function e(t){i(this,e),h(this,"div",void 0),h(this,"rowTmpl",void 0),h(this,"markets",void 0),h(this,"selected",void 0),this.div=t,this.rowTmpl=Ne.idel(t,"marketTmplV1"),Ne.cleanTemplates(this.rowTmpl),this.reloadMarketsPane()}return d(e,[{key:"updateSpots",value:function(e){var t,n=Aa(this.markets);try{for(n.s();!(t=n.n()).done;){var r=t.value;if(r.mkt.xc.host===e.host){var a=ft().exchanges[r.mkt.xc.host],o=a.markets[r.mkt.name];eo(r.tmpl,a,o)}}}catch(e){n.e(e)}finally{n.f()}}},{key:"reloadMarketsPane",value:function(){Ne.empty(this.div),this.markets=[];for(var e,t,n,a,o,s=0,i=function(){for(var e=[],t=ft().assets,n=function(e,n){return n.map((function(n){var r=t[n.baseid],a=r?r.name:n.basesymbol,o=ft().unitInfo(n.baseid,e);return Object.assign({xc:e,baseName:a,bui:o},n)}))},a=0,o=Object.values(ft().exchanges);a<o.length;a++){var s=o[a];e.push.apply(e,r(n(s,Object.values(s.markets||{}))))}return e.sort((function(e,t){if(!e.spot)return t.spot?1:e.name===t.name?e.xc.host.localeCompare(t.xc.host):e.name.localeCompare(t.name);if(!t.spot)return-1;var n=e.spot.vol24/e.lotsize;return t.spot.vol24/t.lotsize-n})),e}();s<i.length;s++){var c=i[s];this.markets.push((e=c,void 0,void 0,void 0,void 0,t=ft().unitInfo(e.baseid,e.xc),n=ft().unitInfo(e.quoteid,e.xc),a=Ft/t.conventional.conversionFactor*n.conventional.conversionFactor,o=new Ga(this.rowTmpl,e,a),this.div.appendChild(o.node),o))}ft().bindTooltips(this.div)}},{key:"find",value:function(e,t,n){var r,a=Aa(this.markets);try{for(a.s();!(r=a.n()).done;){var o=r.value;if(o.mkt.xc.host===e&&o.mkt.baseid===t&&o.mkt.quoteid===n)return o}}catch(e){a.e(e)}finally{a.f()}return null}},{key:"exists",value:function(e,t,n){return null!==this.find(e,t,n)}},{key:"first",value:function(){return this.markets[0]}},{key:"select",value:function(e,t,n){var r=this.find(e,t,n);if(!r)return console.error("select: no market row for ".concat(e,", ").concat(t,"-").concat(n));var a,o=Aa(this.markets);try{for(o.s();!(a=o.n()).done;)a.value.node.classList.remove("selected")}catch(e){o.e(e)}finally{o.f()}this.selected=r,this.selected.node.classList.add("selected")}},{key:"setConnectionStatus",value:function(e){var t,n=Aa(this.markets);try{for(n.s();!(t=n.n()).done;){var r=t.value;r.mkt.xc.host===e.host&&(e.connectionStatus===ut.Connected?Ne.hide(r.tmpl.disconnectedIco):Ne.show(r.tmpl.disconnectedIco))}}catch(e){n.e(e)}finally{n.f()}}},{key:"setFilter",value:function(e){var t,n=Aa(this.markets);try{for(n.s();!(t=n.n()).done;){var r=t.value;e(r)?Ne.show(r.node):Ne.hide(r.node)}}catch(e){n.e(e)}finally{n.f()}}}]),e}(),Ga=d((function e(t,n,r){i(this,e),h(this,"node",void 0),h(this,"mkt",void 0),h(this,"name",void 0),h(this,"baseID",void 0),h(this,"quoteID",void 0),h(this,"lotSize",void 0),h(this,"tmpl",void 0),h(this,"rateConversionFactor",void 0),this.mkt=n,this.name=n.name,this.baseID=n.baseid,this.quoteID=n.quoteid,this.lotSize=n.lotsize,this.rateConversionFactor=r,this.node=t.cloneNode(!0);var a,o,s,c,l=this.tmpl=Ne.parseTemplate(this.node);l.baseIcon.src=Ne.logoPath(n.basesymbol),l.quoteIcon.src=Ne.logoPath(n.quotesymbol),l.baseSymbol.appendChild(Ne.symbolize(n.xc.assets[n.baseid],!0)),l.quoteSymbol.appendChild(Ne.symbolize(n.xc.assets[n.quoteid],!0)),l.baseName.textContent=n.baseName,l.host.textContent=n.xc.host,l.host.style.color=(s=n.xc.host,(c=Object.keys(ft().exchanges)).sort(),a=c.indexOf(s),o=to[a%to.length],"hsl(".concat(360*o,", 35%, 50%)")),l.host.dataset.tooltip=n.xc.host,eo(l,n.xc,n),this.mkt.xc.connectionStatus!==ut.Connected&&Ne.show(l.disconnectedIco)})),Xa=function(){function e(t,n){var r=this;i(this,e),h(this,"base",void 0),h(this,"quote",void 0),h(this,"dex",void 0),Ne.hide(t,n);var a=Ne.parseTemplate(t);this.base={id:0,parentID:ja,cfg:null,node:t,tmpl:a,iconBox:a.walletState,stateIcons:new Ue(a.walletState)},a.balanceRowTmpl.remove();var o=Ne.parseTemplate(n);this.quote={id:0,parentID:ja,cfg:null,node:n,tmpl:o,iconBox:o.walletState,stateIcons:new Ue(o.walletState)},o.balanceRowTmpl.remove(),ft().registerNoteFeeder({balance:function(e){r.updateAsset(e.assetID)},walletstate:function(e){r.updateAsset(e.wallet.assetID)},walletsync:function(e){r.updateAsset(e.assetID)},createwallet:function(e){r.updateAsset(e.assetID)}})}var t;return d(e,[{key:"setBalanceVisibility",value:function(e){e?Ne.show(this.base.node,this.quote.node):Ne.hide(this.base.node,this.quote.node)}},{key:"setWallets",value:function(e,t,n){var r=function(e){var t=ft().assets[e];return null!=t&&t.token?t.token.parentID:ja};this.dex=ft().user.exchanges[e],this.base.id=t,this.base.parentID=r(t),this.base.cfg=this.dex.assets[t],this.quote.id=n,this.quote.parentID=r(n),this.quote.cfg=this.dex.assets[n],this.updateWallet(this.base),this.updateWallet(this.quote),this.setBalanceVisibility(this.dex.connectionStatus===ut.Connected)}},{key:"updateWallet",value:function(e){var t=e.cfg,n=e.tmpl,r=e.iconBox,a=e.stateIcons,o=e.id;if(t){var s=ft().assets[o];if(Ne.hide(n.newWalletRow,n.expired,n.unsupported,n.connect,n.spinner,n.walletState,n.balanceRows,n.walletAddr,n.wantProvidersBox),this.checkNeedsProvider(o,n.wantProvidersBox),n.logo.src=Ne.logoPath(t.symbol),n.addWalletSymbol.textContent=t.symbol.toUpperCase(),Ne.empty(n.symbol),s){n.symbol.appendChild(Ne.symbolize(s,!0)),Ne.show(r);var i=s.wallet;if(a.readWallet(i),!i)return s.walletCreationPending?void Ne.show(n.spinner):void Ne.show(n.newWalletRow);Ne.show(n.walletAddr);var c=i.balance;if(c||i.running||i.disabled){if(!c)return ft().fetchBalance(o),void Ne.show(n.spinner);Ne.show(n.balanceRows),Ne.empty(n.balanceRows);var l=function(t,r,a,o){var s=n.balanceRowTmpl.cloneNode(!0);n.balanceRows.appendChild(s);var i=Ne.parseTemplate(s);i.title.textContent=t,i.bal.textContent=Ne.formatCoinValue(r,a),o&&(i.bal.append(o),e.parentBal=i.bal)};if(l(ke("AVAILABLE"),c.available,s.unitInfo),l(ke(z),c.locked+c.contractlocked+c.bondlocked,s.unitInfo),l(ke("IMMATURE"),c.immature,s.unitInfo),s.token){var u=ft().assets[s.token.parentID],d=u.wallet.balance,h=u.unitInfo,p=u.symbol,f=document.createElement("img");f.src=Ne.logoPath(p),f.classList.add("micro-icon","ms-1"),l(ke("FEE_BALANCE"),d.available,h,f)}(new Date).getTime()-new Date(c.stamp).getTime()>36e5&&!i.disabled?(Ne.show(n.expired),i.running&&ft().fetchBalance(o)):Ne.hide(n.expired)}else Ne.show(n.connect)}else Ne.show(n.unsupported)}}},{key:"checkNeedsProvider",value:(t=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=Ne,e.next=3,ft().needsCustomProvider(t);case 3:e.t1=e.sent,e.t2=n,e.t0.setVis.call(e.t0,e.t1,e.t2);case 6:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})},{key:"updateParent",value:function(e){var t,n=ft().assets[e.parentID],r=n.wallet.balance,a=n.unitInfo;null!==(t=e.parentBal)&&void 0!==t&&t.firstChild&&(e.parentBal.firstChild.textContent=Ne.formatCoinValue(r.available,a))}},{key:"updateAsset",value:function(e){e===this.base.id?this.updateWallet(this.base):e===this.quote.id&&this.updateWallet(this.quote),e===this.base.parentID&&this.updateParent(this.base),e===this.quote.parentID&&this.updateParent(this.quote)}}]),e}();function Ka(e,t,n){return{host:e,base:t,quote:n}}function Qa(e,t){return"".concat(e,"_").concat(t)}function Ya(e,t){return e?Math.round(parseFloat(e)*t):0}function Ja(e,t){e.classList.remove("selected"),t.classList.add("selected")}function Za(e){for(var t={},n=0,r=Object.entries(e.options);n<r.length;n++){var o=a(r[n],2),s=o[0],i=o[1];t[s]=JSON.stringify(i)}return Object.assign({},e,{options:t})}var $a=function(){function e(t,n,r,a,o){i(this,e),h(this,"tableRow",void 0),h(this,"page",void 0),h(this,"orderBin",void 0),h(this,"sell",void 0),h(this,"msgRate",void 0),h(this,"epoch",void 0),h(this,"baseUnitInfo",void 0),this.tableRow=t;var s=this.page=Ne.parseTemplate(t);this.orderBin=n,this.sell=n[0].sell,this.msgRate=n[0].msgRate,this.epoch=!!n[0].epoch,this.baseUnitInfo=r;var c=Ne.formatRateFullPrecision(this.msgRate,r,a,o);if(Ne.setVis(this.isEpoch(),this.page.epoch),0===this.msgRate)s.rate.innerText="market";else{var l=this.isSell()?"sellcolor":"buycolor";s.rate.innerText=c,s.rate.classList.add(l)}this.updateQtyNumOrdersEl()}return d(e,[{key:"updateQtyNumOrdersEl",value:function(){var e=this.page,t=this.orderBin,n=t.reduce((function(e,t){return e+t.qtyAtomic}),0),r=t.length;e.qty.innerText=Ne.formatFullPrecision(n,this.baseUnitInfo),r>1?(e.numOrders.removeAttribute("hidden"),e.numOrders.innerText=String(r),e.numOrders.title="quantity is comprised of ".concat(r," orders")):e.numOrders.setAttribute("hidden","true")}},{key:"insertOrder",value:function(e){this.orderBin.push(e),this.updateQtyNumOrdersEl()}},{key:"updateOrderQty",value:function(e){for(var t=e.token,n=e.qty,r=e.qtyAtomic,a=0;a<this.orderBin.length;a++)if(this.orderBin[a].token===t)return this.orderBin[a].qty=n,this.orderBin[a].qtyAtomic=r,this.updateQtyNumOrdersEl(),!0;return!1}},{key:"removeOrder",value:function(e){var t=this.orderBin.findIndex((function(t){return t.token===e}));return!(t<0||(this.orderBin.splice(t,1),this.orderBin.length?this.updateQtyNumOrdersEl():this.tableRow.remove(),0))}},{key:"removeEpochOrders",value:function(e){this.orderBin=this.orderBin.filter((function(t){return!(t.epoch&&t.epoch!==e)})),this.orderBin.length?this.updateQtyNumOrdersEl():this.tableRow.remove()}},{key:"getRate",value:function(){return this.msgRate}},{key:"isEpoch",value:function(){return this.epoch}},{key:"isSell",value:function(){return this.sell}},{key:"compare",value:function(e){return this.getRate()===e.msgRate&&this.isEpoch()===!!e.epoch?0:this.getRate()!==e.msgRate?this.getRate()>e.msgRate===e.sell?1:-1:this.isEpoch()?1:-1}}]),e}();function eo(e,t,n){if(n.spot){e.price.textContent=Ne.formatFourSigFigs(ft().conventionalRate(n.baseid,n.quoteid,n.spot.rate,t));var r=n.spot.change24>0?"+":"";e.change.classList.remove("buycolor","sellcolor"),e.change.classList.add(n.spot.change24>=0?"buycolor":"sellcolor"),e.change.textContent="".concat(r).concat((100*n.spot.change24).toFixed(1),"%")}}var to=[.5,1/4,3/4,1/8,5/8,3/8,7/8];function no(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ro(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ro(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function ro(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var ao=function(e){g(p,e);var t,n,r,a,o,c,l,u=(c=p,l=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(e){return!1}}(),function(){var e,t=b(c);if(l){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function p(e){var t;i(this,p),h(v(t=u.call(this)),"main",void 0),h(v(t),"offset",void 0),h(v(t),"loading",void 0),h(v(t),"currentForm",void 0),h(v(t),"orderTmpl",void 0),h(v(t),"filterState",void 0),h(v(t),"page",void 0),t.main=e,t.offset="",t.loading=!1;var n=t.page=Ne.idDescendants(e);t.orderTmpl=n.rowTmpl,t.orderTmpl.remove();var r=t.filterState={hosts:[],assets:[],statuses:[]},a=new URLSearchParams(window.location.search),o=function(e,t){var n=a.get(t);if(n&&0!==n.length){var o=n.split(",");n&&(r[t]=o),e.querySelectorAll("input").forEach((function(e){o.indexOf(e.value)>=0&&(e.checked=!0)}))}};o(n.hostFilter,"hosts"),o(n.assetFilter,"assets"),o(n.statusFilter,"statuses");var s=[],c=function(e,n){var a=e.querySelector(".apply-bttn");s.push(a),Ne.bind(a,"click",(function(){t.submitFilter(),s.forEach((function(e){return Ne.hide(e)}))})),e.querySelectorAll("input").forEach((function(t){Ne.bind(t,"change",(function(){!function(e,t){if(e.length!==t.length)return!1;var n,r=no(e);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(-1===t.indexOf(a))return!1}}catch(e){r.e(e)}finally{r.f()}return!0}(oo(e),r[n])?Ne.show(a):Ne.hide(a)}))}))};return c(n.hostFilter,"hosts"),c(n.assetFilter,"assets"),c(n.statusFilter,"statuses"),Ne.bind(t.main,"scroll",(function(){t.loading||n.ordersTable.offsetHeight-t.main.offsetHeight-t.main.scrollTop<0&&t.nextPage()})),n.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){Ne.hide(n.forms)}))})),Ne.bind(n.forms,"mousedown",(function(e){Ne.mouseInElement(e,t.currentForm)||Ne.hide(n.forms)})),Ne.bind(n.exportOrders,"click",(function(){t.exportOrders()})),n.showArchivedDateField.addEventListener("change",(function(){n.showArchivedDateField.checked?Ne.show(n.archivedDateField):Ne.hide(n.archivedDateField,n.deleteArchivedRecordsErr)})),Ne.bind(n.deleteArchivedRecords,"click",(function(){var e=t.page;e.showArchivedDateField.checked=!1,e.saveMatchesToFile.checked=!1,e.saveOrdersToFile.checked=!1,e.deleteArchivedRecordsErr.textContent="",e.archivedRecordsLocation.textContent="",e.deleteArchivedRecordsMsg.textContent="",Ne.hide(e.deleteArchivedResult,e.deleteArchivedRecordsErr,e.deleteArchivedRecordsMsg,e.archivedRecordsLocation,e.archivedDateField),t.showForm(e.deleteArchivedRecordsForm)})),Ne.bind(n.deleteArchivedRecordsSubmit,"click",(function(){var e=0;n.showArchivedDateField.checked&&(e=Date.parse(n.olderThan.value||""),isNaN(e)||e<=0)?Ne.showFormError(n.deleteArchivedRecordsErr,ke("INVALID_DATE_ERR_MSG")):t.deleteArchivedRecords(e)})),t.submitFilter(),t}return d(p,[{key:"showForm",value:(o=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.currentForm=t,n=this.page,Ne.hide(n.deleteArchivedRecordsForm),t.style.right="10000px",Ne.show(n.forms,t),r=(n.forms.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(500,(function(e){t.style.right="".concat((1-e)*r,"px")}),"easeOutHard");case 8:t.style.right="0px";case 9:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"setOrders",value:function(e){Ne.empty(this.page.tableBody),this.appendOrders(e)}},{key:"appendOrders",value:function(e){var t,n=this.page.tableBody,r=no(e);try{for(r.s();!(t=r.n()).done;){var a=t.value,o=this.orderTmpl.cloneNode(!0),s=Ne.parseTemplate(o),i=void 0,c=void 0,l=void 0,u=void 0,d=void 0,h="",p=ft().exchanges[a.host]||void 0;if((ft().assets[a.baseID]||p.assets[a.baseID])&&(ft().assets[a.quoteID]||p.assets[a.quoteID])){var f=[ft().unitInfo(a.baseID,p),ft().unitInfo(a.quoteID,p)],v=f[0],m=f[1];if(a.sell){var g=[a.baseSymbol,a.quoteSymbol];i=g[0],c=g[1];var y=[v.conventional.unit,m.conventional.unit];l=y[0],u=y[1],d=Ne.formatCoinValue(a.qty,v),1===a.type&&(h=Ne.formatCoinValue(a.qty/Ft*a.rate,m))}else{var b=[a.quoteSymbol,a.baseSymbol];i=b[0],c=b[1];var x=[m.conventional.unit,v.conventional.unit];l=x[0],u=x[1],2===a.type?d=Ne.formatCoinValue(a.qty,v):(d=Ne.formatCoinValue(a.qty/Ft*a.rate,m),h=Ne.formatCoinValue(a.qty,v))}var k="".concat(v.conventional.unit,"-").concat(m.conventional.unit);s.host.textContent="".concat(k," @ ").concat(a.host),s.fromQty.textContent=d,s.fromLogo.src=Ne.logoPath(i),s.fromSymbol.textContent=l,s.toQty.textContent=h,s.toLogo.src=Ne.logoPath(c),s.toSymbol.textContent=u,s.type.textContent="".concat(Dt(a)," ").concat(Tt(a));var w=Ne.formatCoinValue(ft().conventionalRate(a.baseID,a.quoteID,a.rate,p));2===a.type&&(w=Pt(a)),s.rate.textContent=w,s.status.textContent=Rt(a),s.filled.textContent="".concat((Et(a)/a.qty*100).toFixed(1),"%"),s.settled.textContent="".concat((Bt(a)/a.qty*100).toFixed(1),"%");var C=new Date(a.submitTime).toLocaleString();s.timeAgo.textContent="".concat(Ne.timeSince(a.submitTime)," ago"),s.time.textContent=C,Ne.tmplElement(o,"link").href="order/".concat(a.id),ft().bindInternalNavigation(o),n.appendChild(o)}}}catch(e){r.e(e)}finally{r.f()}50===e.length?this.offset=e[e.length-1].id:this.offset=""}},{key:"submitFilter",value:(a=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,this.offset="",(n=this.filterState).hosts=oo(t.hostFilter),n.assets=oo(t.assetFilter).map((function(e){return parseInt(e)})),n.statuses=oo(t.statusFilter).map((function(e){return parseInt(e)})),e.t0=this,e.next=9,this.fetchOrders();case 9:e.t1=e.sent,e.t0.setOrders.call(e.t0,e.t1);case 11:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"fetchOrders",value:(r=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=ft().loading(this.main),e.next=3,S("/api/orders",this.currentFilter());case 3:return n=e.sent,t(),e.abrupt("return",n.orders);case 6:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"exportOrders",value:function(){this.offset="";var e=this.currentFilter(),t=new URL(window.location.href),n=new URLSearchParams(""),r=function(t){e[t].forEach((function(e){n.append(t,e)}))};r("hosts"),r("assets"),r("statuses"),t.search=n.toString(),t.pathname="/orders/export",window.open(t.toString())}},{key:"deleteArchivedRecords",value:(n=s(f().mark((function e(t){var n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,r=n.saveMatchesToFile.checked||!1,a=n.saveOrdersToFile.checked||!1,o={olderThanMs:t,saveMatchesToFile:r,saveOrdersToFile:a},s=ft().loading(this.main),e.next=7,S("/api/deletearchivedrecords",o);case 7:if(i=e.sent,s(),ft().checkResponse(i)){e.next=11;break}return e.abrupt("return",Ne.showFormError(n.deleteArchivedRecordsErr,i.msg));case 11:i.archivedRecordsDeleted>0?(n.deleteArchivedRecordsMsg.textContent=ke("DELETE_ARCHIVED_RECORDS_RESULT",{nRecords:i.archivedRecordsDeleted}),(r||a)&&(n.archivedRecordsLocation.textContent=ke("ARCHIVED_RECORDS_PATH",{path:i.archivedRecordsPath}),Ne.show(n.archivedRecordsLocation)),this.submitFilter()):n.deleteArchivedRecordsMsg.textContent=ke("NO_ARCHIVED_RECORDS"),Ne.show(n.deleteArchivedResult,n.deleteArchivedRecordsMsg);case 13:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"currentFilter",value:function(){var e,t,n=this.filterState;return{hosts:n.hosts,assets:null===(e=n.assets)||void 0===e?void 0:e.map((function(e){return parseInt(e)})),statuses:null===(t=n.statuses)||void 0===t?void 0:t.map((function(e){return parseInt(e)})),n:50,offset:this.offset}}},{key:"nextPage",value:(t=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(""!==this.offset&&!this.loading){e.next=2;break}return e.abrupt("return");case 2:return this.loading=!0,Ne.show(this.page.orderLoader),e.next=6,this.fetchOrders();case 6:t=e.sent,this.loading=!1,Ne.hide(this.page.orderLoader),this.appendOrders(t);case 10:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),p}(lt);function oo(e){var t=[];return e.querySelectorAll("input").forEach((function(e){e.checked&&t.push(e.value)})),t}function so(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return io(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?io(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function io(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var co=288e5,lo=function(e){g(p,e);var t,n,r,a,o,c,l,u=(c=p,l=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(e){return!1}}(),function(){var e,t=b(c);if(l){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function p(e){var t;i(this,p),h(v(t=u.call(this)),"orderID",void 0),h(v(t),"order",void 0),h(v(t),"page",void 0),h(v(t),"currentForm",void 0),h(v(t),"secondTicker",void 0),h(v(t),"refreshOnPopupClose",void 0),h(v(t),"accelerateOrderForm",void 0),h(v(t),"stampers",void 0);var n=t.page=Ne.idDescendants(e);t.stampers=Ne.applySelector(e,"[data-stamp]"),t.orderID=e.dataset.oid||"",Ne.cleanTemplates(n.matchCardTmpl);var r=function(){var e,n=so(t.stampers);try{for(n.s();!(e=n.n()).done;){var r=e.value;r.textContent=Ne.timeSince(parseInt(r.dataset.stamp||""))}}catch(e){n.e(e)}finally{n.f()}};return r(),n.forms.querySelectorAll(".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){t.refreshOnPopupClose?window.location.replace(window.location.href):Ne.hide(n.forms)}))})),e.querySelectorAll("[data-explorer-id]").forEach((function(e){Pn(parseInt(e.dataset.explorerId||""),e)})),n.cancelBttn&&Ne.bind(n.cancelBttn,"click",(function(){t.showForm(n.cancelForm)})),Ne.bind(n.accelerateBttn,"click",(function(){t.showAccelerateForm()})),mt(n),t.accelerateOrderForm=new br(n.accelerateForm,(function(){t.refreshOnPopupClose=!0})),Ne.cleanTemplates(n.booleanOptTmpl,n.rangeOptTmpl,n.orderOptTmpl),Ne.bind(n.forms,"mousedown",(function(e){if(!Ne.mouseInElement(e,t.currentForm)){if(t.refreshOnPopupClose)return void window.location.reload();Ne.hide(n.forms)}})),Br(n.cancelForm,n.cancelSubmit,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.submitCancel();case 1:case"end":return e.stop()}}),e)})))),t.secondTicker=window.setInterval((function(){r()}),1e4),ft().registerNoteFeeder({order:function(e){t.handleOrderNote(e)},match:function(e){t.handleMatchNote(e)}}),t.start(),t}return d(p,[{key:"start",value:(o=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t=ft().order(this.orderID))){e.next=5;break}this.order=t,e.next=8;break;case 5:return e.next=7,this.fetchOrder();case 7:t=e.sent;case 8:this.page.mktBaseSymbol.replaceWith(Ne.symbolize(ft().assets[t.baseID])),this.page.mktQuoteSymbol.replaceWith(Ne.symbolize(ft().assets[t.quoteID])),this.setAccelerationButtonVis(),this.showMatchCards();case 12:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"unload",value:function(){clearInterval(this.secondTicker)}},{key:"fetchOrder",value:(a=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/order",this.orderID);case 2:if(t=e.sent,ft().checkResponse(t)){e.next=5;break}throw t.msg;case 5:return this.order=t.order,e.abrupt("return",this.order);case 7:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"setImmutableMatchCardElements",value:function(e,t){var n=Ne.parseTemplate(e);n.matchID.textContent=t.matchID;var r=new Date(t.stamp);n.matchTime.textContent=r.toLocaleTimeString(Ne.languages(),{year:"numeric",month:"short",day:"numeric"}),n.matchTimeAgo.dataset.stamp=t.stamp.toString(),n.matchTimeAgo.textContent=Ne.timeSince(t.stamp),this.stampers.push(n.matchTimeAgo);var a=function(e,t){var n=t.qty;return It(e)&&(n=Ot(t.rate,t.qty)),(n/e.qty*100).toFixed(1)+" %"}(this.order,t),o=Ne.bipSymbol(this.order.baseID),s=Ne.bipSymbol(this.order.quoteID),i=ft().unitInfo(this.order.baseID),c=ft().unitInfo(this.order.quoteID),l=[i.conventional.unit.toLowerCase(),c.conventional.unit.toLowerCase()],u=l[0],d=l[1],h=Ot(t.rate,t.qty);if(t.isCancel)return Ne.show(n.cancelInfoDiv),Ne.hide(n.infoDiv,n.status,n.statusHdr),this.order.sell?(n.cancelAmount.textContent=Ne.formatCoinValue(t.qty,i),n.cancelIcon.src=Ne.logoPathFromID(this.order.baseID)):(n.cancelAmount.textContent=Ne.formatCoinValue(h,c),n.cancelIcon.src=Ne.logoPathFromID(this.order.quoteID)),void(n.cancelOrderPortion.textContent=a);Ne.show(n.infoDiv),Ne.hide(n.cancelInfoDiv),n.orderPortion.textContent=a,0===t.side?(n.side.textContent=ke("MAKER"),Ne.show(n.makerSwapYou,n.makerRedeemYou,n.takerSwapThem,n.takerRedeemThem),Ne.hide(n.takerSwapYou,n.takerRedeemYou,n.makerSwapThem,n.makerRedeemThem)):(n.side.textContent=ke("TAKER"),Ne.hide(n.makerSwapYou,n.makerRedeemYou,n.takerSwapThem,n.takerRedeemThem),Ne.show(n.takerSwapYou,n.takerRedeemYou,n.makerSwapThem,n.makerRedeemThem)),0===t.side&&this.order.sell||1===t.side&&!this.order.sell?(n.makerSwapAsset.textContent=u,n.takerSwapAsset.textContent=d,n.makerRedeemAsset.textContent=d,n.takerRedeemAsset.textContent=u):(n.makerSwapAsset.textContent=d,n.takerSwapAsset.textContent=u,n.makerRedeemAsset.textContent=u,n.takerRedeemAsset.textContent=d);var p=ft().conventionalRate(this.order.baseID,this.order.quoteID,t.rate);n.rate.textContent="".concat(p," ").concat(u,"/").concat(d),this.order.sell?(n.refundAsset.textContent=o,n.fromAmount.textContent=Ne.formatCoinValue(t.qty,i),n.toAmount.textContent=Ne.formatCoinValue(h,c),n.fromIcon.src=Ne.logoPathFromID(this.order.baseID),n.toIcon.src=Ne.logoPathFromID(this.order.quoteID)):(n.refundAsset.textContent=s,n.fromAmount.textContent=Ne.formatCoinValue(h,c),n.toAmount.textContent=Ne.formatCoinValue(t.qty,i),n.fromIcon.src=Ne.logoPathFromID(this.order.quoteID),n.toIcon.src=Ne.logoPathFromID(this.order.baseID))}},{key:"setMutableMatchCardElements",value:function(e,t){if(!t.isCancel){var n=Ne.parseTemplate(e);n.status.textContent=function(e){if(e.revoked)return e.active?e.redeem?Mt(Q):0===e.side?Mt(J):e.counterRedeem?Mt("MATCH_STATUS_REDEEM_PENDING"):Mt(J):e.refund?Mt("MATCH_STATUS_REFUNDED"):e.redeem?Mt(Y):Mt("MATCH_STATUS_COMPLETE");switch(e.status){case 0:return ke("MATCH_STATUS_NEWLY_MATCHED");case 1:return ke("MATCH_STATUS_MAKER_SWAP_CAST");case 2:return ke("MATCH_STATUS_TAKER_SWAP_CAST");case 3:return 0===e.side?ke(Q):ke("MATCH_STATUS_MAKER_REDEEMED");case 4:return ke(Q);case 5:return ke(Y)}return ke(W)}(t);var r=function(e,t,n){if(!n)return Ne.hide(t),void Ne.show(e);t.textContent=Bn(n.stringID),t.dataset.explorerCoin=n.stringID,Pn(n.assetID,t),Ne.show(t),Ne.hide(e)};if(r(n.makerSwapPending,n.makerSwapCoin,ho(t)),r(n.takerSwapPending,n.takerSwapCoin,po(t)),r(n.makerRedeemPending,n.makerRedeemCoin,fo(t)),r(n.takerRedeemPending,n.takerRedeemCoin,vo(t)),t.refund)n.refundCoin.textContent=Bn(t.refund.stringID),n.refundCoin.dataset.explorerCoin=t.refund.stringID,Pn(t.refund.assetID,n.refundCoin),Ne.show(n.refundCoin),Ne.hide(n.refundPending);else{var a=72e6;1===t.side&&(a=co);var o=new Date(t.stamp+a);if(Date.now()>o.getTime())n.refundPending.textContent=ke("REFUND_IMMINENT");else{var s=o.toLocaleTimeString(Ne.languages(),{year:"numeric",month:"short",day:"numeric"});n.refundPending.textContent=ke("REFUND_WILL_HAPPEN_AFTER",{refundAfterTime:s})}Ne.hide(n.refundCoin),Ne.show(n.refundPending)}if(1!==t.status||t.revoked||t.refund)if(2!==t.status||t.revoked||t.refund)!function(e){return e.status<5&&0===e.side&&e.status>=3}(t)||t.revoked||t.refund?!function(e){return e.status<5&&1===e.side&&e.status>=4}(t)||t.revoked||t.refund?Ne.hide(n.makerSwapMsg,n.takerSwapMsg,n.makerRedeemMsg,n.takerRedeemMsg):(n.takerRedeemMsg.textContent=uo(t.redeem),Ne.hide(n.makerSwapMsg,n.takerSwapMsg,n.makerRedeemMsg),Ne.show(n.takerRedeemMsg)):(n.makerRedeemMsg.textContent=uo(t.redeem),Ne.hide(n.makerSwapMsg,n.takerSwapMsg,n.takerRedeemMsg),Ne.show(n.makerRedeemMsg));else{var i=po(t);n.takerSwapMsg.textContent=uo(i),Ne.hide(n.makerSwapMsg,n.makerRedeemMsg,n.takerRedeemMsg),Ne.show(n.takerSwapMsg)}else{var c=ho(t);n.makerSwapMsg.textContent=uo(c),Ne.hide(n.takerSwapMsg,n.makerRedeemMsg,n.takerRedeemMsg),Ne.show(n.makerSwapMsg)}if(t.revoked){Ne.setVis(ho(t),n.makerSwap),Ne.setVis(po(t),n.takerSwap);var l=new Date(t.stamp+co),u=Date.now()>l.getTime();Ne.setVis(fo(t)||po(t)&&t.active&&!t.refund&&!u,n.makerRedeem),Ne.setVis(vo(t)||fo(t)&&t.active&&!t.refund,n.takerRedeem);var d=Boolean(po(t));0===t.side&&(d=Boolean(ho(t)),po(t)&&(d=d&&u)),Ne.setVis(t.refund||t.active&&!t.redeem&&!t.counterRedeem&&d,n.refund)}else Ne.setVis(ho(t)||t.active,n.makerSwap),Ne.setVis(po(t)||t.active,n.takerSwap),Ne.setVis(fo(t)||t.active,n.makerRedeem),Ne.setVis(vo(t)||t.active,n.takerRedeem),Ne.setVis(t.refund,n.refund)}}},{key:"addNewMatchCard",value:function(e){var t=this.page,n=t.matchCardTmpl.cloneNode(!0);ft().bindUrlHandlers(n),n.dataset.matchID=e.matchID,this.setImmutableMatchCardElements(n,e),this.setMutableMatchCardElements(n,e),t.matchBox.appendChild(n)}},{key:"showMatchCards",value:function(){var e=this,t=this.order;t&&t.matches&&(t.matches.sort((function(e,t){return e.stamp-t.stamp})),t.matches.forEach((function(t){return e.addNewMatchCard(t)})))}},{key:"showCancel",value:function(){var e=this.order,t=this.page,n=e.qty-e.filled,r=It(e)?ft().assets[e.quoteID]:ft().assets[e.baseID];t.cancelRemain.textContent=Ne.formatCoinValue(n,r.unitInfo),t.cancelUnit.textContent=r.unitInfo.conventional.unit.toUpperCase(),this.showForm(t.cancelForm)}},{key:"showForm",value:(r=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.currentForm=t,n=this.page,Ne.hide(n.cancelForm,n.accelerateForm),t.style.right="10000px",Ne.show(n.forms,t),r=(n.forms.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(500,(function(e){t.style.right="".concat((1-e)*r,"px")}),"easeOutHard");case 8:t.style.right="0px";case 9:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"submitCancel",value:(n=s(f().mark((function e(){var t,n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.order,r={orderID:n.id},a=ft().loading(t.cancelForm),e.next=6,S("/api/cancel",r);case 6:if(o=e.sent,a(),ft().checkResponse(o)){e.next=10;break}return e.abrupt("return");case 10:t.status.textContent=ke(q),Ne.hide(t.forms),n.cancelling=!0;case 13:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"setAccelerationButtonVis",value:function(){var e=this.order;if(e){var t=this.page;Ne.setVis(ft().canAccelerateOrder(e),t.accelerateBttn,t.actionsLabel)}}},{key:"showAccelerateForm",value:(t=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=ft().loading(this.page.accelerateBttn),this.accelerateOrderForm.refresh(this.order),t(),this.showForm(this.page.accelerateForm);case 4:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"handleOrderNote",value:function(e){var t=this.page,n=e.order;if(n.id===this.orderID){this.order=n;var r=t.cancelBttn;r&&n.status>2&&Ne.hide(r),t.status.textContent=Rt(n);var a,o=so(n.matches||[]);try{for(o.s();!(a=o.n()).done;){var s=a.value;this.processMatch(s)}}catch(e){o.e(e)}finally{o.f()}this.setAccelerationButtonVis()}}},{key:"handleMatchNote",value:function(e){e.orderID===this.orderID&&(this.processMatch(e.match),this.setAccelerationButtonVis())}},{key:"processMatch",value:function(e){var t,n=null,r=so(Ne.applySelector(this.page.matchBox,".match-card"));try{for(r.s();!(t=r.n()).done;){var a=t.value;if(a.dataset.matchID===e.matchID){n=a;break}}}catch(e){r.e(e)}finally{r.f()}n?this.setMutableMatchCardElements(n,e):this.addNewMatchCard(e)}}]),p}(lt);function uo(e){return e.confs&&0!==e.confs.required?"".concat(e.confs.count," / ").concat(e.confs.required," ").concat(ke("CONFIRMATIONS")):""}function ho(e){return 0===e.side?e.swap:e.counterSwap}function po(e){return 0===e.side?e.counterSwap:e.swap}function fo(e){return 0===e.side?e.redeem:e.counterRedeem}function vo(e){return 0===e.side?e.counterRedeem:e.redeem}function mo(){return mo="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=b(e)););return e}(e,t);if(r){var a=Object.getOwnPropertyDescriptor(r,t);return a.get?a.get.call(arguments.length<3?e:n):a.value}},mo.apply(this,arguments)}function go(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return yo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?yo(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){throw e})),f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e){i=!0,o=e})),f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function yo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function bo(e){var t=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(e){return!1}}();return function(){var n,r=b(e);if(t){var a=b(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return y(this,n)}}function xo(e){var t,n=e.cex,r=n.avail,a=n.req,o=e.dex,s=o.avail,i=o.req,c=e.transferable,l=Math.min(s,i),u=Math.min(r,a);if(e.fundedAndNotBalanced)if(s>i){var d=a-r;if(s-i<d)throw Error("bad math has us with dex surplus + cex underfund invalid remains");l+=d+c}else{var h=i-s;if(r-a<h)throw Error("bad math got us with cex surplus + dex underfund invalid remains");u+=h+c}else if(e.fundedAndBalanced){if(c>0){var p=s-i,f=r-a;t={left:{cex:0,dex:0},right:{cex:0,dex:0},cexRange:0,dexRange:0},f>c&&p>c?(t.left.cex=c+a,t.left.dex=i,t.right.cex=a,t.right.dex=c+i):p<c&&f<c?(t.left.cex=c-p+a,t.left.dex=p+i,t.right.cex=f+a,t.right.dex=c-f+i):p>c?(t.left.cex=a,t.left.dex=c+i,t.right.cex=f+a,t.right.dex=c-f+i):(t.left.cex=c-p+a,t.left.dex=p+i,t.right.cex=c+a,t.right.dex=i),t.cexRange=t.right.cex-t.left.cex,t.dexRange=t.right.dex-t.left.dex,l=t.left.dex+t.dexRange/2,u=t.left.cex+t.cexRange/2}}else r<a?l=Math.min(s,i+c+(a-r)):s<i?u=Math.min(r,a+c+(i-s)):(l=Math.min(s,i+c),u=Math.min(r,i+a+c-l));return[l,u,t]}var ko=function(e){g(m,e);var t,n,o,c,l,u,p=bo(m);function m(e){var t;i(this,m),h(v(t=p.call(this)),"page",void 0),h(v(t),"forms",void 0),h(v(t),"currentForm",void 0),h(v(t),"keyup",void 0),h(v(t),"cexConfigForm",void 0),h(v(t),"bots",void 0),h(v(t),"sortedBots",void 0),h(v(t),"cexes",void 0),h(v(t),"twoColumn",void 0),h(v(t),"runningMMDisplayElements",void 0),h(v(t),"removingCfg",void 0),t.bots={},t.sortedBots=[],t.cexes={};var n=t.page=Ne.idDescendants(e);Ne.cleanTemplates(n.botTmpl,n.botRowTmpl,n.exchangeRowTmpl),t.forms=new hr(n.forms),t.cexConfigForm=new Dr(n.cexConfigForm,(function(e,n){return t.cexConfigured(e,n)})),t.runningMMDisplayElements={orderReportForm:n.orderReportForm,dexBalancesRowTmpl:n.dexBalancesRowTmpl,placementRowTmpl:n.placementRowTmpl,placementAmtRowTmpl:n.placementAmtRowTmpl},Ne.cleanTemplates(n.dexBalancesRowTmpl,n.placementRowTmpl,n.placementAmtRowTmpl),Ne.bind(n.newBot,"click",(function(){t.newBot()})),Ne.bind(n.archivedLogsBtn,"click",(function(){ft().loadPage("mmarchives")})),Ne.bind(n.confirmRemoveConfigBttn,"click",(function(){t.removeCfg()})),t.twoColumn=window.innerWidth>=768,new ResizeObserver((function(){t.resized()})).observe(e);for(var r=function(){var e=a(s[o],2),r=e[0],i=e[1],c=n.exchangeRowTmpl.cloneNode(!0);n.cexRows.appendChild(c);var l=Ne.parseTemplate(c),u=function(){t.cexConfigForm.setCEX(r),t.forms.show(n.cexConfigForm)};Ne.bind(l.configureBttn,"click",u),Ne.bind(l.reconfigBttn,"click",u),Ne.bind(l.errConfigureBttn,"click",u);var d=t.cexes[r]={tr:c,tmpl:l,dinfo:i,cexName:r};t.updateCexRow(d)},o=0,s=Object.entries(Gn);o<s.length;o++)r();return t.setup(),t}return d(m,[{key:"resized",value:function(){var e=window.innerWidth>=768;if(e!==this.twoColumn){this.twoColumn=e,this.clearBotBoxes();var t,n=go(this.sortedBots);try{for(n.s();!(t=n.n()).done;){var r=t.value.div;this.appendBotBox(r)}}catch(e){n.e(e)}finally{n.f()}}}},{key:"setup",value:(u=s(f().mark((function e(){var t,n,a,o,s,i,c,l,u=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,n=ft().mmStatus,a=n.bots.map((function(e){return e.config})),ft().registerNoteFeeder({runstats:function(e){u.handleRunStatsNote(e)},runevent:function(e){var t=u.bots[$n(e.host,e.baseID,e.quoteID)];if(t)return t.handleRunStats()},epochreport:function(e){var t=u.bots[$n(e.host,e.baseID,e.quoteID)];t&&t.handleEpochReportNote(e)},cexproblems:function(e){var t=u.bots[$n(e.host,e.baseID,e.quoteID)];t&&t.handleCexProblemsNote(e)},cexnote:function(e){u.handleCEXNote(e)}}),o=!a||0===a.length,Ne.setVis(o,t.noBots),!o){e.next=8;break}return e.abrupt("return");case 8:t.noBots.remove(),s=r(n.bots).sort((function(e,t){var n,r,a,o;return e.running&&!t.running?-1:t.running&&!e.running?1:e.running||t.running?(null!==(n=null===(r=t.runStats)||void 0===r?void 0:r.startTime)&&void 0!==n?n:0)-(null!==(a=null===(o=e.runStats)||void 0===o?void 0:o.startTime)&&void 0!==a?a:0):e.config.baseID+e.config.quoteID-(t.config.baseID+t.config.quoteID)})),i=go(s);try{for(i.s();!(c=i.n()).done;)l=c.value,this.addBot(l)}catch(e){i.e(e)}finally{i.f()}case 12:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"handleCEXNote",value:(l=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t.topic,e.next="BalanceUpdate"===e.t0?3:4;break;case 3:return e.abrupt("return",this.handleCEXBalanceUpdate(t.cexName));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"handleCEXBalanceUpdate",value:(c=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(n=this.cexes[t])&&this.updateCexRow(n);case 2:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"handleRunStatsNote",value:(o=s(f().mark((function e(t){var n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.baseID,r=t.quoteID,a=t.host,!(o=this.bots[$n(a,n,r)])){e.next=4;break}return e.abrupt("return",o.handleRunStats());case 4:this.addBot(ft().botStatus(a,n,r));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return o.apply(this,arguments)})},{key:"unload",value:function(){Ne.unbind(document,"keyup",this.keyup)}},{key:"addBot",value:function(e){var t,n=this.page,r=this.bots,a=this.sortedBots,o=e.config,s=o.baseID,i=o.quoteID,c=o.host,l=[ft().assets[s].symbol,ft().assets[i].symbol],u=l[1],d="".concat(l[0],"_").concat(u);if(null!==(t=ft().exchanges[c])&&void 0!==t&&t.markets[d]){var h=new wo(this,this.runningMMDisplayElements,e);n.botRows.appendChild(h.row.tr),a.push(h),r[h.id]=h,this.appendBotBox(h.div)}}},{key:"confirmRemoveCfg",value:function(e){var t=this.page;this.removingCfg=e,Ne.hide(t.removeCfgErr);var n=ft().assets[e.baseID].unitInfo.conventional.unit,r=ft().assets[e.quoteID].unitInfo.conventional.unit;t.confirmRemoveCfgMsg.textContent=ke("DELETE_BOT",{host:e.host,baseTicker:n,quoteTicker:r}),this.forms.show(this.page.confirmRemoveForm)}},{key:"removeCfg",value:(n=s(f().mark((function e(){var t,n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,this.removingCfg){e.next=4;break}return this.forms.close(),e.abrupt("return");case 4:return e.next=6,Xn.removeBotConfig(this.removingCfg.host,this.removingCfg.baseID,this.removingCfg.quoteID);case 6:if(n=e.sent,ft().checkResponse(n)){e.next=11;break}return t.removeCfgErr.textContent=ke(H,{msg:n.msg}),Ne.show(t.removeCfgErr),e.abrupt("return");case 11:return e.next=13,ft().fetchMMStatus();case 13:ft().loadPage("mm");case 14:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"appendBotBox",value:function(e){var t=this.page,n=t.boxZero,r=t.boxOne;(this.twoColumn&&(n.children.length+r.children.length)%2!=0?r:n).append(e)}},{key:"clearBotBoxes",value:function(){for(var e=this.page,t=e.boxOne,n=e.boxZero;n.children.length>1;)n.removeChild(n.lastChild);for(;t.children.length>0;)t.removeChild(t.lastChild)}},{key:"showBot",value:function(e){var t=this.sortedBots,n=t.findIndex((function(t){return t.id===e}));t.splice(n,1),t.unshift(this.bots[e]),this.clearBotBoxes();var r,a=go(t);try{for(a.s();!(r=a.n()).done;){var o=r.value.div;this.appendBotBox(o)}}catch(e){a.e(e)}finally{a.f()}var s=this.bots[e].div;Ne.animate(250,(function(e){s.style.opacity="".concat(e),s.style.transform="scale(".concat(.8+.2*e,")")}))}},{key:"newBot",value:function(){ft().loadPage("mmsettings")}},{key:"cexConfigured",value:(t=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchMMStatus();case 2:this.updateCexRow(this.cexes[t]),n&&this.forms.close();case 4:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})},{key:"updateCexRow",value:function(e){var t=e.tmpl,n=e.dinfo,r=e.cexName;t.logo.src=n.logo,t.name.textContent=n.name;var o=ft().mmStatus.cexes[r];if(Ne.setVis(!o,t.unconfigured),Ne.setVis(o&&!o.connectErr,t.configured),Ne.setVis(null==o?void 0:o.connectErr,t.connectErrBox),null!=o&&o.connectErr&&(t.connectErr.textContent="connection error",t.connectErr.dataset.tooltip=o.connectErr),t.logo.classList.toggle("greyscale",!o),o){for(var s=0,i={},c=0,l=Object.entries(o.balances);c<l.length;c++){var u=a(l[c],2),d=u[0],h=u[1],p=parseInt(d),f=Ne.bipCEXSymbol(p);if(!i[f]){i[f]=!0;var v=ft().assets[p].unitInfo,m=ft().fiatRatesMap[p];m&&(s+=m*(h.available+h.locked)/v.conventional.conversionFactor)}}t.usdBalance.textContent=Ne.formatFourSigFigs(s)}}},{key:"percentageBalanceStr",value:function(e,t,n){var r=ft().assets[e],a=r.unitInfo,o=Ne.formatCoinValue(t*n/100,a);return"".concat(Ne.formatFourSigFigs(n),"% - ").concat(o," ").concat(r.symbol.toUpperCase())}},{key:"walletBalanceStr",value:function(e,t){var n=ft().assets[e].wallet.balance.available;return this.percentageBalanceStr(e,n,t)}}]),m}(lt),wo=function(e){g(c,e);var t,n,o=bo(c);function c(e,t,n){var r;i(this,c),h(v(r=o.call(this,n.config)),"pg",void 0),h(v(r),"div",void 0),h(v(r),"page",void 0),h(v(r),"placementsChart",void 0),h(v(r),"baseAllocSlider",void 0),h(v(r),"quoteAllocSlider",void 0),h(v(r),"row",void 0),h(v(r),"runDisplay",void 0),r.pg=e;var a=v(r),s=a.baseID,l=a.quoteID,u=a.host,d=a.botType,p=a.nBuyPlacements,f=a.nSellPlacements,m=a.cexName;r.id=$n(u,s,l);var g=r.div=e.page.botTmpl.cloneNode(!0),y=r.page=Ne.parseTemplate(g);r.runDisplay=new ar(y.onBox,e.forms,t,"mm"),Qn(g,s,l,u),m&&Yn(g,m),d===Hn?y.botTypeDisplay.textContent=ke(pe):d===zn?y.botTypeDisplay.textContent=ke(fe):d===jn&&(y.botTypeDisplay.textContent=ke(he)),Ne.setVis(d!==zn,y.placementsChartBox,y.baseTokenSwapFeesBox),d!==zn&&(r.placementsChart=new Zn(y.placementsChart),y.buyPlacementCount.textContent=String(p),y.sellPlacementCount.textContent=String(f)),Ne.bind(y.startBttn,"click",(function(){return r.start()})),Ne.bind(y.allocationBttn,"click",(function(){return r.allocate()})),Ne.bind(y.reconfigureBttn,"click",(function(){return r.reconfigure()})),Ne.bind(y.removeBttn,"click",(function(){return r.pg.confirmRemoveCfg(n.config)})),Ne.bind(y.goBackFromAllocation,"click",(function(){return r.hideAllocationDialog()})),Ne.bind(y.marketLink,"click",(function(){return ft().loadPage("markets",{host:u,baseID:s,quoteID:l})})),r.baseAllocSlider=new Ze(y.baseAllocSlider,(function(){})),r.quoteAllocSlider=new Ze(y.quoteAllocSlider,(function(){}));var b=e.page.botRowTmpl.cloneNode(!0);Qn(b,s,l,u);var x=Ne.parseTemplate(b);return r.row={tr:b,tmpl:x},Ne.bind(x.allocateBttn,"click",(function(t){t.stopPropagation(),r.allocate(),e.showBot(r.id)})),Ne.bind(b,"click",(function(){return e.showBot(r.id)})),r.initialize(),r}return d(c,[{key:"initialize",value:(n=s(f().mark((function e(){var t,n,a,o,s,i,l,u,d,h,p,v,m,g,y,x,k,w,C,S,F,T,D;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,mo(b(c.prototype),"initialize",this).call(this);case 2:this.runDisplay.setBotMarket(this),t=this.page,n=this.host,a=this.cexName,o=this.botType,s=this.div,i=this.cfg,l=i.arbMarketMakingConfig,u=i.basicMarketMakingConfig,d=this.mktID,h=this.baseFactor,p=this.quoteFactor,v=this.marketReport.baseFiatRate,o!==zn&&(m=[],g=[],y=0,l?(m=l.buyPlacements.map((function(e){return{lots:e.lots,gapFactor:e.multiplier}})),g=l.sellPlacements.map((function(e){return{lots:e.lots,gapFactor:e.multiplier}})),y=l.profit):u&&(m=u.buyPlacements,g=u.sellPlacements,m.length>0&&(x=m.reduce((function(e,t){return t.gapFactor<e.gapFactor?t:e}))),g.length>0&&(k=g.reduce((function(e,t){return t.gapFactor<e.gapFactor?t:e}))),x&&k?y=(x.gapFactor+k.gapFactor)/2:x?y=x.gapFactor:k&&(y=k.gapFactor)),w={cexName:a,botType:o,baseFiatRate:v,dict:{profit:y,buyPlacements:m,sellPlacements:g}},this.placementsChart.setMarket(w)),Ne.setVis(o!==jn,t.cexDataBox),o!==jn&&(C=ft().mmStatus.cexes[a])&&(S=C.markets?C.markets[d]:void 0,Ne.setVis(null==S?void 0:S.day,t.cexDataBox),null!=S&&S.day&&(F=S.day,t.cexPrice.textContent=Ne.formatFourSigFigs(F.lastPrice),t.cexVol.textContent=Ne.formatFourSigFigs(v*F.vol))),Ne.setVis.apply(Ne,[Boolean(a)].concat(r(Ne.applySelector(s,"[data-cex-show]")))),(T=ft().exchanges[n].markets[d].spot)&&(Ne.show(t.dexDataBox),D=Ft/h*p,t.dexPrice.textContent=Ne.formatFourSigFigs(T.rate/D),t.dexVol.textContent=Ne.formatFourSigFigs(T.vol24/h*v)),this.updateDisplay(),this.updateTableRow(),Ne.hide(t.loadingBg);case 13:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"updateTableRow",value:function(){var e=this.row.tmpl,t=this.status(),n=t.running,r=t.runStats;Ne.setVis(n,e.profitLossBox),Ne.setVis(!n,e.allocateBttnBox),r&&(e.profitLoss.textContent=Ne.formatFourSigFigs(r.profitLoss.profit,2))}},{key:"updateDisplay",value:function(){var e=this.page,t=this.marketReport;if([t.baseFiatRate,t.quoteFiatRate,this.baseFeeFiatRate,this.quoteFeeFiatRate].some((function(e){return!e})))return Ne.hide(e.onBox,e.offBox),void Ne.show(e.noFiatDisplay);var n=this.status().running;Ne.setVis(n,e.onBox),Ne.setVis(!n,e.offBox),n?this.updateRunningDisplay():this.updateIdleDisplay()}},{key:"updateRunningDisplay",value:function(){this.runDisplay.update()}},{key:"updateIdleDisplay",value:function(){var e=this.page,t=this.proj,n=t.alloc,r=t.qProj,a=t.bProj,o=this.baseID,s=this.quoteID,i=this.cexName,c=this.bui,l=this.qui,u=this.baseFeeID,d=this.quoteFeeID,h=this.baseFactor,p=this.quoteFactor,f=this.baseFeeFactor,v=this.quoteFeeFactor,m=this.marketReport,g=m.baseFiatRate,y=m.quoteFiatRate,b=this.cfg.uiConfig,x=b.baseConfig,k=b.quoteConfig,w=this.quoteFeeUI,C=this.baseFeeUI;e.baseAlloc.textContent=Ne.formatFullPrecision(n[o],c);var S=n[o]/h*g,F=S;if(e.baseAllocUSD.textContent=Ne.formatFourSigFigs(S),e.baseBookAlloc.textContent=Ne.formatFullPrecision(a.book*h,c),e.baseOrderReservesAlloc.textContent=Ne.formatFullPrecision(a.orderReserves*h,c),e.baseOrderReservesPct.textContent=String(Math.round(100*x.orderReservesFactor)),Ne.setVis(i,e.baseCexAllocBox),i&&(e.baseCexAlloc.textContent=Ne.formatFullPrecision(a.cex*h,c)),Ne.setVis(u===o,e.baseBookingFeesAllocBox),Ne.setVis(u!==o,e.baseTokenFeesAllocBox),u===o){var T=o===d?a.bookingFees+r.bookingFees:a.bookingFees;e.baseBookingFeesAlloc.textContent=Ne.formatFullPrecision(T*f,C)}else{var D=n[u];e.baseTokenFeeAlloc.textContent=Ne.formatFullPrecision(D,C);var I=D/f*ft().fiatRatesMap[u];F+=I,e.baseTokenAllocUSD.textContent=Ne.formatFourSigFigs(I);var A=u===d,R=a.bookingFees+(A?r.bookingFees:0);e.baseTokenBookingFees.textContent=Ne.formatFullPrecision(R*f,C),e.baseTokenSwapFeeN.textContent=String(x.swapFeeN+(A?k.swapFeeN:0));var E=a.swapFeeReserves+(A?r.swapFeeReserves:0);e.baseTokenSwapFees.textContent=Ne.formatFullPrecision(E*f,C)}e.quoteAlloc.textContent=Ne.formatFullPrecision(n[s],l);var B=n[s]/p*y;if(F+=B,e.quoteAllocUSD.textContent=Ne.formatFourSigFigs(B),e.quoteBookAlloc.textContent=Ne.formatFullPrecision(r.book*p,l),e.quoteOrderReservesAlloc.textContent=Ne.formatFullPrecision(r.orderReserves*p,l),e.quoteOrderReservesPct.textContent=String(Math.round(100*k.orderReservesFactor)),e.quoteSlippageAlloc.textContent=Ne.formatFullPrecision(r.slippageBuffer*p,l),e.slippageBufferFactor.textContent=String(Math.round(100*k.slippageBufferFactor)),Ne.setVis(i,e.quoteCexAllocBox),i&&(e.quoteCexAlloc.textContent=Ne.formatFullPrecision(r.cex*p,l)),Ne.setVis(s===d,e.quoteBookingFeesAllocBox),Ne.setVis(d!==s&&d!==u,e.quoteTokenFeesAllocBox),s===d){var P=s===u?a.bookingFees+r.bookingFees:r.bookingFees;e.quoteBookingFeesAlloc.textContent=Ne.formatFullPrecision(P*v,w)}else if(d!==u){e.quoteTokenFeeAlloc.textContent=Ne.formatFullPrecision(n[d],w);var L=n[d]/v*ft().fiatRatesMap[d];F+=L,e.quoteTokenAllocUSD.textContent=Ne.formatFourSigFigs(L),e.quoteTokenBookingFees.textContent=Ne.formatFullPrecision(r.bookingFees*v,w),e.quoteTokenSwapFeeN.textContent=String(k.swapFeeN),e.quoteTokenSwapFees.textContent=Ne.formatFullPrecision(r.swapFeeReserves*v,w)}e.totalAllocUSD.textContent=Ne.formatFourSigFigs(F)}},{key:"allocate",value:function(){var e,t,n,o,s,i=this,c=this.page,l=this.marketReport,u=l.baseFiatRate,d=l.quoteFiatRate,p=this.baseID,f=this.quoteID,v=this.baseFeeID,m=this.quoteFeeID,g=this.baseFeeFiatRate,y=this.quoteFeeFiatRate,b=this.cexName,x=this.baseFactor,k=this.quoteFactor,w=this.baseFeeFactor,C=this.quoteFeeFactor,S=this.host,F=this.mktID;if(b){var T=ft().mmStatus.cexes[b];if(!T||!T.connected)return c.offError.textContent=ke(ye,{cexName:b}),void Ne.showTemporarily(3e3,c.offError)}var D=this.fundingState(),I=a(xo(D.base),3),A=I[0],R=I[1],E=I[2],B=a(xo(D.quote),3),P=B[0],L=B[1],O=B[2],M=this.alloc={dex:(e={},h(e,p,A*x),h(e,f,P*k),e),cex:(t={},h(t,p,R*x),h(t,f,L*k),t)};M.dex[v]=Math.min((null!==(n=M.dex[v])&&void 0!==n?n:0)+D.base.fees.req*w,D.base.fees.avail*w),M.dex[m]=Math.min((null!==(o=M.dex[m])&&void 0!==o?o:0)+D.quote.fees.req*C,D.quote.fees.avail*C);var q=M.dex[p]/x*u+M.dex[f]/k*d;q+=M.cex[p]/x*u+M.cex[f]/k*d,v!==p&&(q+=M.dex[v]/w*g),m!==f&&m!==v&&(q+=M.dex[m]/C*y),c.allocUSD.textContent=Ne.formatFourSigFigs(q),Ne.setVis.apply(Ne,[b].concat(r(Ne.applySelector(c.allocationDialog,"[data-cex-only]")))),Ne.setVis(D.fundedAndBalanced,c.fundedAndBalancedBox),Ne.setVis(D.base.transferable+D.quote.transferable>0,c.hasTransferable),Ne.setVis(D.fundedAndNotBalanced,c.fundedAndNotBalancedBox),Ne.setVis(D.starved,c.starvedBox),c.startBttn.classList.toggle("go",D.fundedAndBalanced),c.startBttn.classList.toggle("warning",!D.fundedAndBalanced),c.proposedDexBaseAlloc.classList.toggle("text-warning",!(D.base.fundedAndBalanced||D.base.fundedAndNotBalanced)),c.proposedDexQuoteAlloc.classList.toggle("text-warning",!(D.quote.fundedAndBalanced||D.quote.fundedAndNotBalanced));var N=function(e,t){c.proposedDexBaseAlloc.textContent=Ne.formatFourSigFigs(e),c.proposedDexBaseAllocUSD.textContent=Ne.formatFourSigFigs(e*u),c.proposedCexBaseAlloc.textContent=Ne.formatFourSigFigs(t),c.proposedCexBaseAllocUSD.textContent=Ne.formatFourSigFigs(t*u)};if(N(A,R),Ne.setVis(E,c.baseAllocSlider),E){var W=E.right.dex-E.left.dex,V=E.right.cex-E.left.cex;this.baseAllocSlider.setValue(.5),this.baseAllocSlider.changed=function(e){var t=E.left.dex+e*W,n=E.left.cex+e*V;M.dex[p]=t*x,M.cex[p]=n*x,N(t,n)}}var U=function(e,t){c.proposedDexQuoteAlloc.textContent=Ne.formatFourSigFigs(e),c.proposedDexQuoteAllocUSD.textContent=Ne.formatFourSigFigs(e*d),c.proposedCexQuoteAlloc.textContent=Ne.formatFourSigFigs(t),c.proposedCexQuoteAllocUSD.textContent=Ne.formatFourSigFigs(t*d)};if(U(P,L),Ne.setVis(O,c.quoteAllocSlider),O){var _=O.right.dex-O.left.dex,j=O.right.cex-O.left.cex;this.quoteAllocSlider.setValue(.5),this.quoteAllocSlider.changed=function(e){var t=O.left.dex+e*_,n=O.left.cex+e*j;M.dex[f]=t*k,M.cex[f]=n*k,U(t,n)}}if(Ne.setVis.apply(Ne,[v!==p].concat(r(Ne.applySelector(c.allocationDialog,"[data-base-token-fees]")))),v!==p){var H=D.base.fees.req+(v===m?D.quote.fees.req:0),z=Math.min(H,D.base.fees.avail);c.proposedDexBaseFeeAlloc.textContent=Ne.formatFourSigFigs(z),c.proposedDexBaseFeeAllocUSD.textContent=Ne.formatFourSigFigs(z*g),c.proposedDexBaseFeeAlloc.classList.toggle("text-warning",!D.base.fees.funded)}var G=m!==f&&m!==v;if(Ne.setVis.apply(Ne,[G].concat(r(Ne.applySelector(c.allocationDialog,"[data-quote-token-fees]")))),G){var X=Math.min(D.quote.fees.req,D.quote.fees.avail);c.proposedDexQuoteFeeAlloc.textContent=Ne.formatFourSigFigs(X),c.proposedDexQuoteFeeAllocUSD.textContent=Ne.formatFourSigFigs(X*y),c.proposedDexQuoteFeeAlloc.classList.toggle("text-warning",!D.quote.fees.funded)}var K=null===(s=ft().exchanges[S])||void 0===s?void 0:s.markets[F],Q=!1;if(K&&K.orders)for(var Y=0;Y<K.orders.length;Y++)if(K.orders[Y].status<=2){Q=!0;break}Ne.setVis(Q,c.existingOrdersBox),Ne.show(c.allocationDialog),Ne.bind(document,"click",(function e(t){Ne.mouseInElement(t,c.allocationDialog)||(i.hideAllocationDialog(),Ne.unbind(document,"click",e))}))}},{key:"hideAllocationDialog",value:function(){Ne.hide(this.page.allocationDialog)}},{key:"start",value:(t=s(f().mark((function e(){var t,n,r,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,r=this.alloc,o=this.baseID,s=this.quoteID,i=this.host,c=this.cexName,l=this.cfg.uiConfig.cexRebalance,Ne.hide(n.errMsg),!c||null!==(t=ft().mmStatus.cexes[c])&&void 0!==t&&t.connected){e.next=6;break}return n.errMsg.textContent="".concat(c," not connected"),Ne.show(n.errMsg),e.abrupt("return");case 6:for(u=0,d=[r.dex,r.cex];u<d.length;u++)for(h=d[u],p=0,v=Object.entries(h);p<v.length;p++)m=a(v[p],2),g=m[0],y=m[1],h[parseInt(g)]=Math.round(y);return b={baseID:o,quoteID:s,host:i,alloc:r},c&&l&&(b.autoRebalance=this.autoRebalanceSettings()),e.prev=9,ft().log("mm","starting mm bot",b),e.next=13,Xn.startBot(b);case 13:if(x=e.sent,ft().checkResponse(x)){e.next=16;break}throw x;case 16:e.next=23;break;case 18:return e.prev=18,e.t0=e.catch(9),n.errMsg.textContent=ke(H,e.t0),Ne.show(n.errMsg),e.abrupt("return");case 23:this.hideAllocationDialog();case 24:case"end":return e.stop()}}),e,this,[[9,18]])}))),function(){return t.apply(this,arguments)})},{key:"autoRebalanceSettings",value:function(){var e=this.proj,t=e.bProj,n=e.qProj,r=e.alloc,a=this.baseFeeID,o=this.quoteFeeID,s=this.cfg.uiConfig,i=s.baseConfig,c=s.quoteConfig,l=this.baseID,u=this.quoteID,d=this.cexName,h=this.mktID,p=r[l],f=t.book;l===a&&(f+=t.bookingFees),l===o&&(f+=n.bookingFees);var v=n.book;u===o&&(v+=n.bookingFees),u===a&&(v+=t.bookingFees);var m=Math.max(p-f,p-t.cex),g=r[u],y=Math.max(g-v,g-n.cex);if(m<0||y<0)throw Error("rebalance math doesn't work: ".concat(JSON.stringify({bProj:t,qProj:n,maxBase:m,maxQuote:y})));var b=ft().mmStatus.cexes[d].markets[h],x=[b.baseMinWithdraw,Math.max(2*b.baseMinWithdraw,m)],k=x[0],w=x[1],C=Math.round(k+i.transferFactor*(w-k)),S=[b.quoteMinWithdraw,Math.max(2*b.quoteMinWithdraw,y)],F=S[0],T=S[1];return{minBaseTransfer:C,minQuoteTransfer:Math.round(F+c.transferFactor*(T-F))}}},{key:"reconfigure",value:function(){var e=this.host,t=this.baseID,n=this.quoteID,r=this.cexName,a=this.botType,o=this.page;if(r){var s=ft().mmStatus.cexes[r];if(!s||!s.connected)return o.offError.textContent=ke(ye,{cexName:r}),void Ne.showTemporarily(3e3,o.offError)}ft().loadPage("mmsettings",{host:e,baseID:t,quoteID:n,cexName:r,botType:a})}},{key:"handleEpochReportNote",value:function(e){this.runDisplay.handleEpochReportNote(e)}},{key:"handleCexProblemsNote",value:function(e){this.runDisplay.handleCexProblemsNote(e)}},{key:"handleRunStats",value:function(){this.updateDisplay(),this.updateTableRow(),this.runDisplay.readBook()}}]),c}(rr);function Co(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function So(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Co(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Co(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Fo(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return To(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?To(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function To(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Do="lastMMSpecs",Io="lastBots",Ao="lastArbExchange",Ro="arbmm",Eo=.001,Bo=.099,Po=.001,Lo=.0199,Oo={gapStrategy:_n,sellPlacements:[],buyPlacements:[],driftTolerance:.002,profit:.02,orderPersistence:20,cexRebalance:!0,simpleArbLots:1},Mo={swapFeeN:50,orderReservesFactor:1,slippageBufferFactor:.05,transferFactor:.1},qo=function(e){g(D,e);var t,n,o,l,u,p,m,x,w,C,S,F,T=(S=D,F=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(e){return!1}}(),function(){var e,t=b(S);if(F){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function D(e,t){var n;i(this,D),h(v(n=T.call(this)),"page",void 0),h(v(n),"forms",void 0),h(v(n),"opts",void 0),h(v(n),"newWalletForm",void 0),h(v(n),"approveTokenForm",void 0),h(v(n),"walletAddrForm",void 0),h(v(n),"cexConfigForm",void 0),h(v(n),"currentMarket",void 0),h(v(n),"originalConfig",void 0),h(v(n),"updatedConfig",void 0),h(v(n),"creatingNewBot",void 0),h(v(n),"marketReport",void 0),h(v(n),"qcProfit",void 0),h(v(n),"qcProfitSlider",void 0),h(v(n),"qcLevelSpacing",void 0),h(v(n),"qcLevelSpacingSlider",void 0),h(v(n),"qcMatchBuffer",void 0),h(v(n),"qcMatchBufferSlider",void 0),h(v(n),"qcLevelsPerSide",void 0),h(v(n),"qcLotsPerLevel",void 0),h(v(n),"qcUSDPerSide",void 0),h(v(n),"cexBaseBalance",void 0),h(v(n),"cexQuoteBalance",void 0),h(v(n),"specs",void 0),h(v(n),"mktID",void 0),h(v(n),"formSpecs",void 0),h(v(n),"formCexes",void 0),h(v(n),"placementsCache",void 0),h(v(n),"botTypeSelectors",void 0),h(v(n),"marketRows",void 0),h(v(n),"lotsPerLevelIncrement",void 0),h(v(n),"placementsChart",void 0),h(v(n),"basePane",void 0),h(v(n),"quotePane",void 0),h(v(n),"driftTolerance",void 0),h(v(n),"driftToleranceSlider",void 0),h(v(n),"orderPersistence",void 0),h(v(n),"orderPersistenceSlider",void 0),n.placementsCache={},n.opts={};var r=n.page=Ne.idDescendants(e);n.forms=new hr(r.forms,{closed:function(){var e,t;null!==(e=n.specs)&&void 0!==e&&e.host&&null!==(t=n.specs)&&void 0!==t&&t.botType||ft().loadPage("mm")}}),n.placementsChart=new Zn(r.placementsChart),n.approveTokenForm=new Tr(r.approveTokenForm,(function(){n.submitBotType()})),n.walletAddrForm=new Cr(r.walletAddrForm),n.cexConfigForm=new Dr(r.cexConfigForm,(function(e){return n.cexConfigured(e)})),r.quotePane=r.basePane.cloneNode(!0),r.assetPaneBox.appendChild(r.quotePane),n.basePane=new Uo(v(n),r.basePane),n.quotePane=new Uo(v(n),r.quotePane),ft().headerSpace.appendChild(r.mmTitle),mt(r),Ne.cleanTemplates(r.orderOptTmpl,r.booleanOptTmpl,r.rangeOptTmpl,r.placementRowTmpl,r.oracleTmpl,r.cexOptTmpl,r.arbBttnTmpl,r.marketRowTmpl,r.needRegTmpl),r.basePane.removeAttribute("id"),Ne.bind(r.resetButton,"click",(function(){n.setOriginalValues()})),Ne.bind(r.updateButton,"click",(function(){n.saveSettings()})),Ne.bind(r.createButton,"click",s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n.saveSettings();case 1:case"end":return e.stop()}}),e)})))),Ne.bind(r.deleteBttn,"click",(function(){n.delete()})),Br(r.botTypeForm,r.botTypeSubmit,(function(){n.submitBotType()})),Ne.bind(r.noMarketBttn,"click",(function(){n.showMarketSelectForm()})),Ne.bind(r.botTypeHeader,"click",(function(){n.reshowBotTypeForm()})),Ne.bind(r.botTypeChangeMarket,"click",(function(){n.showMarketSelectForm()})),Ne.bind(r.marketHeader,"click",(function(){n.showMarketSelectForm()})),Ne.bind(r.marketFilterInput,"input",(function(){n.sortMarketRows()})),Ne.bind(r.cexRebalanceCheckbox,"change",(function(){n.autoRebalanceChanged()})),Ne.bind(r.switchToAdvanced,"click",(function(){n.showAdvancedConfig()})),Ne.bind(r.switchToQuickConfig,"click",(function(){n.switchToQuickConfig()})),Ne.bind(r.qcMatchBuffer,"change",(function(){n.matchBufferChanged()})),Ne.bind(r.switchToUSDPerSide,"click",(function(){n.changeSideCommitmentDialog()})),Ne.bind(r.switchToLotsPerLevel,"click",(function(){n.changeSideCommitmentDialog()})),Ne.bind(r.gapStrategySelect,"change",(function(){if(r.gapStrategySelect.value){var e=r.gapStrategySelect.value;n.clearPlacements(n.updatedConfig.gapStrategy),n.loadCachedPlacements(e),n.updatedConfig.gapStrategy=e,n.setGapFactorLabels(e),n.updateModifiedMarkers()}})),Ne.bind(r.addBuyPlacementBtn,"click",(function(){n.addPlacement(!0,null),r.addBuyPlacementLots.value="",r.addBuyPlacementGapFactor.value="",n.updateModifiedMarkers(),n.placementsChart.render(),n.updateAllocations()})),Ne.bind(r.addSellPlacementBtn,"click",(function(){n.addPlacement(!1,null),r.addSellPlacementLots.value="",r.addSellPlacementGapFactor.value="",n.updateModifiedMarkers(),n.placementsChart.render(),n.updateAllocations()})),n.driftTolerance=new Ye(r.driftToleranceInput,{prec:3,sigFigs:!0,min:0,changed:function(e){var t=a(et(e/100,5),1)[0];n.driftToleranceSlider.setValue((t-0)/.02),n.updatedConfig.driftTolerance=t}}),n.driftToleranceSlider=new Ze(r.driftToleranceSlider,(function(e){var t=a(et(0+.02*e,5),1)[0];n.updatedConfig.driftTolerance=t,n.driftTolerance.setValue(100*t)})),n.orderPersistence=new Ye(r.orderPersistence,{changed:function(e){n.updatedConfig.orderPersistence=e,n.orderPersistenceSlider.setValue((e-0)/40)}}),n.orderPersistenceSlider=new Ze(r.orderPersistenceSlider,(function(e){var t=a($e(0+40*e,0),1)[0];n.updatedConfig.orderPersistence=t,n.orderPersistence.setValue(t)})),n.qcProfit=new Ye(r.qcProfit,{prec:1,sigFigs:!0,min:.1,changed:function(e){var t=e/100;n.updatedConfig.profit=t,r.profitInput.value=n.qcProfit.input.value,n.qcProfitSlider.setValue((t-.001)/.099),n.quickConfigUpdated()}}),n.qcProfitSlider=new Ze(r.qcProfitSlider,(function(e){var t=a(et(100*(Eo+e*Bo),3),1)[0];n.updatedConfig.profit=t/100,n.qcProfit.setValue(t),r.profitInput.value=n.qcProfit.input.value,n.quickConfigUpdated()})),n.qcLevelSpacing=new Ye(r.qcLevelSpacing,{prec:1,sigFigs:!0,min:.1,changed:function(e){var t=Lo;n.qcLevelSpacingSlider.setValue((e/100-.001)/t),n.quickConfigUpdated()}}),n.qcLevelSpacingSlider=new Ze(r.qcLevelSpacingSlider,(function(e){var t=Lo;n.qcLevelSpacing.setValue(.001+e*t*100),n.quickConfigUpdated()})),n.qcMatchBuffer=new Ye(r.qcMatchBuffer,{prec:1,sigFigs:!0,min:0,changed:function(e){n.qcMatchBufferSlider.setValue((e/100-0)/1),n.quickConfigUpdated()}}),n.qcMatchBufferSlider=new Ze(r.qcMatchBufferSlider,(function(e){n.qcMatchBuffer.setValue(0+1*e*100),n.quickConfigUpdated()})),n.qcLevelsPerSide=new Je(r.qcLevelsPerSide,{prec:0,min:1,inc:1,changed:function(e){n.qcUSDPerSide.setValue(n.lotSizeUSD()*e*n.qcLotsPerLevel.value()),n.quickConfigUpdated()}}),n.qcLotsPerLevel=new Je(r.qcLotsPerLevel,{prec:0,min:1,inc:1,changed:function(e){n.qcUSDPerSide.setValue(n.lotSizeUSD()*e*n.qcLevelsPerSide.value()),r.qcUSDPerSideEcho.textContent=n.qcUSDPerSide.input.value,n.quickConfigUpdated()},set:function(e){var t=a(et(e*n.qcLevelsPerSide.value()*n.lotSizeUSD(),2),2)[1];r.qcUSDPerSideEcho.textContent=t,r.qcLotsPerLevelEcho.textContent=t}}),n.qcUSDPerSide=new Je(r.qcUSDPerSide,{prec:2,min:1,inc:1,changed:function(e){n.qcLotsPerLevel.setValue(e/n.qcLevelsPerSide.value()/n.lotSizeUSD()),r.qcLotsPerLevelEcho.textContent=n.qcLotsPerLevel.input.value,n.quickConfigUpdated()},set:function(e,t){r.qcUSDPerSideEcho.textContent=t,r.qcLotsPerLevelEcho.textContent=String(Math.round(e/n.lotSizeUSD()))}});var o=function(e){"Enter"===e.key&&(isNaN(parseFloat(r.addBuyPlacementGapFactor.value||""))||isNaN(parseFloat(r.addBuyPlacementLots.value||""))||r.addBuyPlacementBtn.click())};Ne.bind(r.addBuyPlacementGapFactor,"keyup",(function(e){o(e)})),Ne.bind(r.addBuyPlacementLots,"keyup",(function(e){o(e)}));var c=function(e){"Enter"===e.key&&(isNaN(parseFloat(r.addSellPlacementGapFactor.value||""))||isNaN(parseFloat(r.addSellPlacementLots.value||""))||r.addSellPlacementBtn.click())};Ne.bind(r.addSellPlacementGapFactor,"keyup",(function(e){c(e)})),Ne.bind(r.addSellPlacementLots,"keyup",(function(e){c(e)})),Ne.bind(r.profitInput,"change",(function(){Ne.hide(r.profitInputErr);var e=function(e){Ne.show(r.profitInputErr),r.profitInputErr.textContent=ke(e)},t=parseFloat(r.profitInput.value||"")/100;return isNaN(t)?e(ue):0===t?e(de):(n.updatedConfig.profit=t,void n.updateModifiedMarkers())})),n.botTypeSelectors=Ne.applySelector(r.botTypeForm,"[data-bot-type]");var l,u=Fo(n.botTypeSelectors);try{var d=function(){var e=l.value;Ne.bind(e,"click",(function(){e.classList.contains("disabled")||(Ne.hide(r.botTypeErr),r.cexSelection.classList.toggle("disabled",e.dataset.botType===jn),n.setBotTypeSelected(e.dataset.botType))}))};for(u.s();!(l=u.n()).done;)d()}catch(e){u.e(e)}finally{u.f()}return n.newWalletForm=new pr(r.newWalletForm,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ft().fetchUser();case 2:n.submitBotType();case 3:case"end":return e.stop()}}),e)})))),ft().registerNoteFeeder({balance:function(e){n.handleBalanceNote(e)}}),n.initialize(t),n}return d(D,[{key:"unload",value:function(){this.forms.exit()}},{key:"initialize",value:(C=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.setupCEXes(),this.initializeMarketRows(),t&&0===Object.keys(t).length&&(t=k.fetchLocal(Do)),t&&ft().walletMap[t.baseID]&&ft().walletMap[t.quoteID]){e.next=7;break}return this.showMarketSelectForm(),e.abrupt("return");case 7:return t&&!t.botType&&(r=er(t.host,t.baseID,t.quoteID),t.cexName=null!==(n=null==r?void 0:r.cexName)&&void 0!==n?n:"",t.botType=jn,null!=r&&r.arbMarketMakingConfig?t.botType=Hn:null!=r&&r.simpleArbConfig&&(t.botType=zn)),this.specs=t,e.next=11,this.fetchCEXBalances(t);case 11:this.configureUI();case 12:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"configureUI",value:(w=s(f().mark((function e(){var t,n,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,w,C,S,F,T,D,I,A,R,E,B,P,L,O,M,q,N,W,V,U,_,j,H,z;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(c=this.page,l=this.specs,u=l.host,d=l.baseID,h=l.quoteID,p=l.cexName,v=l.botType,m=[ft().assets[d],ft().assets[h]],y=(g=m[0]).symbol,b=g.token,w=(x=m[1]).symbol,C=x.token,this.mktID="".concat(y,"_").concat(w),Ne.hide(c.botSettingsContainer,c.marketBox,c.updateButton,c.resetButton,c.createButton,c.noMarket,c.missingFiatRates),![d,h,null!==(t=null==b?void 0:b.parentID)&&void 0!==t?t:d,null!==(n=null==C?void 0:C.parentID)&&void 0!==n?n:h].some((function(e){return!ft().fiatRatesMap[e]}))){e.next=8;break}return Ne.show(c.missingFiatRates),e.abrupt("return");case 8:if(Ne.show(c.marketLoading),k.storeLocal(Do,l),S=ft().mmStatus,F=No(l,S),(T=er(u,d,h))&&(T.arbMarketMakingConfig?Hn:T.basicMarketMakingConfig?jn:zn)!==v&&(T=void 0),Ne.setVis(T,c.deleteBttnBox),D=this.originalConfig=Object.assign({},Oo,{disabled:F,baseOptions:this.defaultWalletOptions(d),quoteOptions:this.defaultWalletOptions(h),buyPlacements:[],sellPlacements:[],baseConfig:Object.assign({},Mo),quoteConfig:Object.assign({},Mo)}),T){for(A=(I=T).basicMarketMakingConfig,R=I.arbMarketMakingConfig,E=I.simpleArbConfig,B=I.uiConfig.cexRebalance,this.creatingNewBot=!1,P=D,L=0,O=Object.entries(T);L<O.length;L++)M=a(O[L],2),q=M[0],N=M[1],void 0!==P[q]&&(P[q]=N);D.baseConfig=Object.assign({},Mo,T.uiConfig.baseConfig),D.quoteConfig=Object.assign({},Mo,T.uiConfig.quoteConfig),D.baseOptions=T.baseWalletOptions||{},D.quoteOptions=T.quoteWalletOptions||{},D.cexRebalance=B,A?(D.buyPlacements=A.buyPlacements,D.sellPlacements=A.sellPlacements,D.driftTolerance=A.driftTolerance,D.gapStrategy=A.gapStrategy):R?(W=R.buyPlacements,V=R.sellPlacements,D.buyPlacements=Array.from(W,(function(e){return{lots:e.lots,gapFactor:e.multiplier}})),D.sellPlacements=Array.from(V,(function(e){return{lots:e.lots,gapFactor:e.multiplier}})),D.profit=R.profit,D.driftTolerance=R.driftTolerance,D.orderPersistence=R.orderPersistence):E&&(D.profit=E.profitTrigger,D.orderPersistence=E.numEpochsLeaveOpen,D.simpleArbLots=null!==(U=T.uiConfig.simpleArbLots)&&void 0!==U?U:1),Ne.setVis(!F,c.updateButton,c.resetButton)}else this.creatingNewBot=!0,Ne.setVis(!F,c.createButton);this.updatedConfig=JSON.parse(JSON.stringify(D)),e.t0=v,e.next=e.t0===jn?21:e.t0===Hn?23:e.t0===zn?25:26;break;case 21:return c.botTypeDisplay.textContent=ke(he),e.abrupt("break",26);case 23:return c.botTypeDisplay.textContent=ke(pe),e.abrupt("break",26);case 25:c.botTypeDisplay.textContent=ke(fe);case 26:return Qn(document.body,d,h,u),Ne.setVis(v!==zn,c.driftToleranceBox,c.switchToAdvanced),Ne.setVis.apply(Ne,[Boolean(p)].concat(r(Ne.applySelector(document.body,"[data-cex-show]")))),Ne.setVis(F,c.viewOnlyRunning),Ne.setVis(p,c.cexRebalanceSettings),p&&Yn(document.body,p),e.next=34,this.fetchMarketReport();case 34:_=this.lotSizeUSD(),this.lotsPerLevelIncrement=Math.round(Math.max(1,100/_)),this.qcLotsPerLevel.inc=this.lotsPerLevelIncrement,this.qcUSDPerSide.inc=this.lotsPerLevelIncrement*_,this.qcUSDPerSide.min=_,this.basePane.setAsset(d,!1),this.quotePane.setAsset(h,!0),j=this.marketReport.baseFiatRate,this.placementsChart.setMarket({cexName:p,botType:v,baseFiatRate:j,dict:this.updatedConfig}),H=!T||this.isQuickPlacements(this.updatedConfig.buyPlacements,this.updatedConfig.sellPlacements),z=null!==(o=null===(s=T)||void 0===s||null===(i=s.basicMarketMakingConfig)||void 0===i?void 0:i.gapStrategy)&&void 0!==o?o:_n,c.gapStrategySelect.value=z,v===zn||H&&z===_n?this.showQuickConfig():this.showAdvancedConfig(),this.setOriginalValues(),Ne.hide(c.marketLoading),Ne.show(c.botSettingsContainer,c.marketBox);case 50:case"end":return e.stop()}}),e,this)}))),function(){return w.apply(this,arguments)})},{key:"initializeMarketRows",value:function(){var e=this;this.marketRows=[],Ne.empty(this.page.marketSelect);for(var t=function(){var t=r[n],o=t.host,s=t.markets,i=t.assets,c=t.auth;if(c.effectiveTier+c.pendingStrength===0){var l=e.page,u=l.needRegTmpl,d=l.needRegBox,h=u.cloneNode(!0),p=Ne.parseTemplate(h);return Ne.bind(h,"click",(function(){ft().loadPage("register",{host:o,backTo:"mmsettings"})})),p.host.textContent=o,d.appendChild(h),Ne.show(d),"continue"}for(var f=function(){var t=m[v],n=t.name,r=t.baseid,s=t.quoteid,c=t.spot,l=t.basesymbol,u=t.quotesymbol;if(!ft().assets[r]||!ft().assets[s])return"continue";var d=e.page.marketRowTmpl.cloneNode(!0),h=Ne.parseTemplate(d),p={tr:d,tmpl:h,host:o,name:n,baseID:r,quoteID:s,spot:c,arbs:[]};e.marketRows.push(p),e.page.marketSelect.appendChild(d),h.baseIcon.src=Ne.logoPath(l),h.quoteIcon.src=Ne.logoPath(u),h.baseSymbol.appendChild(Ne.symbolize(i[r],!0)),h.quoteSymbol.appendChild(Ne.symbolize(i[s],!0)),h.host.textContent=o;for(var f=e.cexMarketSupportFilter(r,s),g=0,y=Object.entries(Gn);g<y.length;g++){var b=a(y[g],2),x=b[0],k=b[1];if(f(x)){var w=e.page.arbBttnTmpl.cloneNode(!0);w.src=k.logo,h.arbs.appendChild(w),p.arbs.push(x)}}Ne.bind(d,"click",(function(){e.showBotTypeForm(o,r,s)}))},v=0,m=Object.values(s);v<m.length;v++)f()},n=0,r=Object.values(ft().exchanges);n<r.length;n++)t();if(0===this.marketRows.length){var o=this.page,s=o.marketSelectionTable,i=o.marketFilterBox,c=o.noMarkets;Ne.hide(s,i),Ne.show(c)}else Ne.hide(this.page.noMarkets);var l=ft().fiatRatesMap;this.marketRows.sort((function(e,t){var n,r,a,o,s=null!==(n=null===(r=e.spot)||void 0===r?void 0:r.vol24)&&void 0!==n?n:0,i=null!==(a=null===(o=t.spot)||void 0===o?void 0:o.vol24)&&void 0!==a?a:0;return l[e.baseID]&&l[t.baseID]&&(s*=l[e.baseID],i*=l[t.baseID]),i-s}))}},{key:"runningBotInventory",value:function(e){return Kn(e)}},{key:"adjustedBalances",value:function(e,t){var n=this.cexBaseBalance,r=this.cexQuoteBalance,a=[this.runningBotInventory(e.assetID),this.runningBotInventory(t.assetID)],o=a[0],s=a[1],i=((null==n?void 0:n.available)||0)-o.cex.total,c=((null==r?void 0:r.available)||0)-s.cex.total,l=e.balance.available-o.dex.total,u=t.balance.available-s.dex.total;return{baseAvail:l+i,quoteAvail:u+c,dexBaseAvail:l,dexQuoteAvail:u,cexBaseAvail:i,cexQuoteAvail:c}}},{key:"lotSizeUSD",value:function(){var e=this.specs,t=e.host,n=e.baseID,r=this.mktID,a=this.marketReport.baseFiatRate;return ft().exchanges[t].markets[r].lotsize/ft().assets[n].unitInfo.conventional.conversionFactor*a}},{key:"marketStuff",value:function(){var e=this.page,t=this.specs,n=t.host,r=t.baseID,a=t.quoteID,o=t.cexName,s=t.botType,i=this.basePane,c=this.quotePane,l=this.marketReport,u=l.baseFiatRate,d=l.quoteFiatRate,h=l.baseFees,p=l.quoteFees,f=this.lotsPerLevelIncrement,v=this.updatedConfig,m=this.originalConfig,g=this.mktID,y=ft().assets[r],b=y.symbol,x=y.unitInfo,k=ft().assets[a],w=k.symbol,C=k.unitInfo,S=ft().exchanges[n],F=S.markets[g],T=F.lotsize,D=F.spot,I=T/x.conventional.conversionFactor*u,A=1/x.conventional.conversionFactor*u/d*C.conventional.conversionFactor,R={conv:d/u,atomic:A,msg:Math.round(A*Ft),spot:D},E=[v.simpleArbLots,v.simpleArbLots],B=E[0],P=E[1];s!==zn&&(B=this.updatedConfig.sellPlacements.reduce((function(e,t){return e+t.lots}),0),P=this.updatedConfig.buyPlacements.reduce((function(e,t){return e+t.lots}),0));var L=Jn(T,r,a,D),O=this.walletStuff(),M=ir(r,a,h,p,T,B,P,O.baseFeeAssetID,O.quoteFeeAssetID,O.baseIsAccountLocker,O.quoteIsAccountLocker,v.baseConfig.orderReservesFactor,v.quoteConfig.orderReservesFactor);return So({page:e,cfg:v,oldCfg:m,host:n,xc:S,baseID:r,quoteID:a,botType:s,cexName:o,baseFiatRate:u,quoteFiatRate:d,xcRate:R,baseSymbol:b,quoteSymbol:w,mktID:g,lotSize:T,lotSizeUSD:I,lotsPerLevelIncrement:f,quoteLot:L,commit:M.commit,basePane:i,quotePane:c,fees:M.fees},O)}},{key:"walletStuff",value:function(){var e=this.specs,t=e.baseID,n=e.quoteID,r=[ft().walletMap[t],ft().walletMap[n]],a=r[0],o=r[1],s=[ft().assets[t],ft().assets[n]],i=s[0],c=i.token,l=i.unitInfo,u=s[1],d=u.token,h=u.unitInfo,p=c?c.parentID:t,f=d?d.parentID:n,v=[ft().assets[p].unitInfo,ft().assets[f].unitInfo];return So({baseWallet:a,quoteWallet:o,baseFeeUI:v[0],quoteFeeUI:v[1],baseToken:c,quoteToken:d,bui:l,qui:h,baseFeeAssetID:p,quoteFeeAssetID:f,baseIsAccountLocker:(16384&a.traits)>0,quoteIsAccountLocker:(16384&o.traits)>0},this.adjustedBalances(a,o))}},{key:"showAdvancedConfig",value:function(){var e=this.page;Ne.show(e.advancedConfig),Ne.hide(e.quickConfig),this.placementsChart.render()}},{key:"isQuickPlacements",value:function(e,t){if(0===e.length||e.length!==t.length)return!1;for(var n=0;n<e.length;n++){if(e[n].gapFactor!==t[n].gapFactor)return!1;if(e[n].lots!==t[n].lots)return!1}return!0}},{key:"switchToQuickConfig",value:function(){var e=this.marketStuff(),t=e.cfg,n=e.botType,r=e.lotSizeUSD,a=t.buyPlacements,o=t.sellPlacements;if(a.length>0&&o.length>0){var s=a.reduce((function(e,t){return t.gapFactor<e.gapFactor?t:e})),i=o.reduce((function(e,t){return t.gapFactor<e.gapFactor?t:e})),c=a.length+o.length,l=Math.max(1,Math.floor(c/2));if(n===jn){t.profit=(s.gapFactor+i.gapFactor)/2;var u=a.reduce((function(e,t){return t.gapFactor>e.gapFactor?t:e})),d=o.reduce((function(e,t){return t.gapFactor>e.gapFactor?t:e})),h=(u.gapFactor-s.gapFactor+(d.gapFactor-i.gapFactor))/2/(l-1);this.qcProfit.setValue(100*t.profit),this.qcProfitSlider.setValue((t.profit-Eo)/Bo),this.qcLevelSpacing.setValue(100*h),this.qcLevelSpacingSlider.setValue((h-Po)/Lo)}else if(n===Hn){var p=(a.reduce((function(e,t){return e+t.gapFactor}),0)+o.reduce((function(e,t){return e+t.gapFactor}),0))/c-1||0;this.qcMatchBuffer.setValue(100*p),this.qcMatchBufferSlider.setValue((p-0)/1)}var f=a.reduce((function(e,t){return e+t.lots}),0)+o.reduce((function(e,t){return e+t.lots}),0),v=Math.max(1,Math.round(f/2/l));this.qcLotsPerLevel.setValue(v),this.qcUSDPerSide.setValue(v*l*r),this.qcLevelsPerSide.setValue(l)}else n===zn&&this.qcLotsPerLevel.setValue(t.simpleArbLots);this.showQuickConfig(),this.quickConfigUpdated()}},{key:"showQuickConfig",value:function(){var e=this.marketStuff(),t=e.page,n=e.lotSizeUSD,r=e.botType,a=e.lotsPerLevelIncrement;this.qcLevelsPerSide.input.value||(this.qcLevelsPerSide.setValue(1),this.qcUSDPerSide.setValue(1*(this.qcLotsPerLevel.value()||a)*n)),this.qcLotsPerLevel.input.value||(this.qcLotsPerLevel.setValue(a),this.qcUSDPerSide.setValue(n*a*this.qcLevelsPerSide.value())),t.qcLevelSpacing.value||(this.qcLevelSpacing.setValue(.5),this.qcLevelSpacingSlider.setValue(.20100502512562812)),t.qcMatchBuffer.value||(t.qcMatchBuffer.value=String(0)),Ne.hide(t.advancedConfig),Ne.show(t.quickConfig),this.showInputsForBot(r)}},{key:"showInputsForBot",value:function(e){var t=this.page,n=this.opts.usingUSDPerSide;switch(Ne.hide(t.matchMultiplierBox,t.placementsChartBox,t.placementChartLegend,t.lotsPerLevelLabel,t.levelSpacingBox,t.arbLotsLabel,t.qcLevelPerSideBox),Ne.setVis(n,t.qcUSDPerSideBox),Ne.setVis(!n,t.qcLotsBox),e){case Hn:Ne.show(t.qcLevelPerSideBox,t.matchMultiplierBox,t.placementsChartBox,t.placementChartLegend,t.lotsPerLevelLabel);break;case jn:Ne.show(t.qcLevelPerSideBox,t.levelSpacingBox,t.placementsChartBox,t.lotsPerLevelLabel);break;case zn:Ne.show(t.arbLotsLabel)}}},{key:"quickConfigUpdated",value:function(){var e,t,n,r=this.marketStuff(),a=r.page,o=r.cfg,s=r.botType,i=r.cexName;Ne.hide(a.qcError);var c=function(e){a.qcError.textContent=e,Ne.show(a.qcError)},l=s===zn?1:this.qcLevelsPerSide.value();isNaN(l)&&c("invalid value for levels per side");var u=this.qcLotsPerLevel.value();isNaN(u)&&c("invalid value for lots per level");var d=parseFloat(null!==(e=a.qcProfit.value)&&void 0!==e?e:"")/100;isNaN(d)&&c("invalid value for profit");var h=s===jn?parseFloat(null!==(t=a.qcLevelSpacing.value)&&void 0!==t?t:"")/100:0;isNaN(h)&&c("invalid value for level spacing");var p=s===Hn?parseFloat(null!==(n=a.qcMatchBuffer.value)&&void 0!==n?n:"")/100:0;isNaN(p)&&c("invalid value for match buffer");var f=p+1,v=1===l;if(a.levelSpacingBox.classList.toggle("disabled",v),a.qcLevelSpacing.disabled=v,o.simpleArbLots=u,s!==zn){this.clearPlacements(i?Ro:o.gapStrategy);for(var m=0;m<l;m++){var g={lots:u};g.gapFactor=s===jn?d+h*m:f,o.buyPlacements.push(g),o.sellPlacements.push(g),this.addPlacement(!0,g),this.addPlacement(!1,g)}this.placementsChart.render()}this.updateAllocations()}},{key:"updateAllocations",value:function(){this.updateBaseAllocations(),this.updateQuoteAllocations()}},{key:"updateBaseAllocations",value:function(){var e=this.marketStuff(),t=e.commit,n=e.lotSize,r=e.basePane,a=e.fees;r.updateInventory(t.dex.base.lots,t.dex.quote.lots,n,t.dex.base.val,t.cex.base.val,a.base),r.updateCommitTotal()}},{key:"updateQuoteAllocations",value:function(){var e=this.marketStuff(),t=e.commit,n=e.quoteLot,r=e.quotePane,a=e.fees;r.updateInventory(t.dex.quote.lots,t.dex.base.lots,n,t.dex.quote.val,t.cex.quote.val,a.quote),r.updateCommitTotal()}},{key:"matchBufferChanged",value:function(){var e,t=this.page;t.qcMatchBuffer.value=Math.max(0,parseFloat(null!==(e=t.qcMatchBuffer.value)&&void 0!==e?e:"")||0).toFixed(2),this.quickConfigUpdated()}},{key:"showAddress",value:function(e){this.walletAddrForm.setAsset(e),this.forms.show(this.page.walletAddrForm)}},{key:"changeSideCommitmentDialog",value:function(){var e=this.page,t=this.opts;t.usingUSDPerSide=!t.usingUSDPerSide,Ne.setVis(t.usingUSDPerSide,e.qcUSDPerSideBox),Ne.setVis(!t.usingUSDPerSide,e.qcLotsBox)}},{key:"showBotTypeForm",value:(x=s(f().mark((function e(t,n,r,a,o){var s,i,c,l,u,d,h,p,v,m,g,y,b,x,w,C,S,F,T,D,I,A,R,E,B,P,L,O;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s=this.page,this.formSpecs={host:t,baseID:n,quoteID:r,botType:""},!No(this.formSpecs,ft().mmStatus)){e.next=21;break}i=er(t,n,r),c=this.specs=this.formSpecs,e.t0=!0,e.next=e.t0===Boolean(null==i?void 0:i.simpleArbConfig)?9:e.t0===Boolean(null==i?void 0:i.arbMarketMakingConfig)?11:13;break;case 9:return c.botType=zn,e.abrupt("break",14);case 11:return c.botType=Hn,e.abrupt("break",14);case 13:c.botType=jn;case 14:return c.cexName=null==i?void 0:i.cexName,e.next=17,this.fetchCEXBalances(this.formSpecs);case 17:return e.next=19,this.configureUI();case 19:return this.forms.close(),e.abrupt("return");case 21:Qn(s.botTypeForm,n,r,t),Ne.empty(s.botTypeBaseSymbol,s.botTypeQuoteSymbol),l=[ft().assets[n],ft().assets[r]],u=l[0],d=l[1],s.botTypeBaseSymbol.appendChild(Ne.symbolize(u,!0)),s.botTypeQuoteSymbol.appendChild(Ne.symbolize(d,!0)),h=Fo(this.botTypeSelectors);try{for(h.s();!(p=h.n()).done;)p.value.classList.remove("selected")}catch(e){h.e(e)}finally{h.f()}for(v=0,m=Object.values(this.formCexes);v<m.length;v++)m[v].div.classList.remove("selected");for(this.setCEXAvailability(n,r),Ne.hide(s.noCexesConfigured,s.noCexMarket,s.noCexMarketConfigureMore,s.botTypeErr),g=this.cexMarketSupportFilter(n,r),y={},b=0,x=Object.values(ft().mmStatus.cexes);b<x.length;b++)w=x[b],g(w.config.name)&&(y[w.config.name]=w.config);C=Object.keys(y).length,S=C>0,F=Fo(this.botTypeSelectors);try{for(F.s();!(T=F.n()).done;)(D=T.value).classList.toggle("disabled",D.dataset.botType!==jn&&!S)}catch(e){F.e(e)}finally{F.f()}0===Object.keys(ft().mmStatus.cexes).length?(Ne.show(s.noCexesConfigured),this.setBotTypeSelected(jn)):(A=k.fetchLocal(Io)||{},R=A["".concat(n,"_").concat(r,"_").concat(t)],(a=null!==(I=a)&&void 0!==I?I:R?R.botType:Hn)!==jn&&(o&&(E=y[o]),!E&&R&&(E=y[null!==(B=R.cexName)&&void 0!==B?B:""]),E||(P=k.fetchLocal(Ao))&&(E=y[P]),!E&&C>0&&(E=Object.values(y)[0])),E?(s.cexSelection.classList.remove("disabled"),this.setBotTypeSelected(null!==(L=a)&&void 0!==L?L:R?R.botType:Hn),this.selectFormCEX(E.name)):(s.cexSelection.classList.add("disabled"),Ne.show(s.noCexMarket),this.setBotTypeSelected(jn),0===(O=Object.keys(Gn).filter((function(e){return!ft().mmStatus.cexes[e]}))).length||1===O.length&&("Binance"===O[0]||"BinanceUS"===O[0])||Ne.show(s.noCexMarketConfigureMore))),Ne.show(s.cexSelection),this.forms.show(s.botTypeForm);case 41:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,a){return x.apply(this,arguments)})},{key:"reshowBotTypeForm",value:function(){No(this.specs,ft().mmStatus)&&this.showMarketSelectForm();var e=this.specs,t=e.baseID,n=e.quoteID,r=e.host,a=e.cexName,o=e.botType;this.showBotTypeForm(r,t,n,o,a)}},{key:"setBotTypeSelected",value:function(e){var t,n=this.formSpecs,r=n.baseID,a=n.quoteID,o=n.host,s=this.botTypeSelectors,i=this.formCexes,c=Fo(s);try{for(c.s();!(t=c.n()).done;){var l=t.value,u=l.classList,d=l.dataset.botType;u.toggle("selected",d===e)}}catch(e){c.e(e)}finally{c.f()}if(e!==jn){var h=ft().mmStatus;if(0!==Object.keys(h.cexes).length){var p=this.cexMarketSupportFilter(r,a),f=Object.values(i).filter((function(e){return e.div.classList.contains("selected")}));if(!f.length||!p(f[0].name)){var v=(k.fetchLocal(Io)||{})["".concat(r,"_").concat(a,"_").concat(o)];if(v){var m,g=h.cexes[null!==(m=v.cexName)&&void 0!==m?m:""];if(g&&p(g.config.name))return void this.selectFormCEX(g.config.name)}var y=k.fetchLocal(Ao);if(y){var b=h.cexes[y];if(b&&p(b.config.name))return void this.selectFormCEX(b.config.name)}var x=Object.values(h.cexes).filter((function(e){return p(e.config.name)}));x.length&&this.selectFormCEX(x[0].config.name)}}}}},{key:"showMarketSelectForm",value:function(){this.page.marketFilterInput.value="",this.sortMarketRows(),this.forms.show(this.page.marketSelectForm)}},{key:"sortMarketRows",value:function(){var e,t=this.page,n=null===(e=t.marketFilterInput.value)||void 0===e?void 0:e.toLowerCase();Ne.empty(t.marketSelect);var r,a=Fo(this.marketRows);try{for(a.s();!(r=a.n()).done;){var o=r.value;o.tr.classList.remove("selected"),n&&!o.name.includes(n)||t.marketSelect.appendChild(o.tr)}}catch(e){a.e(e)}finally{a.f()}}},{key:"handleBalanceNote",value:function(e){if(this.approveTokenForm.handleBalanceNote(e),this.marketReport){var t=this.marketStuff(),n=t.baseID,r=t.quoteID,a=t.quoteToken,o=t.baseToken;e.assetID===n||e.assetID===(null==o?void 0:o.parentID)?this.basePane.updateBalances():e.assetID!==r&&e.assetID!==(null==a?void 0:a.parentID)||this.quotePane.updateBalances()}}},{key:"autoRebalanceChanged",value:function(){var e,t,n=this.page;this.updatedConfig.cexRebalance=null!==(e=null===(t=n.cexRebalanceCheckbox)||void 0===t?void 0:t.checked)&&void 0!==e&&e,this.updateAllocations()}},{key:"submitBotType",value:(m=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=ft().loading(this.page.botTypeForm),e.prev=1,e.next=4,this.submitBotWithValidation();case 4:return e.prev=4,t(),e.finish(4);case 7:case"end":return e.stop()}}),e,this,[[1,,4,7]])}))),function(){return m.apply(this,arguments)})},{key:"submitBotWithValidation",value:(p=s(f().mark((function e(){var t,n,r,o,s,i,c,l,u,d,h,p,v,m,g;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,r=this.forms,o=this.formSpecs,s=o.baseID,i=o.quoteID,c=o.host,ft().walletMap[s]){e.next=5;break}return this.newWalletForm.setAsset(s),r.show(this.page.newWalletForm),e.abrupt("return");case 5:if(ft().walletMap[i]){e.next=9;break}return this.newWalletForm.setAsset(i),r.show(this.page.newWalletForm),e.abrupt("return");case 9:if(l=Vo(c,ft().assets[s],ft().assets[i]),u=a(l,2),d=u[0],h=u[1],d!==dt.NotApproved){e.next=14;break}return this.approveTokenForm.setAsset(s,c),r.show(n.approveTokenForm),e.abrupt("return");case 14:if(h!==dt.NotApproved){e.next=18;break}return this.approveTokenForm.setAsset(i,c),r.show(n.approveTokenForm),e.abrupt("return");case 18:if(p=this.botTypeSelectors,!((v=p.filter((function(e){return e.classList.contains("selected")}))).length<1)){e.next=24;break}return n.botTypeErr.textContent=ke("NO_BOTTYPE"),Ne.show(n.botTypeErr),e.abrupt("return");case 24:if((this.formSpecs.botType=null!==(t=v[0].dataset.botType)&&void 0!==t?t:"")===jn){e.next=35;break}if(!((m=Object.values(this.formCexes).filter((function(e){return e.div.classList.contains("selected")}))).length<1)){e.next=31;break}return n.botTypeErr.textContent=ke("NO_CEX"),Ne.show(n.botTypeErr),e.abrupt("return");case 31:return g=m[0].name,this.formSpecs.cexName=g,e.next=35,this.fetchCEXBalances(this.formSpecs);case 35:this.specs=this.formSpecs,this.configureUI(),this.forms.close();case 38:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"fetchCEXBalances",value:(u=s(f().mark((function e(t){var n,r,a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,r=t.baseID,a=t.quoteID,o=t.cexName,t.botType!==jn&&o){e.next=4;break}return e.abrupt("return");case 4:return e.prev=4,e.next=7,Xn.cexBalance(o,r);case 7:this.cexBaseBalance=e.sent,e.next=15;break;case 10:throw e.prev=10,e.t0=e.catch(4),n.botTypeErr.textContent=ke(ve,{cexName:o,assetID:String(r),err:String(e.t0)}),Ne.show(n.botTypeErr),e.t0;case 15:return e.prev=15,e.next=18,Xn.cexBalance(o,a);case 18:this.cexQuoteBalance=e.sent,e.next=26;break;case 21:throw e.prev=21,e.t1=e.catch(15),n.botTypeErr.textContent=ke(ve,{cexName:o,assetID:String(a),err:String(e.t1)}),Ne.show(n.botTypeErr),e.t1;case 26:case"end":return e.stop()}}),e,this,[[4,10],[15,21]])}))),function(e){return u.apply(this,arguments)})},{key:"defaultWalletOptions",value:function(e){var t=ft().currentWalletDefinition(e);if(!t.multifundingopts)return{};var n,r={},a=Fo(t.multifundingopts);try{for(a.s();!(n=a.n()).done;){var o=n.value;o.quoteAssetOnly&&e!==this.specs.quoteID||(r[o.key]="".concat(o.default))}}catch(e){a.e(e)}finally{a.f()}return r}},{key:"updateModifiedMarkers",value:function(){if(!this.creatingNewBot){var e=this.page,t=this.originalConfig,n=this.updatedConfig,r=t.gapStrategy!==n.gapStrategy;e.gapStrategySelect.classList.toggle("modified",r);var a=t.profit!==n.profit;e.profitInput.classList.toggle("modified",a);var o=!1;if(t.buyPlacements.length!==n.buyPlacements.length)o=!0;else for(var s=0;s<t.buyPlacements.length;s++)if(t.buyPlacements[s].lots!==n.buyPlacements[s].lots||t.buyPlacements[s].gapFactor!==n.buyPlacements[s].gapFactor){o=!0;break}e.buyPlacementsTableWrapper.classList.toggle("modified",o);var i=!1;if(t.sellPlacements.length!==n.sellPlacements.length)i=!0;else for(var c=0;c<t.sellPlacements.length;c++)if(t.sellPlacements[c].lots!==n.sellPlacements[c].lots||t.sellPlacements[c].gapFactor!==n.sellPlacements[c].gapFactor){i=!0;break}e.sellPlacementsTableWrapper.classList.toggle("modified",i)}}},{key:"gapFactorHeaderUnit",value:function(e){switch(e){case Nn:return["Multiplier","x"];case Wn:case Vn:return["Rate","".concat(ft().assets[this.specs.quoteID].symbol,"/").concat(ft().assets[this.specs.baseID].symbol)];case Un:case _n:return["Percent","%"];default:throw new Error("Unknown gap strategy ".concat(e))}}},{key:"checkGapFactorRange",value:function(e,t){switch(e){case Nn:return t<1||t>100?"Multiplier must be between 1 and 100":null;case Wn:case Vn:return t<=0?"Rate must be greater than 0":null;case Un:case _n:return t<=0||t>10?"Percent must be between 0 and 10":null;default:throw new Error("Unknown gap factor ".concat(e))}}},{key:"convertGapFactor",value:function(e,t,n){switch(t){case Nn:case Wn:case Vn:return e;case Un:case _n:return n?100*e:e/100;default:throw new Error("Unknown gap factor ".concat(t))}}},{key:"addPlacement",value:function(e,t,n){var r=this,a=this.page,o=this.updatedConfig,s=a.sellPlacementsTableBody,i=a.addSellPlacementRow,c=a.addSellPlacementLots,l=a.addSellPlacementGapFactor,u=a.sellPlacementsErr;e&&(s=a.buyPlacementsTableBody,i=a.addBuyPlacementRow,c=a.addBuyPlacementLots,l=a.addBuyPlacementGapFactor,u=a.buyPlacementsErr),Ne.hide(u);var d=function(){for(var e=0;e<s.children.length-1;e++){var t=Ne.parseTemplate(s.children[e]);Ne.setVis(0!==e,t.upBtn),Ne.setVis(e!==s.children.length-2,t.downBtn)}};Ne.hide(u);var h,p,f,v=function(e){u.textContent=e,Ne.show(u)};n||(n=this.specs.cexName?Nn:o.gapStrategy);var m=e?o.buyPlacements:o.sellPlacements,g=this.gapFactorHeaderUnit(n)[1];if(t)h=t.lots,p=t.gapFactor,f=this.convertGapFactor(p,n,!0);else{if(h=parseInt(c.value||"0"),f=parseFloat(l.value||"0"),p=this.convertGapFactor(f,n,!1),0===h)return void v("Lots must be greater than 0");var y=this.checkGapFactorRange(n,f);if(y)return void v(y);if(m.find((function(e){return e.gapFactor===p})))return void v("Duplicate placement");m.push({lots:h,gapFactor:p})}var b=a.placementRowTmpl.cloneNode(!0),x=Ne.parseTemplate(b);x.priority.textContent="".concat(s.children.length),x.lots.textContent="".concat(h),x.gapFactor.textContent="".concat(f," ").concat(g),Ne.bind(x.removeBtn,"click",(function(){var e=m.findIndex((function(e){return e.lots===h&&e.gapFactor===p}));-1!==e&&(m.splice(e,1),b.remove(),d(),r.updateModifiedMarkers(),r.placementsChart.render(),r.updateAllocations())})),Ne.bind(x.upBtn,"click",(function(){var e=m.findIndex((function(e){return e.lots===h&&e.gapFactor===p}));if(0!==e){var t=m[e-1];m[e-1]=m[e],m[e]=t,x.priority.textContent="".concat(e),b.remove(),s.insertBefore(b,s.children[e-1]),Ne.parseTemplate(s.children[e]).priority.textContent="".concat(e+1),d(),r.updateModifiedMarkers()}})),Ne.bind(x.downBtn,"click",(function(){var e=m.findIndex((function(e){return e.lots===h&&e.gapFactor===p}));if(e!==m.length-1){var t=m[e+1];m[e+1]=m[e],m[e]=t,x.priority.textContent="".concat(e+2),b.remove(),s.insertBefore(b,s.children[e+1]),Ne.parseTemplate(s.children[e]).priority.textContent="".concat(e+1),d(),r.updateModifiedMarkers()}})),s.insertBefore(b,i),d()}},{key:"setArbMMLabels",value:function(){this.page.buyGapFactorHdr.textContent=ke(ce),this.page.sellGapFactorHdr.textContent=ke(ce)}},{key:"setGapFactorLabels",value:function(e){var t=this.page,n=this.gapFactorHeaderUnit(e)[0];switch(t.buyGapFactorHdr.textContent=n,t.sellGapFactorHdr.textContent=n,Ne.hide(t.percentPlusInfo,t.percentInfo,t.absolutePlusInfo,t.absoluteInfo,t.multiplierInfo),e){case"percent-plus":return Ne.show(t.percentPlusInfo);case"percent":return Ne.show(t.percentInfo);case"absolute-plus":return Ne.show(t.absolutePlusInfo);case"absolute":return Ne.show(t.absoluteInfo);case"multiplier":return Ne.show(t.multiplierInfo)}}},{key:"clearPlacements",value:function(e){for(var t=this.page,n=this.updatedConfig;t.buyPlacementsTableBody.children.length>1;)t.buyPlacementsTableBody.children[0].remove();for(;t.sellPlacementsTableBody.children.length>1;)t.sellPlacementsTableBody.children[0].remove();this.placementsCache[e]=[n.buyPlacements,n.sellPlacements],n.buyPlacements.splice(0,n.buyPlacements.length),n.sellPlacements.splice(0,n.sellPlacements.length)}},{key:"loadCachedPlacements",value:function(e){var t,n,a=this.placementsCache[e];if(a){var o=this.updatedConfig;o.buyPlacements.splice(0,o.buyPlacements.length),o.sellPlacements.splice(0,o.sellPlacements.length),(t=o.buyPlacements).push.apply(t,r(a[0])),(n=o.sellPlacements).push.apply(n,r(a[1]));var s,i=e===Ro?Nn:e,c=Fo(o.buyPlacements);try{for(c.s();!(s=c.n()).done;){var l=s.value;this.addPlacement(!0,l,i)}}catch(e){c.e(e)}finally{c.f()}var u,d=Fo(o.sellPlacements);try{for(d.s();!(u=d.n()).done;){var h=u.value;this.addPlacement(!1,h,i)}}catch(e){d.e(e)}finally{d.f()}}}},{key:"setOriginalValues",value:function(){var e,t,n,r=this,o=this.page,s=this.originalConfig,i=this.updatedConfig,l=this.specs,u=l.cexName,d=l.botType;this.clearPlacements(u?Ro:i.gapStrategy),function(e,t){for(var n=0,r=Object.entries(t);n<r.length;n++){var o=a(r[n],2),s=o[0],i=o[1];if(Array.isArray(i)){e[s].splice(0,e[s].length);var l,u=Fo(i);try{for(u.s();!(l=u.n()).done;){var d=l.value;e[s].push(d)}}catch(e){u.e(e)}finally{u.f()}}else"object"===c(i)?Object.assign(e[s],i):e[s]=t[s]}}(i,JSON.parse(JSON.stringify(s)));var h=null!==(e=i.driftTolerance)&&void 0!==e?e:.002;this.driftTolerance.setValue(100*h),this.driftToleranceSlider.setValue(h/.02);var p=null!==(t=i.orderPersistence)&&void 0!==t?t:20;this.orderPersistence.setValue(p),this.orderPersistenceSlider.setValue(p/40);var f=null!==(n=i.profit)&&void 0!==n?n:.01;o.profitInput.value=String(100*f),this.qcProfit.setValue(100*f),this.qcProfitSlider.setValue((f-Eo)/Bo),u&&(o.cexRebalanceCheckbox.checked=i.cexRebalance,this.autoRebalanceChanged()),o.gapStrategySelect.options&&(Array.from(o.gapStrategySelect.options).forEach((function(e){e.selected=e.value===i.gapStrategy})),this.setGapFactorLabels(i.gapStrategy),d===jn?(Ne.show(o.gapStrategyBox),Ne.hide(o.profitSelectorBox,o.orderPersistenceBox),this.setGapFactorLabels(o.gapStrategySelect.value||"")):u&&ft().mmStatus.cexes[u]&&(Ne.hide(o.gapStrategyBox),Ne.show(o.profitSelectorBox,o.orderPersistenceBox),this.setArbMMLabels()),s.buyPlacements.forEach((function(e){r.addPlacement(!0,e)})),s.sellPlacements.forEach((function(e){r.addPlacement(!1,e)})),this.basePane.setupWalletSettings(),this.quotePane.setupWalletSettings(),this.updateModifiedMarkers(),Ne.isDisplayed(o.quickConfig)&&this.switchToQuickConfig())}},{key:"validateFields",value:function(e){var t=!0,n=this.page,r=this.specs.botType,a=this.updatedConfig,o=a.sellPlacements,s=a.buyPlacements,i=a.profit,c=function(n,r){t=!1,e&&(n.textContent=ke(r),Ne.show(n))};return e&&Ne.hide(n.buyPlacementsErr,n.sellPlacementsErr,n.profitInputErr),r!==zn&&s.length+o.length===0&&(c(n.buyPlacementsErr,le),c(n.sellPlacementsErr,le)),r!==jn&&(isNaN(i)?c(n.profitInputErr,ue):0===i&&c(n.profitInputErr,de)),t}},{key:"saveSettings",value:(l=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.validateFields(!0)){e.next=2;break}return e.abrupt("return");case 2:t=this.marketStuff(),n=t.cfg,r=t.baseID,a=t.quoteID,o=t.host,s=t.botType,i=t.cexName,c={host:o,baseID:r,quoteID:a,cexName:null!=i?i:"",uiConfig:{simpleArbLots:n.simpleArbLots,baseConfig:n.baseConfig,quoteConfig:n.quoteConfig,cexRebalance:n.cexRebalance},baseWalletOptions:n.baseOptions,quoteWalletOptions:n.quoteOptions},e.t0=s,e.next=e.t0===jn?7:e.t0===Hn?9:e.t0===zn?11:12;break;case 7:return c.basicMarketMakingConfig=this.basicMMConfig(),e.abrupt("break",12);case 9:return c.arbMarketMakingConfig=this.arbMMConfig(),e.abrupt("break",12);case 11:c.simpleArbConfig=this.basicArbConfig();case 12:return ft().log("mm","saving bot config",c),e.next=15,Xn.updateBotConfig(c);case 15:return e.next=17,ft().fetchMMStatus();case 17:this.originalConfig=JSON.parse(JSON.stringify(n)),this.updateModifiedMarkers(),(l=k.fetchLocal(Io)||{})["".concat(r,"_").concat(a,"_").concat(o)]=this.specs,k.storeLocal(Io,l),i&&k.storeLocal(Ao,i),ft().loadPage("mm");case 24:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"delete",value:(o=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.specs,r=n.host,a=n.baseID,o=n.quoteID,Ne.hide(t.deleteErr),s=ft().loading(t.botSettingsContainer),e.next=5,Xn.removeBotConfig(r,a,o);case 5:if(i=e.sent,s(),ft().checkResponse(i)){e.next=11;break}return t.deleteErr.textContent=ke(H,{msg:i.msg}),Ne.show(t.deleteErr),e.abrupt("return");case 11:return e.next=13,ft().fetchMMStatus();case 13:ft().loadPage("mm");case 14:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"arbMMConfig",value:function(){var e,t=this.updatedConfig,n={buyPlacements:[],sellPlacements:[],profit:t.profit,driftTolerance:t.driftTolerance,orderPersistence:t.orderPersistence},r=Fo(t.buyPlacements);try{for(r.s();!(e=r.n()).done;){var a=e.value;n.buyPlacements.push({lots:a.lots,multiplier:a.gapFactor})}}catch(e){r.e(e)}finally{r.f()}var o,s=Fo(t.sellPlacements);try{for(s.s();!(o=s.n()).done;){var i=o.value;n.sellPlacements.push({lots:i.lots,multiplier:i.gapFactor})}}catch(e){s.e(e)}finally{s.f()}return n}},{key:"basicArbConfig",value:function(){var e=this.updatedConfig;return{profitTrigger:e.profit,maxActiveArbs:100,numEpochsLeaveOpen:e.orderPersistence}}},{key:"basicMMConfig",value:function(){var e=this.updatedConfig;return{gapStrategy:e.gapStrategy,sellPlacements:e.sellPlacements,buyPlacements:e.buyPlacements,driftTolerance:e.driftTolerance}}},{key:"fetchMarketReport",value:(n=s(f().mark((function e(){var t,n,r,a,o,s,i,c,l,u,d,h,p;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.specs,r=n.host,a=n.baseID,o=n.quoteID,e.next=3,Xn.report(r,a,o);case 3:if(s=e.sent,Ne.hide(t.oraclesLoading,t.oraclesTable,t.noOracles),ft().checkResponse(s)){e.next=9;break}return t.oraclesErrMsg.textContent=s.msg,Ne.show(t.oraclesErr),e.abrupt("return");case 9:if((i=this.marketReport=s.report).oracles&&0!==i.oracles.length){Ne.hide(t.noOracles),Ne.empty(t.oracles),l=Fo(null!==(c=i.oracles)&&void 0!==c?c:[]);try{for(l.s();!(u=l.n()).done;)d=u.value,h=t.oracleTmpl.cloneNode(!0),t.oracles.appendChild(h),(p=Ne.parseTemplate(h)).logo.src="img/"+d.host+".png",p.host.textContent=Wo[d.host],p.volume.textContent=Ne.formatFourSigFigs(d.usdVol),p.price.textContent=Ne.formatFourSigFigs((d.bestBuy+d.bestSell)/2)}catch(e){l.e(e)}finally{l.f()}t.avgPrice.textContent=i.price?Ne.formatFourSigFigs(i.price):"0",Ne.show(t.oraclesTable)}else Ne.show(t.noOracles);i.baseFiatRate>0?t.baseFiatRate.textContent=Ne.formatFourSigFigs(i.baseFiatRate):t.baseFiatRate.textContent="N/A",i.quoteFiatRate>0?t.quoteFiatRate.textContent=Ne.formatFourSigFigs(i.quoteFiatRate):t.quoteFiatRate.textContent="N/A",Ne.show(t.fiatRates);case 14:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"cexConfigured",value:(t=s(f().mark((function e(t){var n,r,a,o,s,i,c,l,u,d,h,p,v,m;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.page,r=this.formSpecs,a=r.host,o=r.baseID,s=r.quoteID,i=Gn[t],c=Fo(this.marketRows),e.prev=3,c.s();case 5:if((l=c.n()).done){e.next=13;break}if(u=l.value,d=u.baseID,h=u.quoteID,p=u.tmpl,-1===(v=u.arbs).indexOf(t)){e.next=9;break}return e.abrupt("continue",11);case 9:this.cexMarketSupportFilter(d,h)(t)&&((m=n.arbBttnTmpl.cloneNode(!0)).src=i.logo,p.arbs.appendChild(m),v.push(t));case 11:e.next=5;break;case 13:e.next=18;break;case 15:e.prev=15,e.t0=e.catch(3),c.e(e.t0);case 18:return e.prev=18,c.f(),e.finish(18);case 21:this.setCEXAvailability(o,s,t),this.showBotTypeForm(a,o,s,Hn,t);case 23:case"end":return e.stop()}}),e,this,[[3,15,18,21]])}))),function(e){return t.apply(this,arguments)})},{key:"setupCEXes",value:function(){this.formCexes={};for(var e=0,t=Object.keys(Gn);e<t.length;e++){var n=t[e];this.addCEX(n)}}},{key:"setCEXAvailability",value:function(e,t,n){for(var r=this.cexMarketSupportFilter(e,t),a=0,o=Object.values(this.formCexes);a<o.length;a++){var s=o[a],i=s.name,c=s.div,l=s.tmpl,u=r(i),d=ft().mmStatus.cexes[i];Ne.hide(l.unavailable,l.needsconfig,l.disconnected),Ne.setVis(Boolean(d),l.reconfig),l.logo.classList.remove("greyscal"),c.classList.toggle("configured",Boolean(d)&&!d.connectErr),d?d.connectErr?Ne.show(l.disconnected):u?i===n&&this.selectFormCEX(i):(Ne.show(l.unavailable),l.logo.classList.add("greyscal")):Ne.show(l.needsconfig)}}},{key:"selectFormCEX",value:function(e){for(var t=0,n=Object.values(this.formCexes);t<n.length;t++){var r=n[t],a=r.name;r.div.classList.toggle("selected",a===e)}}},{key:"addCEX",value:function(e){var t=this,n=Gn[e],r=this.page.cexOptTmpl.cloneNode(!0),a=Ne.parseTemplate(r);a.name.textContent=n.name,a.logo.src=n.logo,this.page.cexSelection.appendChild(r),this.formCexes[e]={name:e,div:r,tmpl:a},Ne.bind(r,"click",(function(){var n=ft().mmStatus.cexes[e];if(n&&!n.connectErr)if(t.formCexes[e].div.classList.contains("selected")){for(var r=0,a=Object.values(t.formCexes);r<a.length;r++)a[r].div.classList.remove("selected");var o=t.formSpecs,s=o.baseID,i=o.quoteID;t.setCEXAvailability(s,i)}else for(var c=0,l=Object.values(t.formCexes);c<l.length;c++){var u=l[c];u.div.classList.toggle("selected",u.name===e)}else t.showCEXConfigForm(e)})),Ne.bind(a.reconfig,"click",(function(n){n.stopPropagation(),t.showCEXConfigForm(e)}))}},{key:"showCEXConfigForm",value:function(e){var t=this.page;this.cexConfigForm.setCEX(e),this.forms.show(t.cexConfigForm)}},{key:"cexMarketSupportFilter",value:function(e,t){for(var n={},r=0,o=Object.entries(ft().mmStatus.cexes);r<o.length;r++)for(var s=a(o[r],2),i=s[0],c=s[1],l=0,u=Object.values(null!==(d=c.markets)&&void 0!==d?d:[]);l<u.length;l++){var d,h=u[l],p=h.baseID,f=h.quoteID;if(p===e&&f===t){n[i]=!0;break}}return function(e){return Boolean(n[e])}}}]),D}(lt);function No(e,t){var n=t.bots.find((function(t){var n=t.config;return n.host===e.host&&n.baseID===e.baseID&&n.quoteID===e.quoteID}));return Boolean(null==n?void 0:n.running)}var Wo={"binance.com":"Binance","coinbase.com":"Coinbase","bittrex.com":"Bittrex","hitbtc.com":"HitBTC","exmo.com":"EXMO"};function Vo(e,t,n){var r=dt.Approved,a=dt.Approved;if(null!=t&&t.token){var o,s=ft().assets[t.id],i=ft().exchanges[e].assets[t.id].version;null!=s&&null!==(o=s.wallet)&&void 0!==o&&o.approved&&void 0!==s.wallet.approved[i]&&(r=s.wallet.approved[i])}if(null!=n&&n.token){var c,l=ft().assets[n.id],u=ft().exchanges[e].assets[n.id].version;null!=l&&null!==(c=l.wallet)&&void 0!==c&&c.approved&&void 0!==l.wallet.approved[u]&&(a=l.wallet.approved[u])}return[r,a]}var Uo=function(){function e(t,n){var r=this;i(this,e),h(this,"pg",void 0),h(this,"div",void 0),h(this,"page",void 0),h(this,"assetID",void 0),h(this,"ui",void 0),h(this,"walletConfig",void 0),h(this,"feeAssetID",void 0),h(this,"feeUI",void 0),h(this,"isQuote",void 0),h(this,"isToken",void 0),h(this,"lotSize",void 0),h(this,"lotSizeConv",void 0),h(this,"cfg",void 0),h(this,"inv",void 0),h(this,"nSwapFees",void 0),h(this,"nSwapFeesSlider",void 0),h(this,"orderReserves",void 0),h(this,"orderReservesSlider",void 0),h(this,"slippageBuffer",void 0),h(this,"slippageBufferSlider",void 0),h(this,"minTransfer",void 0),h(this,"minTransferSlider",void 0),this.pg=t,this.div=n;var o=this.page=Ne.parseTemplate(n);this.nSwapFees=new Je(o.nSwapFees,{prec:0,inc:10,changed:function(e){r.cfg.swapFeeN=e,r.nSwapFeesSlider.setValue((e-0)/1e3),r.pg.updateAllocations()}}),this.nSwapFeesSlider=new Ze(o.nSwapFeesSlider,(function(e){var t=a($e(0+1e3*e,0),1)[0];r.cfg.swapFeeN=t,r.nSwapFees.setValue(t),r.pg.updateAllocations()})),this.orderReserves=new Ye(o.orderReservesFactor,{prec:3,min:0,changed:function(e){r.cfg.orderReservesFactor=e,r.orderReservesSlider.setValue((e-0)/3),r.pg.updateAllocations()}}),this.orderReservesSlider=new Ze(o.orderReservesSlider,(function(e){var t=a($e(0+3*e,3),1)[0];r.orderReserves.setValue(t),r.cfg.orderReservesFactor=t,r.pg.updateAllocations()})),this.slippageBuffer=new Ye(o.slippageBufferFactor,{prec:3,min:0,changed:function(e){r.cfg.slippageBufferFactor=e,r.slippageBufferSlider.setValue((e-0)/.3),r.pg.updateAllocations()}}),this.slippageBufferSlider=new Ze(o.slippageBufferSlider,(function(e){var t=a($e(0+.3*e,3),1)[0];r.slippageBuffer.setValue(0+.3*e),r.cfg.slippageBufferFactor=t,r.pg.updateAllocations()})),this.minTransfer=new Ye(o.minTransfer,{sigFigs:!0,min:0,changed:function(e){var t=r.cfg,n=r.commit(),a=[r.minTransfer.min,Math.max(2*r.minTransfer.min,n)],o=a[0],s=a[1];t.transferFactor=(e-o)/(s-o),r.minTransferSlider.setValue(t.transferFactor)}}),this.minTransferSlider=new Ze(o.minTransferSlider,(function(e){var t=r.cfg,n=r.commit(),a=[r.minTransfer.min,Math.max(r.minTransfer.min,n)],o=a[0],s=a[1];t.transferFactor=e,r.minTransfer.setValue(o+e*(s-o))})),Ne.bind(o.showBalance,"click",(function(){t.showAddress(r.assetID)}))}return d(e,[{key:"setLotSize",value:function(e){var t=this.ui;this.lotSize=e,this.lotSizeConv=e/t.conventional.conversionFactor}},{key:"setAsset",value:function(e,t){var n;this.assetID=e,this.isQuote=t;var r=this.cfg=t?this.pg.updatedConfig.quoteConfig:this.pg.updatedConfig.baseConfig,o=this.page,s=this.div,i=this.pg,c=i.specs,l=c.botType,u=c.baseID,d=c.cexName,h=i.mktID,p=i.updatedConfig,f=p.baseOptions,v=p.quoteOptions,m=ft().assets[e],g=m.symbol,y=m.name,b=m.token,x=m.unitInfo;this.ui=x,this.walletConfig=e===u?f:v;var k=x.conventional.unit;this.feeAssetID=b?b.parentID:e;var w=ft().assets[this.feeAssetID],C=w.unitInfo,S=w.name,F=w.symbol;this.feeUI=C,this.inv={book:0,bookingFees:0,swapFeeReserves:0,cex:0,orderReserves:0,slippageBuffer:0},this.isToken=Boolean(b),Ne.setVis(this.isToken,o.feeTotalBox,o.feeReservesBox,o.feeBalances),Ne.setVis(t,o.slippageBufferBox),Ne.setSrc(s,"[data-logo]",Ne.logoPath(g)),Ne.setText(s,"[data-name]",y),Ne.setText(s,"[data-ticker]",k);var T=C.conventional.unit;if(Ne.setText(s,"[data-fee-ticker]",T),Ne.setText(s,"[data-fee-name]",S),Ne.setSrc(s,"[data-fee-logo]",Ne.logoPath(F)),Ne.setVis(l!==jn,o.cexMinInvBox),Ne.setVis(l!==zn,o.orderReservesBox),this.nSwapFees.setValue(null!==(n=r.swapFeeN)&&void 0!==n?n:50),this.nSwapFeesSlider.setValue(r.swapFeeN/1e3),l!==zn){var D,I=a($e(null!==(D=r.orderReservesFactor)&&void 0!==D?D:1,3),1)[0];this.orderReserves.setValue(I),this.orderReservesSlider.setValue((I-0)/3)}if(l!==jn){this.minTransfer.prec=Math.log10(x.conventional.conversionFactor);var A=ft().mmStatus.cexes[d].markets[h];this.minTransfer.min=(t?A.quoteMinWithdraw:A.baseMinWithdraw)/x.conventional.conversionFactor}this.slippageBuffer.setValue(r.slippageBufferFactor);this.slippageBufferSlider.setValue((r.slippageBufferFactor-0)/.3),this.setupWalletSettings(),this.updateBalances()}},{key:"commit",value:function(){var e=this.inv,t=this.isToken,n=e.book+e.cex+e.orderReserves+e.slippageBuffer;return t||(n+=e.bookingFees+e.swapFeeReserves),n}},{key:"updateInventory",value:function(e,t,n,r,a,o){this.setLotSize(n);var s=this.page,i=this.cfg,c=this.lotSizeConv,l=this.inv,u=this.ui,d=this.feeUI,h=this.isToken,p=this.isQuote,f=this.pg.specs,v=f.cexName,m=f.botType;s.bookLots.textContent=String(e),s.bookLotSize.textContent=Ne.formatFourSigFigs(c),l.book=e*c,s.bookCommitment.textContent=Ne.formatFourSigFigs(l.book);var g=o.bookingFeesPerLot/d.conventional.conversionFactor;if(s.bookingFeesPerLot.textContent=Ne.formatFourSigFigs(g),s.swapReservesFactor.textContent=o.swapReservesFactor.toFixed(2),s.bookingFeesLots.textContent=String(e),l.bookingFees=o.bookingFees/d.conventional.conversionFactor,s.bookingFees.textContent=Ne.formatFourSigFigs(l.bookingFees),v&&(l.cex=a/u.conventional.conversionFactor,s.cexMinInv.textContent=Ne.formatFourSigFigs(l.cex)),m!==zn){var y=Math.max(a,r)/u.conventional.conversionFactor;s.orderReservesBasis.textContent=Ne.formatFourSigFigs(y);var b=y*i.orderReservesFactor;l.orderReserves=b,s.orderReserves.textContent=Ne.formatFourSigFigs(b)}if(h){var x=o.tokenFeesPerSwap/d.conventional.conversionFactor;s.feeReservesPerSwap.textContent=Ne.formatFourSigFigs(x),l.swapFeeReserves=x*i.swapFeeN,s.feeReserves.textContent=Ne.formatFourSigFigs(l.swapFeeReserves)}if(p){var k=l.book+l.cex+l.orderReserves;s.slippageBufferBasis.textContent=Ne.formatCoinValue(k*u.conventional.conversionFactor,u),l.slippageBuffer=k*i.slippageBufferFactor,s.slippageBuffer.textContent=Ne.formatCoinValue(l.slippageBuffer*u.conventional.conversionFactor,u)}if(Ne.setVis(o.bookingFeesPerCounterLot>0,s.redemptionFeesBox),o.bookingFeesPerCounterLot>0){var w=o.bookingFeesPerCounterLot/d.conventional.conversionFactor;s.redemptionFeesPerLot.textContent=Ne.formatFourSigFigs(w),s.redemptionFeesLots.textContent=String(t),s.redeemReservesFactor.textContent=o.redeemReservesFactor.toFixed(2)}this.updateCommitTotal(),this.updateTokenFees(),this.updateRebalance()}},{key:"updateCommitTotal",value:function(){var e=this.page,t=this.assetID,n=this.ui,r=this.commit();e.commitTotal.textContent=Ne.formatCoinValue(Math.round(r*n.conventional.conversionFactor),n),e.commitTotalFiat.textContent=Ne.formatFourSigFigs(r*ft().fiatRatesMap[t])}},{key:"updateTokenFees",value:function(){var e=this.page,t=this.inv,n=this.feeAssetID,r=this.feeUI;if(this.isToken){var a=t.bookingFees+t.swapFeeReserves;e.feeTotal.textContent=Ne.formatCoinValue(a*r.conventional.conversionFactor,r),e.feeTotalFiat.textContent=Ne.formatFourSigFigs(a*ft().fiatRatesMap[n])}}},{key:"updateRebalance",value:function(){var e=this.page,t=this.cfg,n=this.pg,r=n.updatedConfig.cexRebalance,a=n.specs.cexName&&r;if(Ne.setVis(a,e.rebalanceOpts),a){var o=this.commit(),s=[this.minTransfer.min,Math.max(2*this.minTransfer.min,o)],i=s[0],c=s[1]-i;this.minTransfer.setValue(i+t.transferFactor*c),this.minTransferSlider.setValue((t.transferFactor-0)/1)}}},{key:"setupWalletSettings",value:function(){var e=this,t=this.page,n=this.assetID,r=this.walletConfig,o=ft().currentWalletDefinition(n);if(Ne.empty(t.walletSettings),Ne.setVis(!o.multifundingopts,t.walletSettingsNone),o.multifundingopts){var s={},i={},c=function(n){if(!n.quoteAssetOnly||e.isQuote){var o,c,l,u,d=r[n.key];if(n.isboolean){o=t.boolSettingTmpl.cloneNode(!0);var h=Ne.parseTemplate(o);h.name.textContent=n.displayname,h.input.checked="true"===d,Ne.bind(h.input,"change",(function(){r[n.key]=h.input.checked?"true":"false",function(e,t){var n=i[e];if(n){var r,a=Fo(n);try{for(a.s();!(r=a.n()).done;){var o=r.value;Ne.setVis(t,s[o])}}catch(e){a.e(e)}finally{a.f()}}}(n.key,Boolean(h.input.checked))})),n.description&&(h.tooltip.dataset.tooltip=n.description)}else if(n.xyRange){var p=n.xyRange,f=p.start,v=p.end,m=p.xUnit,g=v.x-f.x;o=t.rangeSettingTmpl.cloneNode(!0);var y=Ne.parseTemplate(o);y.name.textContent=n.displayname,n.description&&(y.tooltip.dataset.tooltip=n.description),m?y.unit.textContent=m:Ne.hide(y.unit);var b=new Ye(y.value,{prec:1,changed:function(e){var t=a(et(e,1),2),o=t[0],s=t[1];r[n.key]=s,x.setValue((o-f.x)/g)}}),x=new Ze(y.slider,(function(e){var t=a(et(f.x+e*g,1),2),o=t[0],s=t[1];r[n.key]=s,b.setValue(o)})),k=a(et(tt(d,f.x),3),2),w=k[0],C=k[1];r[n.key]=C,x.setValue((w-f.x)/g),b.setValue(w),y.value.textContent=C}if(!o)return console.error("don't know how to handle opt",n);if(t.walletSettings.appendChild(o),n.dependsOn){c=n.key,l=o,u=n.dependsOn,i[u]||(i[u]=[]),i[u].push(c),s[c]=l;var S=r[n.dependsOn];Ne.setVis("true"===S,o)}}};if(o.multifundingopts&&o.multifundingopts.length>0){var l,u=Fo(o.multifundingopts);try{for(u.s();!(l=u.n()).done;)c(l.value)}catch(e){u.e(e)}finally{u.f()}}ft().bindTooltips(t.walletSettings)}}},{key:"updateBalances",value:function(){var e=this.page,t=this.assetID,n=this.ui,r=this.feeAssetID,a=this.feeUI,o=this.pg,s=o.specs,i=s.cexName,c=s.baseID,l=o.cexBaseBalance,u=o.cexQuoteBalance,d=ft().walletMap[t].balance.available,h=this.pg.runningBotInventory(t),p=d-h.dex.total,f=0;if(Ne.setVis(i,e.balanceBreakdown),i&&(e.dexAvail.textContent=Ne.formatFourSigFigs(p/n.conventional.conversionFactor),f=(t===c?l:u).available-h.cex.total,e.cexAvail.textContent=Ne.formatFourSigFigs(f/n.conventional.conversionFactor)),e.avail.textContent=Ne.formatFourSigFigs((p+f)/n.conventional.conversionFactor),t!==r){var v=ft().walletMap[r].balance.available;e.feeAvail.textContent=Ne.formatFourSigFigs(v/a.conventional.conversionFactor)}}}]),e}();var _o=function(e){g(I,e);var t,n,r,a,o,c,l,u,p,m,x,k,w,C,F,T,D=(F=I,T=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(e){return!1}}(),function(){var e,t=b(F);if(T){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function I(e){var t;i(this,I),h(v(t=D.call(this)),"body",void 0),h(v(t),"forms",void 0),h(v(t),"currentForm",void 0),h(v(t),"page",void 0),h(v(t),"host",void 0),h(v(t),"accountDisabled",void 0),h(v(t),"keyup",void 0),h(v(t),"dexAddrForm",void 0),h(v(t),"bondFeeBufferCache",void 0),h(v(t),"newWalletForm",void 0),h(v(t),"regAssetForm",void 0),h(v(t),"walletWaitForm",void 0),h(v(t),"confirmRegisterForm",void 0),h(v(t),"reputationMeter",void 0),h(v(t),"animation",void 0),h(v(t),"renewToggle",void 0),t.body=e;var n=t.host=e.dataset.host?e.dataset.host:"",r=ft().exchanges[n],a=t.page=Ne.idDescendants(e);t.forms=Ne.applySelector(a.forms,":scope > form"),t.confirmRegisterForm=new mr(a.confirmRegForm,s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.showSuccess(ke(se)),t.renewToggle.setState(t.confirmRegisterForm.tier>0),e.next=4,ft().fetchUser();case 4:ft().updateMenuItemsDisplay();case 5:case"end":return e.stop()}}),e)}))),(function(){t.runAnimation(t.regAssetForm,a.regAssetForm)})),t.confirmRegisterForm.setExchange(r,""),t.walletWaitForm=new yr(a.walletWait,(function(){t.runAnimation(t.confirmRegisterForm,a.confirmRegForm)}),(function(){t.runAnimation(t.regAssetForm,a.regAssetForm)})),t.walletWaitForm.setExchange(r),t.newWalletForm=new pr(a.newWalletForm,(function(e){return t.newWalletCreated(e,t.confirmRegisterForm.tier)}),(function(){return t.runAnimation(t.regAssetForm,a.regAssetForm)})),t.regAssetForm=new gr(a.regAssetForm,function(){var e=s(f().mark((function e(n,r){var o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n!==pt){e.next=6;break}return e.next=3,ft().fetchUser();case 3:return t.updateReputation(),t.showSuccess(ke(se)),e.abrupt("return");case 6:if(o=ft().assets[n],!(s=o.wallet)){e.next=17;break}return i=ft().loading(a.regAssetForm),e.next=12,t.getBondsFeeBuffer(n,a.regAssetForm);case 12:return c=e.sent,t.confirmRegisterForm.setAsset(n,r,c),i(),t.progressTierFormsWithWallet(n,s),e.abrupt("return");case 17:t.confirmRegisterForm.setAsset(n,r,0),t.newWalletForm.setAsset(n),t.showForm(a.newWalletForm);case 20:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),t.regAssetForm.setExchange(r,""),t.reputationMeter=new un(a.repMeter),t.reputationMeter.setHost(n),Ne.bind(a.exportDexBtn,"click",(function(){return t.exportAccount()})),t.accountDisabled="true"===e.dataset.disabled,Ne.bind(a.toggleAccountStatusBtn,"click",(function(){t.accountDisabled?t.toggleAccountStatus(!1):t.prepareAccountDisable(a.disableAccountForm)})),Ne.bind(a.updateCertBtn,"click",(function(){return a.certFileInput.click()})),Ne.bind(a.updateHostBtn,"click",(function(){return t.prepareUpdateHost()})),Ne.bind(a.certFileInput,"change",(function(){return t.onCertFileChange()})),Ne.bind(a.goBackToSettings,"click",(function(){return ft().loadPage("settings")}));var o=function(){t.regAssetForm.setExchange(ft().exchanges[n],""),t.showForm(a.regAssetForm)};Ne.bind(a.changeTier,"click",(function(){o()}));var c=r.auth.targetTier>0;return t.renewToggle=new _e(a.toggleAutoRenew,a.renewErr,c,function(){var e=s(f().mark((function e(n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.accountDisabled){e.next=2;break}return e.abrupt("return");case 2:if(!n){e.next=6;break}o(),e.next=7;break;case 6:return e.abrupt("return",t.disableAutoRenew());case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),Ne.bind(a.autoRenewBox,"click",(function(e){e.stopPropagation(),t.accountDisabled||a.toggleAutoRenew.click()})),a.penaltyCompInput.value=String(r.auth.penaltyComps),Ne.bind(a.penaltyCompBox,"click",(function(e){e.stopPropagation();var n=ft().exchanges[t.host];a.penaltyCompInput.value=String(n.auth.penaltyComps),a.penaltyCompInput.focus()})),Ne.bind(a.penaltyCompInput,"keyup",function(){var e=s(f().mark((function e(n){var r,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(Ne.hide(a.penaltyCompsErr),"Escape"!==n.key){e.next=3;break}return e.abrupt("return");case 3:if("Enter"===n.key){e.next=5;break}return e.abrupt("return");case 5:if(r=parseInt(a.penaltyCompInput.value||""),!isNaN(r)){e.next=10;break}return Ne.show(a.penaltyCompsErr),a.penaltyCompsErr.textContent=ke("INVALID_COMPS_VALUE"),e.abrupt("return");case 10:return o=ft().loading(a.otherBondSettings),e.prev=11,e.next=14,t.updateBondOptions({penaltyComps:r});case 14:o(),e.next=22;break;case 17:e.prev=17,e.t0=e.catch(11),o(),Ne.show(a.penaltyCompsErr),a.penaltyCompsErr.textContent=ke(H,{msg:e.t0.msg});case 22:case"end":return e.stop()}}),e,null,[[11,17]])})));return function(t){return e.apply(this,arguments)}}()),t.dexAddrForm=new xr(a.dexAddrForm,function(){var e=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ft().loadPage("/dexsettings/".concat(t.host));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),t.host),Br(a.disableAccountForm,a.disableAccountConfirm,(function(){return t.toggleAccountStatus(!0)})),Ne.bind(a.forms,"mousedown",(function(e){Ne.mouseInElement(e,t.currentForm)||t.closePopups()})),t.keyup=function(e){"Escape"===e.key&&t.closePopups()},Ne.bind(document,"keyup",t.keyup),Ne.applySelector(a.forms,".form-closer").forEach((function(e){Ne.bind(e,"click",(function(){t.closePopups()}))})),ft().registerNoteFeeder({conn:function(){t.setConnectionStatus()},reputation:function(){t.updateReputation()},feepayment:function(){t.updateReputation()},bondpost:function(){t.updateReputation()}}),t.setConnectionStatus(),t.updateReputation(),t}return d(I,[{key:"unload",value:function(){Ne.unbind(document,"keyup",this.keyup)}},{key:"progressTierFormsWithWallet",value:(C=s(f().mark((function e(t,n){var r,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.page,a=this.confirmRegisterForm.fees,o=ft().assets[t],s=this.regAssetForm.xc.bondAssets,i=s[o.symbol],n.open){e.next=12;break}return c=ft().loading(r.forms),e.next=8,S("/api/openwallet",{assetID:t});case 8:return l=e.sent,c(),ft().checkResponse(l)||(this.regAssetForm.setAssetError("error unlocking wallet: ".concat(l.msg)),this.runAnimation(this.regAssetForm,r.regAssetForm)),e.abrupt("return");case 12:if(!(n.synced&&n.balance.available>=2*i.amount+a)){e.next=15;break}return this.progressTierFormWithSyncedFundedWallet(t),e.abrupt("return");case 15:this.walletWaitForm.setWallet(t,a,this.confirmRegisterForm.tier),this.showForm(r.walletWait);case 17:case"end":return e.stop()}}),e,this)}))),function(e,t){return C.apply(this,arguments)})},{key:"progressTierFormWithSyncedFundedWallet",value:(w=s(f().mark((function e(t){var n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=ft().exchanges[this.host],r=this.confirmRegisterForm.tier,a=this.page,o=n.auth.liveStrength+n.auth.pendingStrength-n.auth.weakStrength,!(r>n.auth.targetTier&&r>o)){e.next=7;break}return this.runAnimation(this.confirmRegisterForm,a.confirmRegForm),e.abrupt("return");case 7:return s=ft().loading(this.body),e.prev=8,e.next=11,this.updateBondOptions({bondAssetID:t,targetTier:r});case 11:s(),e.next=19;break;case 14:return e.prev=14,e.t0=e.catch(8),s(),this.regAssetForm.setTierError(e.t0.msg),e.abrupt("return");case 19:this.showSuccess(ke(se));case 20:case"end":return e.stop()}}),e,this,[[8,14]])}))),function(e){return w.apply(this,arguments)})},{key:"updateReputation",value:function(){var e=this.page,t=ft().exchanges[this.host].auth,n=t.rep.penalties,r=t.targetTier,a=t.expiredBonds,o=dn(t);e.targetTier.textContent=String(r),e.effectiveTier.textContent=String(o),e.penalties.textContent=String(n),e.bondsPendingRefund.textContent="".concat((null==a?void 0:a.length)||0),this.reputationMeter.update()}},{key:"showForm",value:(k=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,this.currentForm=t,this.forms.forEach((function(e){return Ne.hide(e)})),t.style.right="10000px",Ne.show(n.forms,t),r=(n.forms.offsetWidth+t.offsetWidth)/2,e.next=8,Ne.animate(300,(function(e){t.style.right="".concat((1-e)*r,"px")}),"easeOutHard");case 8:t.style.right="0";case 9:case"end":return e.stop()}}),e,this)}))),function(e){return k.apply(this,arguments)})},{key:"runAnimation",value:(x=s(f().mark((function e(t,n){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Ne.hide(this.currentForm),e.next=3,t.animate();case 3:this.currentForm=n,Ne.show(n);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return x.apply(this,arguments)})},{key:"closePopups",value:function(){Ne.hide(this.page.forms),this.animation&&this.animation.stop()}},{key:"showSuccess",value:(m=s(f().mark((function e(t){var n=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.forms.forEach((function(e){return Ne.hide(e)})),this.currentForm=this.page.checkmarkForm,this.animation=Er(this.page,t),e.next=5,this.animation.wait();case 5:this.animation=new We(1500,(function(){}),"",(function(){n.currentForm===n.page.checkmarkForm&&n.closePopups()}));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"exportAccount",value:(p=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,n=this.host,r={host:n},a=ft().loading(this.body),e.next=5,S("/api/exportaccount",r);case 5:if(o=e.sent,a(),ft().checkResponse(o)){e.next=11;break}return t.exportAccountErr.textContent=o.msg,Ne.show(t.exportAccountErr),e.abrupt("return");case 11:o.account.bonds=o.bonds,s=JSON.parse(JSON.stringify(o.account)),(i=document.createElement("a")).setAttribute("download","dcrAccount-"+n+".json"),i.setAttribute("href","data:text/json,"+JSON.stringify(s,null,2)),i.click(),Ne.hide(t.forms);case 18:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"toggleAccountStatus",value:(u=s(f().mark((function e(t){var n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.page,Ne.hide(n.errMsg),r=this.host,t&&(r=n.disableAccountHost.textContent),a={host:r,disable:t},o=ft().loading(this.body),e.next=8,S("/api/toggleaccountstatus",a);case 8:if(s=e.sent,o(),ft().checkResponse(s)){e.next=13;break}return t?(n.disableAccountErr.textContent=s.msg,Ne.show(n.disableAccountErr)):(n.errMsg.textContent=s.msg,Ne.show(n.errMsg)),e.abrupt("return");case 13:return t?(this.page.toggleAccountStatusBtn.textContent=ke("ENABLE_ACCOUNT"),Ne.hide(n.forms)):this.page.toggleAccountStatusBtn.textContent=ke("DISABLE_ACCOUNT"),this.accountDisabled=t,e.next=17,ft().fetchUser();case 17:ft().loadPage("dexsettings/".concat(r));case 18:case"end":return e.stop()}}),e,this)}))),function(e){return u.apply(this,arguments)})},{key:"prepareAccountDisable",value:(l=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(n=this.page).disableAccountHost.textContent=this.host,n.disableAccountErr.textContent="",this.showForm(t);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"getBondsFeeBuffer",value:(c=s(f().mark((function e(t,n){var r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=ft().loading(n),e.next=3,S("/api/bondsfeebuffer",{assetID:t});case 3:if(a=e.sent,r(),ft().checkResponse(a)){e.next=7;break}return e.abrupt("return",0);case 7:return e.abrupt("return",a.feeBuffer);case 8:case"end":return e.stop()}}),e)}))),function(e,t){return c.apply(this,arguments)})},{key:"prepareUpdateHost",value:(o=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.page,this.dexAddrForm.refresh(),this.showForm(t.dexAddrForm);case 3:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"onCertFileChange",value:(a=s(f().mark((function e(){var t,n,r,a,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.page,Ne.hide(t.errMsg),!(n=t.certFileInput.files)||!n.length){e.next=7;break}return e.next=6,n[0].text();case 6:r=e.sent;case 7:if(r){e.next=9;break}return e.abrupt("return");case 9:return a={host:this.host,cert:r},o=ft().loading(this.body),e.next=13,S("/api/updatecert",a);case 13:s=e.sent,o(),ft().checkResponse(s)?(Ne.show(t.updateCertMsg),setTimeout((function(){Ne.hide(t.updateCertMsg)}),5e3)):(t.errMsg.textContent=s.msg,Ne.show(t.errMsg));case 16:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"setConnectionStatus",value:function(){var e=this.page,t=ft().user.exchanges[this.host],n=function(t){t?(Ne.hide(e.disconnectedIcon),Ne.show(e.connectedIcon)):(Ne.show(e.disconnectedIcon),Ne.hide(e.connectedIcon))};if(t)switch(t.connectionStatus){case ut.Connected:n(!0),e.connectionStatus.textContent=ke("CONNECTED");break;case ut.Disconnected:n(!1),this.accountDisabled?e.connectionStatus.textContent=ke("ACCOUNT_DISABLED_MSG"):e.connectionStatus.textContent=ke($);break;case ut.InvalidCert:n(!1),e.connectionStatus.textContent="".concat(ke($)," - ").concat(ke("INVALID_CERTIFICATE"))}}},{key:"disableAutoRenew",value:(r=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=ft().loading(this.page.otherBondSettings),e.prev=1,this.updateBondOptions({targetTier:0}),t(),e.next=10;break;case 6:throw e.prev=6,e.t0=e.catch(1),t(),e.t0;case 10:case"end":return e.stop()}}),e,this,[[1,6]])}))),function(){return r.apply(this,arguments)})},{key:"updateBondOptions",value:(n=s(f().mark((function e(t){var n,r;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.host=this.host,e.next=3,S("/api/updatebondoptions",t);case 3:r=null!==(n=t.targetTier)&&void 0!==n?n:ft().exchanges[this.host].auth.targetTier,this.renewToggle.setState(r>0);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"newWalletCreated",value:(t=s(f().mark((function e(t,n){var r,a,o,s,i,c,l;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.regAssetForm.refresh(),e.next=3,ft().fetchUser();case 3:if(r=e.sent){e.next=6;break}return e.abrupt("return");case 6:return a=this.page,o=r.assets[t],s=o.wallet,i=ft().exchanges[this.host],c=i.bondAssets[o.symbol].amount,e.next=13,this.getBondsFeeBuffer(t,a.newWalletForm);case 13:if(l=e.sent,this.confirmRegisterForm.setFees(t,l),!(s.synced&&s.balance.available>=2*c+l)){e.next=18;break}return this.progressTierFormWithSyncedFundedWallet(t),e.abrupt("return");case 18:return this.walletWaitForm.setWallet(t,l,n),e.next=21,this.showForm(a.walletWait);case 21:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)})}]),I}(lt);var jo=function(e){g(o,e);var t,n,r,a=(n=o,r=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(e){return!1}}(),function(){var e,t=b(n);if(r){var a=b(this).constructor;e=Reflect.construct(t,arguments,a)}else e=t.apply(this,arguments);return y(this,e)});function o(e){var t;i(this,o),h(v(t=a.call(this)),"page",void 0),h(v(t),"base",void 0),h(v(t),"quote",void 0),h(v(t),"host",void 0);var n=t.page=Ne.idDescendants(e);return Ne.cleanTemplates(n.runTableRowTmpl),Ne.bind(n.backButton,"click",(function(){ft().loadPage("mm")})),t.setup(),t}return d(o,[{key:"setup",value:(t=s(f().mark((function e(){var t,n,r,a,o=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T("/api/archivedmmruns");case 2:if(t=e.sent,ft().checkResponse(t)){e.next=6;break}return console.error("failed to get archived mm runs",t),e.abrupt("return");case 6:n=t.runs,r=f().mark((function e(){var t,r,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=n[a],r=t.startTime,s=t.market,i=s.baseID,c=s.quoteID,l=s.host,u=o.page.runTableRowTmpl.cloneNode(!0),(d=Ne.parseTemplate(u)).startTime.textContent=new Date(1e3*r).toLocaleString(),Qn(u,i,c,l),Ne.bind(d.logs,"click",(function(){ft().loadPage("mmlogs",{baseID:i,quoteID:c,host:l,startTime:r,returnPage:"mmarchives"})})),Ne.bind(d.settings,"click",(function(){ft().loadPage("mmsettings",{host:l,baseID:i,quoteID:c})})),o.page.runTableBody.appendChild(u);case 8:case"end":return e.stop()}}),e)})),a=0;case 9:if(!(a<n.length)){e.next=14;break}return e.delegateYield(r(),"t0",11);case 11:a++,e.next=9;break;case 14:case"end":return e.stop()}}),e)}))),function(){return t.apply(this,arguments)})}]),o}(lt);function Ho(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return zo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?zo(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function zo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Go(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var Xo=0,Ko=function(e){g(p,e);var t,n,r,o,c,l,u=(c=p,l=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(e){return!1}}(),function(){var e,t=b(c);if(l){var n=b(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return y(this,e)});function p(e,t){var n,r;i(this,p),h(v(r=u.call(this)),"page",void 0),h(v(r),"mkt",void 0),h(v(r),"startTime",void 0),h(v(r),"fiatRates",void 0),h(v(r),"liveBot",void 0),h(v(r),"overview",void 0),h(v(r),"events",void 0),h(v(r),"forms",void 0),h(v(r),"dexOrderIDCopyListener",void 0),h(v(r),"cexOrderIDCopyListener",void 0),h(v(r),"depositIDCopyListener",void 0),h(v(r),"withdrawalIDCopyListener",void 0),h(v(r),"filters",void 0),h(v(r),"loading",void 0),h(v(r),"refID",void 0),h(v(r),"doneScrolling",void 0),h(v(r),"statsRows",void 0);var a=r.page=Ne.idDescendants(e);if(Xo=ft().user.net,Ne.cleanTemplates(a.eventTableRowTmpl,a.dexOrderTxRowTmpl,a.performanceTableRowTmpl),Ne.bind(r.page.backButton,"click",(function(){var e;ft().loadPage(null!==(e=t.returnPage)&&void 0!==e?e:"mm")})),Ne.bind(r.page.filterButton,"click",(function(){r.applyFilters()})),null!==(n=t)&&void 0!==n&&n.host){var o=new URL(window.location.href);o.searchParams.set("host",t.host),o.searchParams.set("baseID",String(t.baseID)),o.searchParams.set("quoteID",String(t.quoteID)),o.searchParams.set("startTime",String(t.startTime)),window.history.replaceState(function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Go(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Go(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({page:"mmsettings"},t),"",o)}else{var s=new URLSearchParams(window.location.search);t||(t={}),t.host=s.get("host")||"",t.baseID=parseInt(s.get("baseID")||"0"),t.quoteID=parseInt(s.get("quoteID")||"0"),t.startTime=parseInt(s.get("startTime")||"0")}var c=t,l=c.baseID,d=c.quoteID,f=c.host,m=c.startTime;return r.startTime=m,r.forms=new hr(a.forms),r.events={},r.statsRows={},r.mkt={baseID:l,quoteID:d,host:f},Qn(e,l,d,f),Ne.bind(e,"scroll",(function(){r.loading||r.doneScrolling||a.eventsTable.offsetHeight-e.offsetHeight-e.scrollTop<0&&r.nextPage()})),r.setup(f,l,d),r}return d(p,[{key:"nextPage",value:(o=s(f().mark((function e(){var t,n,r,o,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.loading=!0,e.next=3,this.getRunLogs();case 3:t=e.sent,n=a(t,3),r=n[0],o=n[1],s=n[2],i=this.mktAssets(),c=Ho(r),e.prev=10,c.s();case 12:if((l=c.n()).done){e.next=20;break}if(u=l.value,!this.events[u.id]){e.next=16;break}return e.abrupt("continue",18);case 16:d=this.newEventRow(u,!1,i),this.events[u.id]=[u,d];case 18:e.next=12;break;case 20:e.next=25;break;case 22:e.prev=22,e.t0=e.catch(10),c.e(e.t0);case 25:return e.prev=25,c.f(),e.finish(25);case 28:this.populateStats(s.profitLoss,s.endTime),this.updateExistingRows(o),this.loading=!1;case 31:case"end":return e.stop()}}),e,this,[[10,22,25,28]])}))),function(){return o.apply(this,arguments)})},{key:"getRunLogs",value:(r=s(f().mark((function e(){var t,n,r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.mkt,n=this.startTime,r={market:t,startTime:n,n:50,filters:this.filters,refID:this.refID},e.next=4,S("/api/mmrunlogs",r);case 4:return a=e.sent,ft().checkResponse(a)||console.error("failed to get bot logs",a),a.logs.length<=1&&(this.doneScrolling=!0),a.logs.length>0&&(this.refID=a.logs[a.logs.length-1].id),e.abrupt("return",[a.logs,a.updatedLogs||[],a.overview]);case 9:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"applyFilters",value:(n=s(f().mark((function e(){var t,n,r,o,s;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.page,this.filters={dexSells:!!t.dexSellsCheckbox.checked,dexBuys:!!t.dexBuysCheckbox.checked,cexSells:!!t.cexSellsCheckbox.checked,cexBuys:!!t.cexBuysCheckbox.checked,deposits:!!t.depositsCheckbox.checked,withdrawals:!!t.withdrawalsCheckbox.checked},this.refID=void 0,e.next=5,this.getRunLogs();case 5:n=e.sent,r=a(n,3),o=r[0],s=r[2],this.populateTable(o),this.populateStats(s.profitLoss,s.endTime);case 11:case"end":return e.stop()}}),e,this)}))),function(){return n.apply(this,arguments)})},{key:"setFilters",value:function(){var e=this.page;e.dexSellsCheckbox.checked=!0,e.dexBuysCheckbox.checked=!0,e.cexSellsCheckbox.checked=!0,e.cexBuysCheckbox.checked=!0,e.depositsCheckbox.checked=!0,e.withdrawalsCheckbox.checked=!0,this.filters={dexSells:!0,dexBuys:!0,cexSells:!0,cexBuys:!0,deposits:!0,withdrawals:!0}}},{key:"setup",value:(t=s(f().mark((function e(t,n,r){var o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,k,w=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=this.page,this.setFilters(),i=this.startTime,l=0,u=tr(t,n,r),e.next=7,this.getRunLogs();case 7:d=e.sent,h=a(d,3),p=h[0],v=h[2],(null==u||null===(o=u.runStats)||void 0===o?void 0:o.startTime)===i?(this.liveBot=!0,this.fiatRates=ft().fiatRatesMap,c=u.runStats.profitLoss):(this.fiatRates=v.finalState.fiatRates,c=v.profitLoss,l=v.endTime),this.populateStats(c,l),m=this.mktAssets(),g=s.sumUSDHeader.parentElement,y=Ho(m);try{for(y.s();!(b=y.n()).done;)x=b.value,(k=document.createElement("th")).textContent="".concat(x.symbol.toUpperCase()," Delta"),g&&g.insertBefore(k,s.sumUSDHeader)}catch(e){y.e(e)}finally{y.f()}this.populateTable(p),ft().registerNoteFeeder({runevent:function(e){w.handleRunEventNote(e)},runstats:function(e){w.handleRunStatsNote(e)}});case 19:case"end":return e.stop()}}),e,this)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"handleRunEventNote",value:function(e){var t=this.mkt,n=t.baseID,r=t.quoteID,a=t.host;if(e.host===a&&e.baseID===n&&e.quoteID===r&&(o=e.event,s=this.filters,o.dexOrderEvent?o.dexOrderEvent.sell?s.dexSells:s.dexBuys:o.cexOrderEvent?o.cexOrderEvent.sell?s.cexSells:s.cexBuys:o.depositEvent?s.deposits:o.withdrawalEvent&&s.withdrawals)){var o,s,i=e.event,c=this.events[i.id];if(c)return this.setRowContents(c[1],i,this.mktAssets()),void(c[0]=i);var l=this.newEventRow(i,!0,this.mktAssets());this.events[i.id]=[i,l]}}},{key:"handleRunStatsNote",value:function(e){var t=this.mkt,n=t.baseID,r=t.quoteID,a=t.host,o=this.startTime;e.host===a&&e.baseID===n&&e.quoteID===r&&e.stats&&e.stats.startTime===o&&this.populateStats(e.stats.profitLoss,0)}},{key:"populateStats",value:function(e,t){var n=this.page;for(var r in n.startTime.textContent=new Date(1e3*this.startTime).toLocaleString(),0===t?Ne.hide(n.endTimeRow):n.endTime.textContent=new Date(1e3*t).toLocaleString(),e.diffs){var a=ft().assets[parseInt(r)],o=this.statsRows[r];if(!o){o=n.performanceTableRowTmpl.cloneNode(!0);var s=Ne.parseTemplate(o);s.logo.src=Ne.logoPath(a.symbol),s.ticker.textContent=a.symbol.toUpperCase(),this.statsRows[r]=o,n.performanceTableBody.appendChild(o)}var i=e.diffs[r],c=Ne.parseTemplate(o);c.diff.textContent=i.fmt,c.usdDiff.textContent=i.fmtUSD,c.fiatRate.textContent="".concat(Ne.formatFiatValue(this.fiatRates[a.id])," USD")}n.profitLoss.textContent="".concat(Ne.formatFiatValue(e.profit)," USD")}},{key:"mktAssets",value:function(){var e,t=ft().assets[this.mkt.baseID],n=ft().assets[this.mkt.quoteID],r=[t,n],a=(h(e={},t.id,!0),h(e,n.id,!0),e);if(t.token&&!a[t.token.parentID]){var o=ft().assets[t.token.parentID];a[o.id]=!0,r.push(o)}if(n.token&&!a[n.token.parentID]){var s=ft().assets[n.token.parentID];r.push(s)}return r}},{key:"updateExistingRows",value:function(e){var t,n=Ho(e);try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this.events[r.id];a&&(this.setRowContents(a[1],r,this.mktAssets()),a[0]=r)}}catch(e){n.e(e)}finally{n.f()}}},{key:"populateTable",value:function(e){var t=this.page;Ne.empty(t.eventsTableBody),this.events={},this.doneScrolling=!1;var n,r=this.mktAssets(),a=Ho(e);try{for(a.s();!(n=a.n()).done;){var o=n.value,s=this.newEventRow(o,!1,r);this.events[o.id]=[o,s]}}catch(e){a.e(e)}finally{a.f()}}},{key:"setRowContents",value:function(e,t,n){var r,a=this,o=Ne.parseTemplate(e);o.time.textContent=new Date(1e3*t.timestamp).toLocaleString(),o.eventType.textContent=this.eventType(t),t.depositEvent?r=t.depositEvent.transaction.id:t.withdrawalEvent?r=t.withdrawalEvent.id:t.dexOrderEvent?r=t.dexOrderEvent.id:t.cexOrderEvent&&(r=t.cexOrderEvent.id),r&&(o.eventID.textContent=Qo(r,30),o.eventID.setAttribute("title",r));var s,i=0,c=Ho(n);try{for(c.s();!(s=c.n()).done;){var l,u=s.value,d=t.balanceEffects,h=Yo(u.id,d),p="sum".concat(u.symbol.toUpperCase()),f=void 0;if(o[p])f=o[p];else{(f=document.createElement("td")).dataset.tmpl=p;var v=o.sumUSD.parentElement;v&&v.insertBefore(f,o.sumUSD)}f.textContent=Ne.formatCoinValue(h,u.unitInfo),i+=null!==(l=h/u.unitInfo.conventional.conversionFactor*this.fiatRates[u.id])&&void 0!==l?l:0}}catch(e){c.e(e)}finally{c.f()}o.sumUSD.textContent=Ne.formatFourSigFigs(i),Ne.bind(o.details,"click",(function(){a.showEventDetails(t.id)}))}},{key:"newEventRow",value:function(e,t,n){var r=this.page,a=r.eventTableRowTmpl.cloneNode(!0);return a.id=e.id.toString(),this.setRowContents(a,e,n),t?r.eventsTableBody.insertBefore(a,r.eventsTableBody.firstChild):r.eventsTableBody.appendChild(a),a}},{key:"eventType",value:function(e){return e.depositEvent?"Deposit":e.withdrawalEvent?"Withdrawal":e.dexOrderEvent?e.dexOrderEvent.sell?"DEX Sell":"DEX Buy":e.cexOrderEvent?e.cexOrderEvent.sell?"CEX Sell":"CEX Buy":""}},{key:"showDexOrderEventDetails",value:function(e){var t=this.page,n=this.mkt,r=n.baseID,a=n.quoteID,o=ft().assets[r],s=ft().assets[a],i=[o.unitInfo,s.unitInfo],c=i[0],l=i[1],u=[c.conventional.unit,l.conventional.unit],d=u[0],h=u[1];void 0!==this.dexOrderIDCopyListener&&t.copyDexOrderID.removeEventListener("click",this.dexOrderIDCopyListener),this.dexOrderIDCopyListener=function(){rt(e.id,t.dexOrderID,t.copyDexOrderID,"#1e7d11")},t.copyDexOrderID.addEventListener("click",this.dexOrderIDCopyListener),t.dexOrderID.textContent=Qo(e.id,20),t.dexOrderID.setAttribute("title",e.id);var p=ft().conventionalRate(r,a,e.rate);t.dexOrderRate.textContent="".concat(p," ").concat(d,"/").concat(h),t.dexOrderQty.textContent="".concat(e.qty/c.conventional.conversionFactor," ").concat(d),e.sell?t.dexOrderSide.textContent=ke(B):t.dexOrderSide.textContent=ke(E),Ne.empty(t.dexOrderTxsTableBody),Ne.setVis(e.transactions&&e.transactions.length>0,t.dexOrderTxsTable);for(var f=function(e,t){switch(e){case 3:case 5:case 6:return t?o:s;case 4:return t?s:o}},v=0;e.transactions&&v<e.transactions.length;v++){var m=e.transactions[v],g=t.dexOrderTxRowTmpl.cloneNode(!0),y=Ne.parseTemplate(g);y.id.textContent=Qo(m.id,20),y.id.setAttribute("title",m.id),y.type.textContent=Xr(m.type);var b=f(m.type,e.sell);if(b){var x=En[b.id];x&&x[Xo]&&(y.explorerLink.href=x[Xo](m.id)),y.amt.textContent="".concat(Ne.formatCoinValue(m.amount,b.unitInfo)," ").concat(b.unitInfo.conventional.unit.toLowerCase()),y.fees.textContent="".concat(Ne.formatCoinValue(m.fees,b.unitInfo)," ").concat(b.unitInfo.conventional.unit.toLowerCase()),t.dexOrderTxsTableBody.appendChild(g)}else console.error("unexpected tx type in dex order event",m.type)}this.forms.show(t.dexOrderDetailsForm)}},{key:"showCexOrderEventDetails",value:function(e){var t=this.page,n=this.mkt,r=n.baseID,a=n.quoteID,o=ft().assets[r],s=ft().assets[a],i=[o.unitInfo,s.unitInfo],c=i[0],l=i[1],u=[c.conventional.unit,l.conventional.unit],d=u[0],h=u[1];t.cexOrderID.textContent=Qo(e.id,20),void 0!==this.cexOrderIDCopyListener&&t.copyCexOrderID.removeEventListener("click",this.cexOrderIDCopyListener),this.cexOrderIDCopyListener=function(){rt(e.id,t.cexOrderID,t.copyCexOrderID,"#1e7d11")},t.copyCexOrderID.addEventListener("click",this.cexOrderIDCopyListener),t.cexOrderID.setAttribute("title",e.id);var p=ft().conventionalRate(r,a,e.rate);t.cexOrderRate.textContent="".concat(p," ").concat(d,"/").concat(h),t.cexOrderQty.textContent="".concat(e.qty/c.conventional.conversionFactor," ").concat(d),e.sell?t.cexOrderSide.textContent=ke(B):t.cexOrderSide.textContent=ke(E),t.cexOrderBaseFilled.textContent="".concat(e.baseFilled/c.conventional.conversionFactor," ").concat(d),t.cexOrderQuoteFilled.textContent="".concat(e.quoteFilled/l.conventional.conversionFactor," ").concat(h),this.forms.show(t.cexOrderDetailsForm)}},{key:"showDepositEventDetails",value:function(e,t){var n=this.page;n.depositID.textContent=Qo(e.transaction.id,20),void 0!==this.depositIDCopyListener&&n.copyDepositID.removeEventListener("click",this.depositIDCopyListener),this.depositIDCopyListener=function(){rt(e.transaction.id,n.depositID,n.copyDepositID,"#1e7d11")},n.copyDepositID.addEventListener("click",this.depositIDCopyListener),n.depositID.setAttribute("title",e.transaction.id);var r=ft().assets[e.assetID].unitInfo,a=r.conventional.unit;n.depositAmt.textContent="".concat(Ne.formatCoinValue(e.transaction.amount,r)," ").concat(a),n.depositFees.textContent="".concat(Ne.formatCoinValue(e.transaction.fees,r)," ").concat(a),n.depositStatus.textContent=ke(t?me:ge),Ne.setVis(!t,n.depositCreditSection),t||(n.depositCredit.textContent="".concat(Ne.formatCoinValue(e.cexCredit,r)," ").concat(a)),this.forms.show(n.depositDetailsForm)}},{key:"showWithdrawalEventDetails",value:function(e,t){var n=this.page;n.withdrawalID.textContent=Qo(e.id,20),void 0!==this.withdrawalIDCopyListener&&n.copyWithdrawalID.removeEventListener("click",this.withdrawalIDCopyListener),this.withdrawalIDCopyListener=function(){rt(e.id,n.withdrawalID,n.copyWithdrawalID,"#1e7d11")},n.copyWithdrawalID.addEventListener("click",this.withdrawalIDCopyListener),n.withdrawalID.setAttribute("title",e.id);var r=ft().assets[e.assetID].unitInfo,a=r.conventional.unit;n.withdrawalAmt.textContent="".concat(Ne.formatCoinValue(e.cexDebit,r)," ").concat(a),n.withdrawalStatus.textContent=ke(t?me:ge),e.transaction&&(n.withdrawalTxID.textContent=Qo(e.transaction.id,20),n.withdrawalTxID.setAttribute("title",e.transaction.id),n.withdrawalReceived.textContent="".concat(Ne.formatCoinValue(e.transaction.amount,r)," ").concat(a)),this.forms.show(n.withdrawalDetailsForm)}},{key:"showEventDetails",value:function(e){var t=a(this.events[e],1)[0];t.dexOrderEvent&&this.showDexOrderEventDetails(t.dexOrderEvent),t.cexOrderEvent&&this.showCexOrderEventDetails(t.cexOrderEvent),t.depositEvent&&this.showDepositEventDetails(t.depositEvent,t.pending),t.withdrawalEvent&&this.showWithdrawalEventDetails(t.withdrawalEvent,t.pending)}}]),p}(lt);function Qo(e,t){return e.length<=t?e:"".concat(e.substring(0,t/2),"...").concat(e.substring(e.length-t/2))}function Yo(e,t){var n=0;return t.settled[e]&&(n+=t.settled[e]),t.pending[e]&&(n+=t.pending[e]),t.locked[e]&&(n+=t.locked[e]),t.reserved[e]&&(n+=t.reserved[e]),n}function Jo(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Zo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Zo(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Zo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var $o,es=function(e){g(o,e);var t,n,r,a=(n=o,r=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(e){return!1}}(),function(){var e,t=b(n);if(r){var a=b(this).constructor;e=Reflect.construct(t,arguments,a)}else e=t.apply(this,arguments);return y(this,e)});function o(e){var t;i(this,o),h(v(t=a.call(this)),"body",void 0),h(v(t),"page",void 0),h(v(t),"initForm",void 0),h(v(t),"quickConfigForm",void 0),h(v(t),"seedBackupForm",void 0),h(v(t),"mnemonic",void 0),t.body=e;var n=t.page=Ne.idDescendants(e);return t.initForm=new ts(n.appPWForm,(function(e,n,r){t.appInited(e,n,r)})),t.quickConfigForm=new rs(n.quickConfigForm,(function(){return t.quickConfigDone()})),t.seedBackupForm=new as(n.seedBackupForm,(function(){return t.seedBackedUp()})),t}return d(o,[{key:"appInited",value:(t=s(f().mark((function e(t,n,r){var a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.mnemonic=r,a=this.page,e.next=4,this.quickConfigForm.update(t,n);case 4:r&&this.seedBackupForm.update(r),Ar(a.appPWForm,a.quickConfigForm);case 6:case"end":return e.stop()}}),e,this)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"quickConfigDone",value:function(){this.mnemonic?Ar(this.page.quickConfigForm,this.page.seedBackupForm):ft().loadPage("wallets")}},{key:"seedBackedUp",value:function(){ft().loadPage("wallets")}}]),o}(lt),ts=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"success",void 0),this.form=t,this.success=n;var a=this.page=Ne.idDescendants(t);Br(t,a.appPWSubmit,(function(){return r.setAppPass()})),Br(t,a.toggleSeedInput,(function(){Ne.isHidden(a.seedInputBox)?(a.toggleSeedInputIcon.classList.remove("ico-plus"),a.toggleSeedInputIcon.classList.add("ico-minus"),Ne.show(a.seedInputBox)):(a.toggleSeedInputIcon.classList.remove("ico-minus"),a.toggleSeedInputIcon.classList.add("ico-plus"),Ne.hide(a.seedInputBox))}))}var t;return d(e,[{key:"setAppPass",value:(t=s(f().mark((function e(){var t,n,r,a,o,s,i;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.page,Ne.hide(n.appPWErrMsg),r=n.appPW.value||"",a=n.appPWAgain.value,""!==r){e.next=8;break}return n.appPWErrMsg.textContent=ke(R),Ne.show(n.appPWErrMsg),e.abrupt("return");case 8:if(r===a){e.next=12;break}return n.appPWErrMsg.textContent=ke(N),Ne.show(n.appPWErrMsg),e.abrupt("return");case 12:return n.appPW.value="",n.appPWAgain.value="",o=ft().loading(this.form),s=null!==(t=n.seedInput.value)&&void 0!==t?t:"",e.next=18,S("/api/init",{pass:r,seed:s});case 18:if(i=e.sent,o(),ft().checkResponse(i)){e.next=24;break}return n.appPWErrMsg.textContent=i.msg,Ne.show(n.appPWErrMsg),e.abrupt("return");case 24:this.success(r,i.hosts,i.mnemonic);case 25:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),ns=0,rs=function(){function e(t,n){var r=this;i(this,e),h(this,"page",void 0),h(this,"form",void 0),h(this,"servers",void 0),h(this,"wallets",void 0),h(this,"pw",void 0),h(this,"success",void 0),this.form=t,this.success=n;var a=this.page=Ne.idDescendants(t);Ne.cleanTemplates(a.qcServerTmpl,a.qcWalletTmpl),Br(t,a.quickConfigSubmit,(function(){r.submit()})),Br(t,a.qcErrAck,(function(){r.success()}))}var t,n;return d(e,[{key:"update",value:(n=s(f().mark((function e(t,n){var r,a,o,s,i,c,l,u,d,h,p,v,m,g,y,b,x,k,w;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.pw=t,r=this.page,this.servers=[],a=Jo(n);try{for(a.s();!(o=a.n()).done;)s=o.value,i=r.qcServerTmpl.cloneNode(!0),r.qcServersBox.appendChild(i),c=Ne.parseTemplate(i),ns++,l="qcsrow".concat(ns),i.htmlFor=l,c.checkbox.id=l,c.host.textContent=s,this.servers.push({host:s,checkbox:c.checkbox})}catch(e){a.e(e)}finally{a.f()}return e.next=7,ft().fetchUser();case 7:u=e.sent,this.wallets=[],d=0,h=Object.values(u.assets);case 10:if(!(d<h.length)){e.next=52;break}if(!(p=h[d]).token){e.next=14;break}return e.abrupt("continue",49);case 14:v=p.info,m=null,g=Jo(v.availablewallets),e.prev=17,g.s();case 19:if((y=g.n()).done){e.next=29;break}if((b=y.value).seeded){e.next=23;break}return e.abrupt("continue",27);case 23:if(!b.configopts||!b.configopts.some((function(e){return e.required}))){e.next=25;break}return e.abrupt("continue",27);case 25:return m=b,e.abrupt("break",29);case 27:e.next=19;break;case 29:e.next=34;break;case 31:e.prev=31,e.t0=e.catch(17),g.e(e.t0);case 34:return e.prev=34,g.f(),e.finish(34);case 37:if(m){e.next=39;break}return e.abrupt("continue",49);case 39:x=r.qcWalletTmpl.cloneNode(!0),r.qcWalletsBox.appendChild(x),k=Ne.parseTemplate(x),ns++,w="qcwrow".concat(ns),x.htmlFor=w,k.checkbox.id=w,k.icon.src=Ne.logoPath(p.symbol),k.name.textContent=p.name,this.wallets.push({asset:p,type:m.type,checkbox:k.checkbox});case 49:d++,e.next=10;break;case 52:case"end":return e.stop()}}),e,this,[[17,31,34,37]])}))),function(e,t){return n.apply(this,arguments)})},{key:"submit",value:(t=s(f().mark((function e(){var t,n,r,a,o,i,c,l,u,d,h,p,v=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[],n=[],(r=new Yt(this.form,{backgroundColor:!0,message:"..."})).opts.message=ke("ADDING_SERVER"),a=function(){var e=s(f().mark((function e(n){var r,a;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.checkbox.checked){e.next=2;break}return e.abrupt("return");case 2:return r={addr:n.host,appPW:v.pw},e.next=5,S("/api/adddex",r);case 5:a=e.sent,ft().checkResponse(a)||t.push(n.host);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),e.next=6,Promise.all(this.servers.map(a));case 6:return r.opts.message=ke("CREATING_WALLETS"),o=function(){var e=s(f().mark((function e(t){var r,a,o,s,i,c,l,u,d,h;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.asset,o=t.type,t.checkbox.checked){e.next=3;break}return e.abrupt("return");case 3:s={},i=ft().walletDefinition(a.id,o),c=Jo(null!==(r=i.configopts)&&void 0!==r?r:[]),e.prev=6,c.s();case 8:if((l=c.n()).done){e.next=18;break}if((u=l.value).default){e.next=12;break}return e.abrupt("continue",16);case 12:if(!u.isboolean){e.next=15;break}return s[u.key]=u.default?"1":"0",e.abrupt("continue",16);case 15:u.repeatable&&s[u.key]?s[u.key]+=u.repeatable+u.default:s[u.key]=String(u.default);case 16:e.next=8;break;case 18:e.next=23;break;case 20:e.prev=20,e.t0=e.catch(6),c.e(e.t0);case 23:return e.prev=23,c.f(),e.finish(23);case 26:return d={assetID:a.id,appPass:v.pw,config:s,walletType:o},e.next=29,S("/api/newwallet",d);case 29:h=e.sent,ft().checkResponse(h)||n.push(a.name);case 31:case"end":return e.stop()}}),e,null,[[6,20,23,26]])})));return function(t){return e.apply(this,arguments)}}(),e.next=10,Promise.all(this.wallets.map(o));case 10:return r.stop(),e.next=13,ft().fetchUser();case 13:if(n.length+t.length!==0){e.next=15;break}return e.abrupt("return",this.success());case 15:if(i=this.page,Ne.hide(i.qcChoices),Ne.show(i.qcErrors),t.length){c=Jo(t);try{for(c.s();!(l=c.n()).done;)u=l.value,i.qcServerErrorList.appendChild(document.createTextNode(u)),i.qcServerErrorList.appendChild(document.createElement("br"))}catch(e){c.e(e)}finally{c.f()}}else Ne.hide(i.qcServerErrors);if(n.length){d=Jo(n);try{for(d.s();!(h=d.n()).done;)p=h.value,i.qcWalletErrorList.appendChild(document.createTextNode(p)),i.qcWalletErrorList.appendChild(document.createElement("br"))}catch(e){d.e(e)}finally{d.f()}}else Ne.hide(i.qcWalletErrors);case 20:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),as=function(){function e(t,n){var r=this;i(this,e),h(this,"form",void 0),h(this,"page",void 0),h(this,"mnemonic",void 0),this.form=t;var a=this.page=Ne.idDescendants(t);Br(t,a.seedAck,(function(){return n()})),Br(t,a.showSeed,(function(){return r.showSeed()}))}return d(e,[{key:"update",value:function(e){this.mnemonic=e}},{key:"showSeed",value:function(){var e=this.page;e.mnemonic.textContent=this.mnemonic,Ne.hide(e.sbWanna),Ne.show(e.sbSeed)}}]),e}();function os(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ss(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?os(Object(n),!0).forEach((function(t){h(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):os(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function is(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return cs(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?cs(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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 o,s=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function cs(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var ls=Ne.idel,us=Ne.bind,ds=Ne.unbind,hs={login:qr,register:Mr,markets:Ha,wallets:Zr,settings:xa,orders:ao,order:lo,dexsettings:_o,init:es,mm:ko,mmsettings:qo,mmarchives:jo,mmlogs:Ko},ps={"en-US":{name:"English",flag:"πΊπΈ"},"pt-BR":{name:"Portugese",flag:"π§π·"},"zh-CN":{name:"Chinese",flag:"π¨π³"},"pl-PL":{name:"Polish",flag:"π΅π±"},"de-DE":{name:"German",flag:"π©πͺ"},ar:{name:"Arabic",flag:"πͺπ¬"}},fs=function(){function e(){var t=this;i(this,e),h(this,"notes",void 0),h(this,"pokes",void 0),h(this,"langs",void 0),h(this,"lang",void 0),h(this,"mmStatus",void 0),h(this,"inited",void 0),h(this,"authed",void 0),h(this,"user",void 0),h(this,"seedGenTime",void 0),h(this,"commitHash",void 0),h(this,"showPopups",void 0),h(this,"loggers",void 0),h(this,"recorders",void 0),h(this,"main",void 0),h(this,"header",void 0),h(this,"headerSpace",void 0),h(this,"assets",void 0),h(this,"exchanges",void 0),h(this,"walletMap",void 0),h(this,"fiatRatesMap",void 0),h(this,"tooltip",void 0),h(this,"page",void 0),h(this,"loadedPage",void 0),h(this,"popupNotes",void 0),h(this,"popupTmpl",void 0),h(this,"noteReceivers",void 0),h(this,"txHistoryMap",void 0),h(this,"requiredActions",void 0),this.notes=[],this.pokes=[],this.seedGenTime=0,this.commitHash="e65d4adb63fcdaab8f5a03a3bcea2ed984718e46",this.noteReceivers=[],this.fiatRatesMap={},this.showPopups="1"===k.fetchLocal(k.popupsLK),this.txHistoryMap={},this.requiredActions={},console.log("Bison Wallet, Build",this.commitHash.substring(0,7)),k.isDark()&&document.body.classList.add("dark"),this.loggers=k.fetchLocal(k.loggersLK)||{},window.enableLogger=function(e,n){return n?t.loggers[e]=!0:delete t.loggers[e],k.storeLocal(k.loggersLK,t.loggers),"".concat(e," logger ").concat(n?"enabled":"disabled")},window.log=function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];t.log.apply(t,[e].concat(r))},window.mmStatus=function(){return t.mmStatus};var n=k.fetchLocal(k.recordersLK)||[];this.recorders={};var r,a=is(n);try{for(a.s();!(r=a.n()).done;){var o=r.value;console.log("recording",o),this.recorders[o]=[]}}catch(e){a.e(e)}finally{a.f()}window.recordLogger=function(e,n){return n?t.recorders[e]=[]:delete t.recorders[e],k.storeLocal(k.recordersLK,Object.keys(t.recorders)),"".concat(e," recorder ").concat(n?"enabled":"disabled")},window.dumpLogger=function(e){var n=t.recorders[e];if(!n)return"no recorder for logger ".concat(e);var r=document.createElement("a");r.href="data:application/octet-stream;base64,".concat(window.btoa(JSON.stringify(n,null,4))),r.download="".concat(e,".json"),document.body.appendChild(r),r.click(),setTimeout((function(){document.body.removeChild(r)}),0)},window.user=function(){return t.user}}var t,n,o,c,l,u,p,v,m,g,y;return d(e,[{key:"start",value:(y=s(f().mark((function e(){var t,n,r=this;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return us(window,"popstate",(function(e){var t,n=null===(t=e.state)||void 0===t?void 0:t.page;(n||""===n)&&r.loadPage(n,e.state.data,!0)})),this.main=ls(document,"main"),t=this.main.dataset.handler,e.next=5,this.fetchUser();case 5:return e.next=8,be(this.lang,this.commitHash,!1);case 8:if(ms((n=new URL(window.location.href)).pathname)!==t&&(n.pathname="/".concat(t),n.search="",window.history.replaceState({page:t},"",n)),this.attachHeader(),this.attachActions(),this.attachCommon(this.header),this.attach({}),!this.authed){e.next=17;break}return e.next=17,this.fetchNotes();case 17:this.updateMenuItemsDisplay(),fa(),Ta.connect((void 0,a="https:"===window.location.protocol?"wss":"ws","".concat(a,"://").concat(window.location.host,"/ws")),(function(){return r.reconnected()})),Ta.registerRoute("notify",(function(e){r.notify(e)}));case 21:case"end":return e.stop()}var a}),e,this)}))),function(){return y.apply(this,arguments)})},{key:"reconnected",value:function(){var e;"settings"===(null===(e=this.main)||void 0===e?void 0:e.dataset.handler)?window.location.assign("/"):window.location.reload()}},{key:"fetchUser",value:(g=s(f().mark((function e(){var t,n,r,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T("/api/user");case 2:if(t=e.sent,this.checkResponse(t)){e.next=5;break}return e.abrupt("return");case 5:if(this.inited=t.inited,this.authed=Boolean(t.user),this.lang=t.lang,this.langs=t.langs,this.mmStatus=t.mmStatus,t.user){e.next=12;break}return e.abrupt("return");case 12:for(n=t.user,this.seedGenTime=n.seedgentime,this.user=n,this.assets=n.assets,this.exchanges=n.exchanges,this.walletMap={},this.fiatRatesMap=n.fiatRates,r=0,o=Object.entries(n.assets);r<o.length;r++)s=a(o[r],2),i=s[0],(c=s[1]).wallet&&(this.walletMap[i]=c.wallet);return this.updateMenuItemsDisplay(),e.abrupt("return",n);case 22:case"end":return e.stop()}}),e,this)}))),function(){return g.apply(this,arguments)})},{key:"fetchMMStatus",value:(m=s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Xn.status();case 2:this.mmStatus=e.sent;case 3:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"loadPage",value:(v=s(f().mark((function e(t,n,r){var a,o,s,i,c,l,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.tooltip.style.left="-10000px",Ne.hide(this.page.noteBox,this.page.profileBox),a=new URL("/".concat(t),window.location.origin),o=ms(t),e.next=6,window.fetch(a.toString());case 6:if((s=e.sent).ok){e.next=9;break}return e.abrupt("return",!1);case 9:return e.next=11,s.text();case 11:return i=e.sent,c=Ne.noderize(i),l=ls(c,"main"),u=l.dataset.handler,r||(d=u===o?a.toString():"/".concat(u),window.history.pushState({page:t,data:n},"",d)),document.title=c.title,this.main.replaceWith(l),this.main=l,this.noteReceivers=[],Ne.empty(this.headerSpace),this.attach(n),e.abrupt("return",!0);case 23:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return v.apply(this,arguments)})},{key:"attach",value:function(e){var t=this.main.dataset.handler;if(t){this.attachCommon(this.main),this.loadedPage&&this.loadedPage.unload();var n=hs[t];this.loadedPage=n?new n(this.main,e):null,this.bindTooltips(this.main),window.isWebview&&this.bindUrlHandlers(this.main),this.bindUnits(this.main)}else console.error("cannot attach to content with no specified handler")}},{key:"bindTooltips",value:function(e){var t=this;e.querySelectorAll("[data-tooltip]").forEach((function(e){us(e,"mouseenter",(function(){t.tooltip.textContent=e.dataset.tooltip||"";var n=Ne.layoutMetrics(e),r=n.centerX-t.tooltip.offsetWidth/2;r<0&&(r=5),r+t.tooltip.offsetWidth>document.body.offsetWidth&&(r=document.body.offsetWidth-t.tooltip.offsetWidth-5),t.tooltip.style.left="".concat(r,"px"),t.tooltip.style.top="".concat(n.bodyTop-t.tooltip.offsetHeight-5,"px")})),us(e,"mouseleave",(function(){t.tooltip.style.left="-10000px"}))}))}},{key:"bindUnits",value:function(e){var t=this,n=document.createElement("div");n.classList.add("position-absolute","p-3");var r=document.createElement("div");n.appendChild(r),r.classList.add("body-bg","border");var a,o=function(e,t,n){var a=Ne.safeSelector(e,"[data-unit-box]"),o=parseInt(a.dataset.atoms),s=document.createElement("div");s.textContent=t,r.appendChild(s),s.classList.add("p-2","hoverbg","pointer"),Ne.bind(s,"click",(function(){Ne.setText(e,"[data-value]",Ne.formatFourSigFigs(o/n,Math.round(Math.log10(n)))),Ne.setText(e,"[data-unit]",t)}))},s=is(Ne.applySelector(e,"[data-conversion-value]"));try{var i=function(){var e=a.value,s=Ne.safeSelector(e,"[data-unit-box]");Ne.bind(s,"mouseenter",(function(){Ne.empty(r),s.appendChild(n);var a=Ne.layoutMetrics(s),i=parseInt(s.dataset.assetID),c=t.assets[i].unitInfo;o(e,c.conventional.unit,c.conventional.conversionFactor);var l,u=is(c.denominations);try{for(u.s();!(l=u.n()).done;){var d=l.value,h=d.unit,p=d.conversionFactor;o(e,h,p)}}catch(e){u.e(e)}finally{u.f()}o(e,c.atomicUnit,1),a.bodyTop>n.offsetHeight+t.header.offsetHeight?(n.style.bottom="calc(100% - 1rem)",n.style.top="auto"):(n.style.top="calc(100% - 1rem)",n.style.bottom="auto")})),Ne.bind(s,"mouseleave",(function(){return n.remove()}))};for(s.s();!(a=s.n()).done;)i()}catch(e){s.e(e)}finally{s.f()}}},{key:"bindUrlHandlers",value:function(e){if(window.openUrl){var t,n=is(Ne.applySelector(e,"a[target=_blank]"));try{var r=function(){var e=t.value;Ne.bind(e,"click",(function(t){var n;t.preventDefault(),window.openUrl(null!==(n=e.href)&&void 0!==n?n:"")}))};for(n.s();!(t=n.n()).done;)r()}catch(e){n.e(e)}finally{n.f()}}}},{key:"attachHeader",value:function(){var e=this;this.header=ls(document.body,"header");var t=this.page=Ne.idDescendants(this.header);this.headerSpace=t.headerSpace,this.popupNotes=ls(document.body,"popupNotes"),this.popupTmpl=Ne.tmplElement(this.popupNotes,"note"),this.popupTmpl?this.popupTmpl.remove():console.error("popupTmpl element not found"),this.tooltip=ls(document.body,"tooltip"),t.noteTmpl.removeAttribute("id"),t.noteTmpl.remove(),t.pokeTmpl.removeAttribute("id"),t.pokeTmpl.remove(),t.loader.remove(),Ne.show(t.loader),us(t.noteBell,"click",s(f().mark((function n(){var r,a,o;return f().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:Ne.hide(t.pokeList),Ne.show(t.noteList),e.ackNotes(),t.noteCat.classList.add("active"),t.pokeCat.classList.remove("active"),e.showDropdown(t.noteBell,t.noteBox),Ne.hide(t.noteIndicator),r=is(e.notes);try{for(r.s();!(a=r.n()).done;)(o=a.value).acked&&o.el.classList.remove("firstview")}catch(e){r.e(e)}finally{r.f()}e.setNoteTimes(t.noteList),e.setNoteTimes(t.pokeList);case 11:case"end":return n.stop()}}),n)})))),us(t.burgerIcon,"click",(function(){Ne.hide(t.logoutErr),e.showDropdown(t.burgerIcon,t.profileBox)})),us(t.innerNoteIcon,"click",(function(){Ne.hide(t.noteBox)})),us(t.innerBurgerIcon,"click",(function(){Ne.hide(t.profileBox)})),us(t.profileSignout,"click",s(f().mark((function t(){return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.signOut();case 2:return t.abrupt("return",t.sent);case 3:case"end":return t.stop()}}),t)})))),us(t.pokeCat,"click",(function(){e.setNoteTimes(t.pokeList),t.pokeCat.classList.add("active"),t.noteCat.classList.remove("active"),Ne.hide(t.noteList),Ne.show(t.pokeList),e.ackNotes()})),us(t.noteCat,"click",(function(){e.setNoteTimes(t.noteList),t.noteCat.classList.add("active"),t.pokeCat.classList.remove("active"),Ne.hide(t.pokeList),Ne.show(t.noteList),e.ackNotes()})),Ne.cleanTemplates(t.langBttnTmpl);var n=ps[this.lang],r=n.name,a=n.flag;t.langFlag.textContent=a,t.langName.textContent=r;var o,i=is(this.langs);try{var c=function(){var n=o.value;if(n===e.lang)return"continue";var r=t.langBttnTmpl.cloneNode(!0),a=ps[n],s=a.name,i=a.flag;r.textContent=i,r.title=s,Ne.bind(r,"click",(function(){return e.setLanguage(n)})),t.langBttns.appendChild(r)};for(i.s();!(o=i.n()).done;)c()}catch(e){i.e(e)}finally{i.f()}}},{key:"attachActions",value:function(){var e=this,t=this.page;Object.assign(t,Ne.idDescendants(Ne.idel(document.body,"requiredActions"))),Ne.cleanTemplates(t.missingNoncesTmpl,t.actionTxTableTmpl,t.tooCheapTmpl,t.lostNonceTmpl),Ne.bind(t.actionsCollapse,"click",(function(){Ne.hide(t.actionDialog),Ne.show(t.actionDialogCollapsed)})),Ne.bind(t.actionDialogCollapsed,"click",(function(){Ne.hide(t.actionDialogCollapsed),Ne.show(t.actionDialog),0===t.actionDialogContent.children.length&&e.showOldestAction()}));var n=function(t){var n=Object.values(e.requiredActions).filter((function(e){return e.selected}))[0],r=e.sortedActions(),a=r.indexOf(n);e.showRequestedAction(r[a+t].uniqueID)};Ne.bind(t.prevAction,"click",(function(){return n(-1)})),Ne.bind(t.nextAction,"click",(function(){return n(1)}))}},{key:"setRequiredActions",value:function(){var e=this.user.actions,t=this.requiredActions;if(e){var n,r=is(e);try{for(r.s();!(n=r.n()).done;){var a=n.value;this.addAction(a)}}catch(e){r.e(e)}finally{r.f()}Object.keys(t).length&&(this.showOldestAction(),this.blinkAction())}}},{key:"sortedActions",value:function(){var e=Object.values(this.requiredActions);return e.sort((function(e,t){return e.stamp-t.stamp})),e}},{key:"showOldestAction",value:function(){this.showRequestedAction(this.sortedActions()[0].uniqueID)}},{key:"addAction",value:function(e){var t=this.page,n=this.requiredActions,r=n[e.uniqueID];if(!r||r.actionID!==e.actionID){var a=this.actionForm(e);if(r)r.selected&&r.div.replaceWith(a),r.div=a;else{n[e.uniqueID]={div:a,stamp:(new Date).getTime(),uniqueID:e.uniqueID,actionID:e.actionID,selected:!1};var o=Object.keys(n).length;t.actionDialogCount.textContent=String(o),t.actionCount.textContent=String(o),Ne.isHidden(t.actionDialog)&&this.showRequestedAction(e.uniqueID)}}}},{key:"blinkAction",value:function(){Ne.blink(this.page.actionDialog),Ne.blink(this.page.actionDialogCollapsed)}},{key:"resolveAction",value:function(e){this.resolveActionWithID(e.uniqueID)}},{key:"resolveActionWithID",value:function(e){var t=this.page,n=this.requiredActions,r=n[e];if(r){delete n[e];var a=Object.keys(n).length;r.div.remove(),0!==a?(t.actionDialogCount.textContent=String(a),t.actionCount.textContent=String(a),r.selected&&this.showOldestAction()):Ne.hide(t.actionDialog,t.actionDialogCollapsed)}}},{key:"actionForm",value:function(e){switch(e.actionID){case"tooCheap":return this.tooCheapAction(e);case"missingNonces":return this.missingNoncesAction(e);case"lostNonce":return this.lostNonceAction(e);case"redeemRejected":return this.redeemRejectedAction(e)}throw Error("unknown required action ID "+e.actionID)}},{key:"actionTxTable",value:function(e){var t=e.assetID,n=e.payload,r=this.assets[t],a=r.unitInfo,o=r.token,s=this.page.actionTxTableTmpl.cloneNode(!0),i=Ne.parseTemplate(s);i.lostTxID.textContent=n.tx.id,i.lostTxID.dataset.explorerCoin=n.tx.id,Pn(o?o.parentID:t,i.lostTxID),i.txAmt.textContent=Ne.formatCoinValue(n.tx.amount,a),i.amtUnit.textContent=a.conventional.unit;var c=o?this.unitInfo(o.parentID):a;return i.type.textContent=Xr(n.tx.type),i.feeAmount.textContent=Ne.formatCoinValue(n.tx.fees,c),i.feeUnit.textContent=c.conventional.unit,"tooCheap"===e.actionID&&(Ne.show(i.newFeesRow),i.newFees.textContent=Ne.formatCoinValue(n.tx.fees,c),i.newFeesUnit.textContent=c.conventional.unit),s}},{key:"submitAction",value:(p=s(f().mark((function e(t,n,r){var a,o;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Ne.hide(r),a=this.loading(this.page.actionDialog),e.next=4,S("/api/takeaction",{assetID:t.assetID,actionID:t.actionID,action:n});case 4:if(o=e.sent,a(),this.checkResponse(o)){e.next=10;break}return r.textContent=o.msg,Ne.show(r),e.abrupt("return");case 10:this.resolveActionWithID(t.uniqueID);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return p.apply(this,arguments)})},{key:"missingNoncesAction",value:function(e){var t=this,n=e.assetID,r=this.page.missingNoncesTmpl.cloneNode(!0),a=Ne.parseTemplate(r),o=this.assets[n].name;return a.assetName.textContent=o,Ne.bind(a.doNothingBttn,"click",(function(){t.submitAction(e,{recover:!1},a.errMsg)})),Ne.bind(a.recoverBttn,"click",(function(){t.submitAction(e,{recover:!0},a.errMsg)})),r}},{key:"tooCheapAction",value:function(e){var t=this,n=e.assetID,r=e.payload,a=this.page.tooCheapTmpl.cloneNode(!0),o=Ne.parseTemplate(a),s=this.assets[n].name;o.assetName.textContent=s,o.txTable.appendChild(this.actionTxTable(e));var i=function(n){t.submitAction(e,{txID:r.tx.id,bump:n},o.errMsg)};return Ne.bind(o.keepWaitingBttn,"click",(function(){return i(!1)})),Ne.bind(o.addFeesBttn,"click",(function(){return i(!0)})),a}},{key:"lostNonceAction",value:function(e){var t=this,n=e.assetID,r=e.payload,a=this.page.lostNonceTmpl.cloneNode(!0),o=Ne.parseTemplate(a),s=this.assets[n].name;return o.assetName.textContent=s,o.nonce.textContent=String(r.nonce),o.txTable.appendChild(this.actionTxTable(e)),Ne.bind(o.abandonBttn,"click",(function(){t.submitAction(e,{txID:r.tx.id,abandon:!0},o.errMsg)})),Ne.bind(o.keepWaitingBttn,"click",(function(){t.submitAction(e,{txID:r.tx.id,abandon:!1},o.errMsg)})),Ne.bind(o.replaceBttn,"click",(function(){var n=o.idInput.value;if(!n)return o.idInput.focus(),void Ne.blink(o.idInput);t.submitAction(e,{txID:r.tx.id,abandon:!1,replacementID:n},o.errMsg)})),a}},{key:"redeemRejectedAction",value:function(e){var t=this,n=e.payload,r=n.orderID,a=n.coinID,o=n.coinFmt,s=n.assetID,i=this.page.rejectedRedemptionTmpl.cloneNode(!0),c=Ne.parseTemplate(i),l=this.assets[s],u=l.name,d=l.token;return c.assetName.textContent=u,c.txid.textContent=o,c.txid.dataset.explorerCoin=a,Pn(d?d.parentID:s,c.txid),Ne.bind(c.doNothingBttn,"click",(function(){t.submitAction(e,{orderID:r,coinID:a,retry:!1},c.errMsg)})),Ne.bind(c.tryAgainBttn,"click",(function(){t.submitAction(e,{orderID:r,coinID:a,retry:!0},c.errMsg)})),i}},{key:"showRequestedAction",value:function(e){var t=this.page,n=this.requiredActions;Ne.hide(t.actionDialogCollapsed);for(var r=0,a=Object.values(n);r<a.length;r++){var o=a[r];o.selected=o.uniqueID===e}Ne.empty(t.actionDialogContent);var s=n[e];t.actionDialogContent.appendChild(s.div),Ne.show(t.actionDialog);var i=this.sortedActions();if(1!==i.length){Ne.show(t.actionsNavigator);var c=i.indexOf(s);t.currentAction.textContent=String(c+1),t.prevAction.classList.toggle("invisible",0===c),t.nextAction.classList.toggle("invisible",c===i.length-1)}else Ne.hide(t.actionsNavigator)}},{key:"updateMarketElements",value:function(e,t,n,r){var a,o=this,s=function(e){var t=o.assets[e];if(t)return t;if(!r)throw Error("no asset found for asset ID ".concat(e));var n=r.assets[e];return{unitInfo:n.unitInfo,name:n.symbol,symbol:n.symbol}},i=s(t),c=i.unitInfo,l=i.name,u=i.symbol,d=is(Ne.applySelector(e,"[data-base-name"));try{for(d.s();!(a=d.n()).done;)a.value.textContent=l}catch(e){d.e(e)}finally{d.f()}var h,p=is(Ne.applySelector(e,"[data-base-logo]"));try{for(p.s();!(h=p.n()).done;)h.value.src=Ne.logoPath(u)}catch(e){p.e(e)}finally{p.f()}var f,v=is(Ne.applySelector(e,"[data-base-ticker]"));try{for(v.s();!(f=v.n()).done;)f.value.textContent=c.conventional.unit}catch(e){v.e(e)}finally{v.f()}var m,g=s(n),y=g.unitInfo,b=g.name,x=g.symbol,k=is(Ne.applySelector(e,"[data-quote-name"));try{for(k.s();!(m=k.n()).done;)m.value.textContent=b}catch(e){k.e(e)}finally{k.f()}var w,C=is(Ne.applySelector(e,"[data-quote-logo]"));try{for(C.s();!(w=C.n()).done;)w.value.src=Ne.logoPath(x)}catch(e){C.e(e)}finally{C.f()}var S,F=is(Ne.applySelector(e,"[data-quote-ticker]"));try{for(F.s();!(S=F.n()).done;)S.value.textContent=y.conventional.unit}catch(e){F.e(e)}finally{F.f()}}},{key:"setLanguage",value:(u=s(f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/setlocale",t);case 2:window.location.reload();case 3:case"end":return e.stop()}}),e)}))),function(e){return u.apply(this,arguments)})},{key:"showDropdown",value:function(e,t){var n=this;if(Ne.hide(this.page.noteBox,this.page.profileBox),Ne.show(t),window.innerWidth<500)Object.assign(t.style,{left:"0",right:"0",top:"0"});else{var r=e.getBoundingClientRect(),a="".concat(window.innerWidth-r.left-r.width+5,"px");Object.assign(t.style,{left:"auto",right:a,top:"".concat(r.top-4,"px")})}us(document,"click",(function e(r){Ne.mouseInElement(r,t)||(Ne.hide(t),ds(document,"click",e),t===n.page.noteBox&&Ne.isDisplayed(n.page.noteList)&&n.ackNotes())}))}},{key:"ackNotes",value:function(){var e,t=[],n=is(this.notes);try{for(n.s();!(e=n.n()).done;){var r=e.value;r.acked?r.el.classList.remove("firstview"):(r.acked=!0,r.id&&r.severity>2&&t.push(r.id))}}catch(e){n.e(e)}finally{n.f()}t.length&&Ta.request("acknotes",t),Ne.hide(this.page.noteIndicator)}},{key:"setNoteTimes",value:function(e){for(var t=0,n=Array.from(e.children);t<n.length;t++){var r=n[t];Ne.safeSelector(r,"span.note-time").textContent=Ne.timeSince(r.note.stamp)}}},{key:"bindInternalNavigation",value:function(e){var t=this,n=new URL(window.location.href);e.querySelectorAll("a").forEach((function(e){if(e.href){var r=new URL(e.href);if(r.origin===n.origin){var a=r.pathname.substring(1),o={};r.search&&r.searchParams.forEach((function(e,t){o[t]=e})),Ne.bind(e,"click",(function(e){e.preventDefault(),t.loadPage(a,o)}))}}}))}},{key:"updateMenuItemsDisplay",value:function(){var e=this.page,t=this.authed,n=this.mmStatus;if(e){if(!t)return e.profileBox.classList.remove("authed"),void Ne.hide(e.noteBell,e.walletsMenuEntry,e.marketsMenuEntry);Ne.setVis(Object.keys(this.exchanges).length>0,e.marketsMenuEntry,e.mmLink),e.profileBox.classList.add("authed"),Ne.show(e.noteBell,e.walletsMenuEntry,e.marketsMenuEntry),Ne.setVis(n,e.mmLink)}}},{key:"fetchNotes",value:(l=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T("/api/notes");case 2:if(t=e.sent,this.checkResponse(t)){e.next=5;break}return e.abrupt("return",console.error("failed to fetch notes:",(null==t?void 0:t.msg)||String(t)));case 5:t.notes.reverse(),this.setNotes(t.notes),this.setPokes(t.pokes),this.setRequiredActions();case 9:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"attachCommon",value:function(e){this.bindInternalNavigation(e)}},{key:"updateBondConfs",value:function(e,t,n){var r,a=is(this.exchanges[e].auth.pendingBonds);try{for(a.s();!(r=a.n()).done;){var o=r.value;o.coinID===t&&(o.confs=n)}}catch(e){a.e(e)}finally{a.f()}}},{key:"updateTier",value:function(e,t){this.exchanges[e].auth.rep.bondedTier=t}},{key:"handleBondNote",value:function(e){switch(e.auth&&(this.exchanges[e.dex].auth=e.auth),e.topic){case"RegUpdate":null!==e.coinID&&this.updateBondConfs(e.dex,e.coinID,e.confirmations);break;case"BondConfirmed":null!==e.tier&&this.updateTier(e.dex,e.tier)}}},{key:"handleTransactionNote",value:function(e,t){var n=this.txHistoryMap[e];if(n)if(t.new)n.txs.unshift(t.transaction);else for(var r=0;r<n.txs.length;r++)if(n.txs[r].id===t.transaction.id){n.txs[r]=t.transaction;break}}},{key:"handleTxHistorySyncedNote",value:function(e){delete this.txHistoryMap[e]}},{key:"loggedIn",value:function(e,t){this.setNotes(e),this.setPokes(t),this.setRequiredActions()}},{key:"setNotes",value:function(e){this.log("notes","setNotes",e),this.notes=[],Ne.empty(this.page.noteList);for(var t=0;t<e.length;t++)this.prependNoteElement(e[t])}},{key:"setPokes",value:function(e){this.log("pokes","setPokes",e),this.pokes=[],Ne.empty(this.page.pokeList);for(var t=0;t<e.length;t++)this.prependPokeElement(e[t])}},{key:"botStatus",value:function(e,t,n){var r,a,o,s=is(null!==(r=null===(a=this.mmStatus)||void 0===a?void 0:a.bots)&&void 0!==r?r:[]);try{for(s.s();!(o=s.n()).done;){var i=o.value,c=i.config;if(e===c.host&&t===c.baseID&&n===c.quoteID)return i}}catch(e){s.e(e)}finally{s.f()}}},{key:"updateUser",value:function(e){var t=this.user,n=this.assets,r=this.walletMap;if("fiatrateupdate"!==e.type){if(t)switch(e.type){case"order":var o=e,s=o.order,i=t.exchanges[s.host].markets[s.market],c=o.tempID;if("AsyncOrderSubmitted"===e.topic){var l=s;l.tempID=c,i.inflight?i.inflight.push(l):i.inflight=[l];break}if("AsyncOrderFailure"===e.topic){i.inflight=i.inflight.filter((function(e){return e.tempID!==c}));break}for(var u in i.inflight||[])if(i.inflight[u].tempID===c){i.inflight=i.inflight.filter((function(e){return e.tempID!==c}));break}i.orders=i.orders||[],function(t,n){var r=t.orders.findIndex((function(e){return e.id===n.id}));return-1!==r&&("OrderRetired"===e.topic?t.orders.splice(r,1):t.orders[r]=n,!0)}(i,s)||i.orders.push(s);break;case"balance":var d=e,h=t.assets[d.assetID];if(!h)break;var p=h.wallet;p&&(p.balance=d.balance);break;case"bondpost":this.handleBondNote(e);break;case"reputation":var f=e;this.exchanges[f.host].auth.rep=f.rep;break;case"walletstate":case"walletconfig":if(!n)return;var v=null==e?void 0:e.wallet;if(!v)return;n[v.assetID].wallet=v,r[v.assetID]=v;break;case"walletsync":var m=e,g=this.walletMap[m.assetID];g&&(g.syncStatus=m.syncStatus,g.synced=g.syncStatus.synced,g.syncProgress=m.syncProgress);break;case"match":var y=e,b=this.order(y.orderID);b&&function(e,t){for(var n in e.matches)if(e.matches[n].matchID===t.matchID)return void(e.matches[n]=t);e.matches=e.matches||[],e.matches.push(t)}(b,y.match);break;case"conn":var x=e,k=t.exchanges[x.host];k&&(k.connectionStatus=x.connectionStatus);break;case"spots":var w=e,C=t.exchanges[w.host];if(!C||!C.markets)break;for(var S=0,F=Object.entries(w.spots);S<F.length;S++){var T=a(F[S],2),D=T[0],I=T[1];C.markets[D].spot=I}break;case"fiatrateupdate":this.fiatRatesMap=e.fiatRates;break;case"actionrequired":var A=e;this.addAction(A.payload);break;case"walletnote":var R=e;switch(R.payload.route){case"transaction":var E=R.payload;this.handleTransactionNote(R.payload.assetID,E);break;case"actionRequired":var B=R.payload;this.addAction(B),this.blinkAction();break;case"actionResolved":this.resolveAction(R.payload)}"transactionHistorySynced"===R.payload.route&&this.handleTxHistorySyncedNote(R.payload.assetID);break;case"runstats":this.log("mm",{runstats:e});var P=e,L=this.botStatus(P.host,P.baseID,P.quoteID);L&&(L.runStats=P.stats,L.running=Boolean(P.stats),P.stats||(L.latestEpoch=void 0,L.cexProblems=void 0));break;case"cexnote":var O=e;if("BalanceUpdate"===O.topic){var M=O.note;this.mmStatus.cexes[O.cexName].balances[M.assetID]=M.balance}break;case"epochreport":var q=e,N=this.botStatus(q.host,q.baseID,q.quoteID);N&&(N.latestEpoch=q.report);break;case"cexproblems":var W=e,V=this.botStatus(W.host,W.baseID,W.quoteID);V&&(V.cexProblems=W.problems)}}else this.fiatRatesMap=e.fiatRates}},{key:"notify",value:function(e){this.log("notes","notify",e),this.updateUser(e);var t,n=is(this.noteReceivers);try{for(n.s();!(t=n.n()).done;){var r=t.value[e.type];if(r)try{r(e)}catch(t){console.error("note feeder error:",t.message?t.message:t),console.log(e),console.log(t.stack)}}}catch(e){n.e(e)}finally{n.f()}if(!(e.severity<2)){var a=this.popupTmpl,o=this.popupNotes;if(this.showPopups){var i=a.cloneNode(!0);Ne.tmplElement(i,"text").textContent="".concat(e.subject,": ").concat(ya(e.details));var c=Ne.tmplElement(i,"indicator");for(2===e.severity?Ne.hide(c):ys(c,e.severity),o.appendChild(i),Ne.show(o);o.children.length>5;)o.removeChild(o.firstChild);setTimeout(s(f().mark((function e(){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ne.animate(500,(function(e){i.style.opacity=String(1-e)}));case 2:i.remove(),0===o.children.length&&Ne.hide(o);case 4:case"end":return e.stop()}}),e)}))),6e3)}2===e.severity?this.prependPokeElement(e):this.prependNoteElement(e),function(e){pa.apply(this,arguments)}(e)}}},{key:"registerNoteFeeder",value:function(e){this.noteReceivers.push(e)}},{key:"log",value:function(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),a=1;a<n;a++)r[a-1]=arguments[a];this.loggers[e]&&(t=console).log.apply(t,["".concat(gs(),"[").concat(e,"]:")].concat(r)),this.recorders[e]&&this.recorders[e].push({time:gs(),msg:r})}},{key:"prependPokeElement",value:function(e){var t=a(this.makePoke(e),2),n=t[0],r=t[1];for(this.pokes.push(r);this.pokes.length>100;)this.pokes.shift();this.prependListElement(this.page.pokeList,r,n)}},{key:"prependNoteElement",value:function(e){var t=a(this.makeNote(e),2),n=t[0],r=t[1];for(this.notes.push(r);this.notes.length>100;)this.notes.shift();var o=this.page.noteList;if(this.prependListElement(o,r,n),this.bindUrlHandlers(n),!(0===this.notes.length||Ne.isDisplayed(this.page.noteBox)&&Ne.isDisplayed(o))){var s=0,i=this.notes.reduce((function(e,t){return t.acked||s++,!t.acked&&t.severity>e?t.severity:e}),0),c=this.page.noteIndicator;ys(c,i),s?(c.textContent=String(s>99?"".concat(99,"+"):s),Ne.show(c)):Ne.hide(c)}}},{key:"prependListElement",value:function(e,t,n){for(n.note=t,e.prepend(n);e.children.length>100;)e.removeChild(e.lastChild);this.setNoteTimes(e)}},{key:"makeNote",value:function(e){var t=this.page.noteTmpl.cloneNode(!0);if(e.severity>2){var n=3===e.severity?"good":4===e.severity?"warn":"bad";Ne.safeSelector(t,"div.note-indicator").classList.add(n)}return Ne.safeSelector(t,"div.note-subject").textContent=e.subject,ga(Ne.safeSelector(t,"div.note-details"),e.details),[t,ss({el:t},e)]}},{key:"makePoke",value:function(e){var t=this.page.pokeTmpl.cloneNode(!0);return Ne.tmplElement(t,"subject").textContent="".concat(e.subject,":"),ga(Ne.tmplElement(t,"details"),e.details),[t,ss({el:t},e)]}},{key:"loading",value:function(e){var t=this.page.loader.cloneNode(!0);return e.appendChild(t),function(){t.remove()}}},{key:"orders",value:function(e,t){var n=[],r=this.user.exchanges[e].markets[t];return r.orders&&(n=n.concat(r.orders)),r.inflight&&(n=n.concat(r.inflight)),n}},{key:"haveActiveOrders",value:function(e){for(var t=0,n=Object.values(this.user.exchanges);t<n.length;t++){var r=n[t];if(r.markets)for(var a=0,o=Object.values(r.markets);a<o.length;a++){var s=o[a];if(s.orders){var i,c=is(s.orders);try{for(c.s();!(i=c.n()).done;){var l=i.value;if((l.baseID===e||l.quoteID===e)&&(l.status<3||At(l)))return!0}}catch(e){c.e(e)}finally{c.f()}}}}return!1}},{key:"order",value:function(e){for(var t=0,n=Object.values(this.user.exchanges);t<n.length;t++){var r=n[t];if(r&&r.markets)for(var a=0,o=Object.values(r.markets);a<o.length;a++){var s=o[a];if(s.orders){var i,c=is(s.orders);try{for(c.s();!(i=c.n()).done;){var l=i.value;if(l.id===e)return l}}catch(e){c.e(e)}finally{c.f()}}}}return null}},{key:"canAccelerateOrder",value:function(e){var t;t=e.sell?e.baseID:e.quoteID;var n=this.walletMap[t];if(!(n&&16&n.traits))return!1;if(e.matches)for(var r=0;r<(null===(a=e.matches)||void 0===a?void 0:a.length);r++){var a,o=e.matches[r];if(o.swap&&o.swap.confs&&0===o.swap.confs.count&&!o.revoked)return!0}return!1}},{key:"unitInfo",value:function(e,t){var n=this.assets[e];if(n)return n.unitInfo;if(!t||!t.assets)throw Error(ke("UNSUPPORTED_ASSET_INFO_ERR_MSG",{assetID:"".concat(e)}));return t.assets[e].unitInfo}},{key:"parentAsset",value:function(e){var t=this.assets[e];return t.token?this.assets[t.token.parentID]:t}},{key:"baseChainSymbol",value:function(e){var t=this.user.assets[e];return t.token?this.user.assets[t.token.parentID].symbol:t.symbol}},{key:"extensionWallet",value:function(e){var t;return null===(t=this.user.extensionModeConfig)||void 0===t?void 0:t.restrictedWallets[this.baseChainSymbol(e)]}},{key:"conventionalRate",value:function(e,t,n,r){var a=[this.unitInfo(e,r),this.unitInfo(t,r)],o=a[1];return n*(a[0].conventional.conversionFactor/o.conventional.conversionFactor)/Ft}},{key:"walletDefinition",value:function(e,t){var n=this.assets[e];if(n.token)return n.token.definition;if(!n.info)throw Error("where's the wallet info?");return""===t?n.info.availablewallets[n.info.emptyidx]:n.info.availablewallets.filter((function(e){return e.type===t}))[0]}},{key:"currentWalletDefinition",value:function(e){var t=this.assets[e];return t.token?t.token.definition:this.walletDefinition(e,this.assets[e].wallet.type)}},{key:"fetchBalance",value:(c=s(f().mark((function e(t){var n;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/balance",{assetID:t});case 2:if(n=e.sent,this.checkResponse(n)){e.next=5;break}throw new Error("failed to fetch balance for asset ID ".concat(t));case 5:return e.abrupt("return",n.balance);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"checkResponse",value:function(e){return e.requestSuccessful&&e.ok}},{key:"signOut",value:(o=s(f().mark((function e(){var t;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S("/api/logout");case 2:if(t=e.sent,this.checkResponse(t)){e.next=7;break}return t.code===A.activeOrdersErr?this.page.logoutErr.textContent=ke("ACTIVE_ORDERS_LOGOUT_ERR_MSG"):this.page.logoutErr.textContent=t.msg,Ne.show(this.page.logoutErr),e.abrupt("return");case 7:k.removeCookie(k.authCK),k.removeCookie(k.pwKeyCK),k.removeLocal(k.notificationsLK),window.location.href="/login";case 11:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"txHistory",value:(n=s(f().mark((function e(t,n,a){var o,s,i,c,l,u,d,h,p,v,m,g;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o="/api/txhistory",s=this.txHistoryMap[t]){e.next=12;break}return e.next=5,S(o,{n,assetID:t});case 5:if(i=e.sent,this.checkResponse(i)){e.next=8;break}throw new Error(i.msg);case 8:return(c=i.txs)||(c=[]),this.txHistoryMap[t]={txs:c,lastTx:c.length<n},e.abrupt("return",this.txHistoryMap[t]);case 12:if(l=[],u=!1,d=a?s.txs.findIndex((function(e){return e.id===a}))+1:0,!a||-1!==d){e.next=17;break}throw new Error("invalid after tx "+a);case 17:for(h=d,p=d;p<s.txs.length&&l.length<n;p++)l.push(s.txs[p]),h=p,a=s.txs[p].id;if(s.lastTx&&h===s.txs.length-1&&(u=!0),!(l.length<n)||s.lastTx){e.next=33;break}return e.next=23,S(o,{n:n-l.length+1,assetID:t,refID:a,past:!0});case 23:if(m=e.sent,this.checkResponse(m)){e.next=26;break}throw new Error(m.msg);case 26:(g=m.txs)||(g=[]),g.length>0&&a&&(g[0].id===a?g.shift():console.error("First tx history element != refID")),s.lastTx=g.length<n-l.length,u=s.lastTx,l.push.apply(l,r(g)),(v=s.txs).push.apply(v,r(g));case 33:return e.abrupt("return",{txs:l,lastTx:u});case 34:case"end":return e.stop()}}),e,this)}))),function(e,t,r){return n.apply(this,arguments)})},{key:"getWalletTx",value:function(e,t){var n=this.txHistoryMap[e];if(n)return n.txs.find((function(e){return e.id===t}))}},{key:"clearTxHistory",value:function(e){delete this.txHistoryMap[e]}},{key:"needsCustomProvider",value:(t=s(f().mark((function e(t){var n,r,a,o,s,i,c;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=null!==(n=null===(r=this.assets[t])||void 0===r||null===(a=r.token)||void 0===a?void 0:a.parentID)&&void 0!==n?n:t){e.next=3;break}return e.abrupt("return",!1);case 3:if(s=this.walletMap[o]){e.next=6;break}return e.abrupt("return",!1);case 6:if(16384&s.traits){e.next=9;break}return e.abrupt("return",!1);case 9:return e.next=11,S("/api/walletsettings",{assetID:o});case 11:if(i=e.sent,this.checkResponse(i)){e.next=15;break}return console.error(i.msg),e.abrupt("return",!1);case 15:return c=i.map,e.abrupt("return",!c.providers);case 17:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)})}]),e}(),vs=(h($o={},3,"good"),h($o,5,"bad"),h($o,4,"warn"),$o);function ms(e){return e.replace(/^\//,"").split("/")[0].split("?")[0].split("#")[0]}function gs(){var e=new Date,t=e.getHours().toString().padStart(2,"0"),n=e.getMinutes().toString().padStart(2,"0"),r=e.getSeconds().toString().padStart(2,"0"),a=e.getMilliseconds().toString().padStart(3,"0");return"".concat(t,":").concat(n,":").concat(r,".").concat(a)}function ys(e,t){e.classList.remove("bad","warn","good"),e.classList.add(vs[t])}var bs=new fs;ot=bs,bs.start()})()})(); 3 //# sourceMappingURL=entry.js.map