@rango-dev/queue-manager-rango-preset 0.1.13-next.13 → 0.1.13-next.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t,r,n=require("@rango-dev/wallets-shared"),a=require("@rango-dev/wallets-core"),o=require("rango-sdk"),s=require("@rango-dev/queue-manager-core"),i=require("rango-types"),l=(e=require("bignumber.js"))&&"object"==typeof e&&"default"in e?e.default:e,u=require("@sentry/browser"),c=require("@rango-dev/queue-manager-react"),p=require("react"),d=require("uuid"),f={API_KEY:"c6381a79-2817-4602-83bf-6a641a409e32"};function g(e){return f[e]||""}function v(e){var t;return t="function"==typeof structuredClone?structuredClone(e):JSON.parse(JSON.stringify(e)),f=t}function T(){T=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",i=a.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function u(e,t,r,a){var o=Object.create((t&&t.prototype instanceof d?t:d).prototype),s=new k(a||[]);return n(o,"_invoke",{value:m(e,r,s)}),o}function c(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var p={};function d(){}function f(){}function g(){}var v={};l(v,o,(function(){return this}));var S=Object.getPrototypeOf,h=S&&S(S(C([])));h&&h!==t&&r.call(h,o)&&(v=h);var w=g.prototype=d.prototype=Object.create(v);function x(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function y(e,t){var a;n(this,"_invoke",{value:function(n,o){function s(){return new t((function(a,s){!function n(a,o,s,i){var l=c(e[a],e,o);if("throw"!==l.type){var u=l.arg,p=u.value;return p&&"object"==typeof p&&r.call(p,"__await")?t.resolve(p.__await).then((function(e){n("next",e,s,i)}),(function(e){n("throw",e,s,i)})):t.resolve(p).then((function(e){u.value=e,s(u)}),(function(e){return n("throw",e,s,i)}))}i(l.arg)}(n,o,a,s)}))}return a=a?a.then(s,s):s()}})}function m(e,t,r){var n="suspendedStart";return function(a,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===a)throw o;return{value:void 0,done:!0}}for(r.method=a,r.arg=o;;){var s=r.delegate;if(s){var i=E(s,r);if(i){if(i===p)continue;return i}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=c(e,t,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===p)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var a=c(n,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,p;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,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function _(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 A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function k(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(_,this),this.reset(!0)}function C(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:b}}function b(){return{value:void 0,done:!0}}return f.prototype=g,n(w,"constructor",{value:g,configurable:!0}),n(g,"constructor",{value:f,configurable:!0}),f.displayName=l(g,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,l(e,i,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},x(y.prototype),l(y.prototype,s,(function(){return this})),e.AsyncIterator=y,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var s=new y(u(t,r,n,a),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},x(w),l(w,i,"Generator"),l(w,o,(function(){return this})),l(w,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,k.prototype={constructor:k,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(A),!e)for(var t in this)"t"===t.charAt(0)&&r.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(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var i=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(i&&l){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(i){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,p):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),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;A(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},e}function S(e,t,r,n,a,o,s){try{var i=e[o](s),l=i.value}catch(e){return void r(e)}i.done?t(l):Promise.resolve(l).then(n,a)}function h(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function s(e){S(o,n,a,s,i,"next",e)}function i(e){S(o,n,a,s,i,"throw",e)}s(void 0)}))}}function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function x(e){return(x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function y(e,t){return(y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function m(){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 E(e,t,r){return(E=m()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var a=new(Function.bind.apply(e,n));return r&&y(a,r.prototype),a}).apply(null,arguments)}function _(e){var t="function"==typeof Map?new Map:void 0;return(_=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return E(e,arguments,x(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),y(r,e)})(e)}!function(e){e.START="START",e.SCHEDULE_NEXT_STEP="SCHEDULE_NEXT_STEP",e.CREATE_TRANSACTION="CREATE_TRANSACTION",e.EXECUTE_TRANSACTION="EXECUTE_TRANSACTION",e.CHECK_TRANSACTION_STATUS="CHECK_TRANSACTION_STATUS"}(t||(t={})),function(e){e.WAIT_FOR_CONNECT_WALLET="waiting_for_connecting_wallet",e.WAIT_FOR_NETWORK_CHANGE="waiting_for_network_change",e.DEPENDS_ON_OTHER_QUEUES="depends_on_other_queues"}(r||(r={}));var A=function(e,t){return"Please change your "+(e||"wallet")+" account to "+(t||"proper address")},k=function(e){return"Please connect to "+(e||"your wallet")+" by using bellow button or top right button on page."},C=function(e){return"Please change your network to "+e+"."},b=function(e){var t,r;function n(t,r,a,o){var s;return(s=e.call(this,r)||this)._isPrettyError=!0,Object.setPrototypeOf(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(s),n.prototype),n.prototype._isPrettyError=!0,s.code=t,s.detail=o,s.root=a,s}return r=e,(t=n).prototype=Object.create(r.prototype),t.prototype.constructor=t,y(t,r),n.isPrettyError=function(e){return e instanceof n||Object.prototype.hasOwnProperty("_isPrettyError")},n.prototype.getErrorDetail=function(){var e="object"==typeof this.root&&this.root&&this.root.error?this.root.error:JSON.stringify(this.root),t="string"==typeof this.root?this.root:this.root instanceof Error?this.root.message:e;return{extraMessage:this.message,extraMessageDetail:this.detail||t,extraMessageErrorCode:this.code||null}},n.AssertionFailed=function(e){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Assertion failed (Unexpected behaviour)",e)},n.BadStatusCode=function(e,t){return new n("TX_FAIL",e,null,"status code = "+t)},n.CreateTransaction=function(e){return new n("FETCH_TX_FAILED","Create transaction failed in Rango Server",null,e)},n.WalletMissing=function(){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Input wallet not found",null,"Server requested for a blockchain or address not selected by user")},n.BlockchainMissing=function(){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Input wallet not found",null,"Server requested for a blockchain or address not selected by user")},n}(_(Error));function N(e){var t="CLIENT_UNEXPECTED_BEHAVIOUR";try{return e?i.isAPIErrorCode(e)?e:i.isSignerErrorCode(e)?((r={})[i.SignerErrorCode.REJECTED_BY_USER]="USER_REJECT",r[i.SignerErrorCode.SIGN_TX_ERROR]="CALL_WALLET_FAILED",r[i.SignerErrorCode.SEND_TX_ERROR]="SEND_TX_FAILED",r[i.SignerErrorCode.NOT_IMPLEMENTED]=t,r[i.SignerErrorCode.OPERATION_UNSUPPORTED]=t,r[i.SignerErrorCode.UNEXPECTED_BEHAVIOUR]=t,r)[e]:t:t;var r}catch(e){return t}}var O,M,D=function(e){if(!e)return{extraMessage:"",extraMessageErrorCode:null};if(b.isPrettyError(e))return e.getErrorDetail();if(i.SignerError.isSignerError(e)){var t=e.getErrorDetail();return{extraMessage:t.message,extraMessageDetail:t.detail,extraMessageErrorCode:t.code}}return e instanceof Error?{extraMessage:e.toString(),extraMessageErrorCode:null}:"string"!=typeof e?{extraMessage:JSON.stringify(e),extraMessageErrorCode:null}:{extraMessage:e,extraMessageErrorCode:null}},R=function(e,t,r){if(void 0===t&&(t=null),void 0===r&&(r=null),null===e)return"";if(""===e)return"";for(var n=new l(e),a=1e3,o=0;o<60;o++)if(new l(n.toFixed(o,1)).eq(n)){a=o;break}if(n.gte(1e4))return n.toFormat(0,1);if(n.gte(1e3))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,1))),1);if(n.gte(100))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,1))),1);if(n.gte(1))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,2))),1);if(n.gte(.01))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,4))),1);for(var s=t||4;s<17;s++)if(n.gte(Math.pow(10,-s)))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,s))),1);return n.isEqualTo(0)?"0":n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,8))),1)};(O=exports.PendingSwapNetworkStatus||(exports.PendingSwapNetworkStatus={})).WaitingForConnectingWallet="waitingForConnectingWallet",O.WaitingForQueue="waitingForQueue",O.WaitingForNetworkChange="waitingForNetworkChange",O.NetworkChanged="networkChanged",(M=exports.MessageSeverity||(exports.MessageSeverity={})).error="error",M.warning="warning",M.info="info",M.success="success";var I=function(e,t){try{return L(e,t)}catch(e){return null}},L=function(e,t){var r,n,a,o,s,i,l,u,c,p=(null==(r=t.evmTransaction)?void 0:r.blockChain)||(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||(null==(a=t.starknetTransaction)?void 0:a.blockChain)||(null==(o=t.starknetApprovalTransaction)?void 0:o.blockChain)||(null==(s=t.tronTransaction)?void 0:s.blockChain)||(null==(i=t.tronApprovalTransaction)?void 0:i.blockChain)||(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||(null==(u=t.solanaTransaction)?void 0:u.blockChain);if(p)return p;var d=null==(c=t.transferTransaction)?void 0:c.fromWalletAddress;if(!d)throw b.BlockchainMissing();var f=Object.keys(e.wallets).find((function(t){var r;return(null==(r=e.wallets[t])?void 0:r.address)===d}))||null;if(null==f)throw b.BlockchainMissing();return f};function W(e,t){return e.steps.find((function(e){return"failed"!==e.status&&"success"!==e.status&&e.id!==t.id}))||null}var P=function(e,t){var r,n,a,o,s,i,l,u,c,p,d=e.wallets[(null==(r=t.evmTransaction)?void 0:r.blockChain)||""]||e.wallets[(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||""]||e.wallets[(null==(a=t.tronTransaction)?void 0:a.blockChain)||""]||e.wallets[(null==(o=t.tronApprovalTransaction)?void 0:o.blockChain)||""]||e.wallets[(null==(s=t.starknetTransaction)?void 0:s.blockChain)||""]||e.wallets[(null==(i=t.starknetApprovalTransaction)?void 0:i.blockChain)||""]||e.wallets[(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||""]||e.wallets[(null==(u=t.solanaTransaction)?void 0:u.blockChain)||""]||(null!=(c=t.transferTransaction)&&c.fromWalletAddress?{address:null==(p=t.transferTransaction)?void 0:p.fromWalletAddress}:null)||null;if(null==d)throw b.WalletMissing();return d.address};function U(e,t){var r=P(e,t),a=Object.keys(e.wallets).map((function(t){return{k:t,v:e.wallets[t]}})).find((function(e){return e.v.address===r}))||null,o=(null==a?void 0:a.v)||null,s=null==o?void 0:o.walletType;if(s===n.WalletType.UNKNOWN||null===o)throw b.AssertionFailed("Wallet for source "+((null==a?void 0:a.k)||null)+" not passed: walletType: "+s);return o}function F(e,t){try{return U(e,t)}catch(e){return null}}var B=function(e,t,r,n){var a=null==n?void 0:n.find((function(n){var a;return n.blockchain===e&&(null==(a=n.symbol)?void 0:a.toUpperCase())===(null==t?void 0:t.toUpperCase())&&n.address===r}));return(null==a?void 0:a.usdPrice)||null};function H(e,t){for(var r=new l(0),n=0;n<e.fee.length;n++){var a=e.fee[n];if("DECREASE_FROM_OUTPUT"!==a.expenseType){var o=B(a.asset.blockchain,a.asset.symbol,a.asset.address,t);r=r.plus(new l(a.amount).multipliedBy(o||0))}}return r}function q(e,t,r,n){try{u.captureException(e,{tags:{requestId:t.requestId,rpc:!0,swapper:(null==r?void 0:r.swapperId)||"",walletType:n||""},level:"warning"})}catch(e){console.log({e:e})}}var j=void 0,K=function(){return j||(j=new o.RangoClient(g("API_KEY"),g("BASE_URL")))},X=null;function G(){return{claimedBy:function(){var e;return null==(e=X)?void 0:e.id},setClaimer:function(e){X={id:e}},reset:function(){X=null}}}function Q(e){var t=((null==e?void 0:e.split(":")[0])||"").split("-"),r=t[t.length-1],n=t.slice(0,-1);return n[n.length-1]===r&&n.pop(),[n.join("-"),r]}var V=function(e){return e.steps.find((function(e){return"failed"!==e.status&&"success"!==e.status}))||null};function J(e){var t=e.getStorage,r=e.setStorage,n=e.nextStatus,a=e.nextStepStatus,o=e.message,s=e.details,i=e.errorCode,l=void 0===i?null:i,u=e.hasAlreadyProceededToSign,c=t().swapDetails,p=V(c);if(a&&p&&(p.status=a),n&&(c.status=n),c.hasAlreadyProceededToSign=u,n&&["failed","success"].includes(n)&&(c.finishTime=(new Date).getTime().toString()),(o||s)&&(c.extraMessage=o||"",c.extraMessageDetail=s||""),a&&["failed"].includes(a)){var d,f=s&&s.includes("Warning")?"Swap canceled by user.":s,g=null==(d=F(c,p))?void 0:d.walletType;c.extraMessageSeverity=exports.MessageSeverity.error,K().reportFailure({requestId:c.requestId,step:(null==p?void 0:p.id)||1,eventType:N(l),reason:f||"",data:g?{wallet:g}:void 0}).then().catch()}else a&&["running"].includes(a)?c.extraMessageSeverity=exports.MessageSeverity.info:a&&["success","approved"].includes(a)?c.extraMessageSeverity=exports.MessageSeverity.success:a&&["waitingForApproval"].includes(a)&&(c.extraMessageSeverity=exports.MessageSeverity.warning);return"running"===a&&p&&(p.startTransactionTime=(new Date).getTime()),r(w({},t(),{swapDetails:c})),{swap:c,step:p}}function Y(e,t,r,n,a){var o=e.getStorage,s=e.setStorage,i=o().swapDetails;i.hasAlreadyProceededToSign=null;var l=V(i);l.executedTransactionId=t,l.executedTransactionTime=(new Date).getTime().toString(),a&&(l.explorerUrl=[].concat(l.explorerUrl||[],[{url:a,description:"approve"}])),"check_tx_status"===n?(i.extraMessage="Checking transaction status ...",i.extraMessageDetail="",i.extraMessageSeverity=exports.MessageSeverity.info):"check_approve_tx_status"===n&&(i.extraMessage="Checking approve transaction status ...",i.extraMessageDetail="",i.extraMessageSeverity=exports.MessageSeverity.info),s(w({},o(),{swapDetails:i})),n&&r({eventType:n,swap:i,step:l})}function z(e,t){return w(t.swap.hasAlreadyProceededToSign?{eventType:"transaction_expired"}:{eventType:e},t)}function Z(e){var t=e.getStorage,r=e.setStorage,a=t().swapDetails,o=V(a);if(o){var s=ce(a).type,i=L(a,o),l="Change "+s+" wallet network to "+i,u="";s===n.WalletType.META_MASK&&(u="(Networks -> Select '"+i+"' network.)");var c="Please change your "+s+" wallet network to "+i+". "+u,p=new Date;return a.lastNotificationTime=p.getTime().toString(),o.networkStatus=exports.PendingSwapNetworkStatus.WaitingForNetworkChange,a.networkStatusExtraMessage=l,a.networkStatusExtraMessageDetail=c,r(w({},t(),{swapDetails:a})),{swap:a,step:o}}}function $(e){var t=e.getStorage,r=e.setStorage,n=e.notifier,a=t().swapDetails,o=V(a);if(o)return a.networkStatusExtraMessage="",a.networkStatusExtraMessageDetail="",o.networkStatus=exports.PendingSwapNetworkStatus.WaitingForQueue,n({eventType:"waiting_for_queue",swap:a,step:o}),r(w({},t(),{swapDetails:a})),{swap:a,step:o}}function ee(e){return new Promise((function(t){return setTimeout(t,e)}))}var te,re=function(e){return e.type===o.TransactionType.EVM},ne=function(e){return e.type===o.TransactionType.COSMOS},ae=function(e){return e.type===o.TransactionType.SOLANA},oe=function(e){return e.type===o.TransactionType.TRANSFER},se=function(e){return e.type===o.TransactionType.STARKNET},ie=function(e){return e.type===o.TransactionType.TRON};function le(e){return null===e||null===(null==e?void 0:e.blockchains)||0===(null==e?void 0:e.blockchains.length)}function ue(e,t){return t&&e[t]?e[t].size?e[t].get(n.Network.ETHEREUM):e[t]:null}function ce(e){var t=V(e),r=I(e,t);if(!r)return{type:null,network:null,address:null};var n=function(e,t){var r;return null==(r=e.wallets[t])?void 0:r.walletType}(e,r),a=e.wallets[r];return{type:n||null,network:r,address:a?a.address:null}}function pe(e){return de.apply(this,arguments)}function de(){return(de=h(T().mark((function e(t){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.request({method:"eth_chainId"});case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=null==t?void 0:t.chainId;case 5:return e.abrupt("return",e.t0);case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function fe(e,t,r,n,a){return ge.apply(this,arguments)}function ge(){return(ge=h(T().mark((function e(t,r,a,o,s){var i,l,u,c,p;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!le(a)){e.next=2;break}return e.abrupt("return",!1);case 2:if(i=I(t,r)){e.next=5;break}return e.abrupt("return",!1);case 5:if(!o.evmBasedChains.find((function(e){return e.name===i}))){e.next=29;break}if(e.prev=6,!(l=t.wallets[i])){e.next=23;break}if(![n.WalletType.META_MASK,n.WalletType.BINANCE_CHAIN,n.WalletType.XDEFI,n.WalletType.WALLET_CONNECT,n.WalletType.TRUST_WALLET,n.WalletType.COIN98,n.WalletType.EXODUS,n.WalletType.OKX,n.WalletType.COINBASE,n.WalletType.TOKEN_POCKET,n.WalletType.MATH,n.WalletType.SAFEPAL,n.WalletType.COSMOSTATION,n.WalletType.CLOVER,n.WalletType.BRAVE,n.WalletType.FRONTIER,n.WalletType.KUCOIN,n.WalletType.ENKRYPT].includes(l.walletType)){e.next=22;break}return u=ue(s,l.walletType),e.next=13,pe(u);case 13:if(!(c=e.sent)){e.next=20;break}if(!(p=n.getBlockChainNameFromId(c,Object.entries(o.blockchains).map((function(e){return e[1]}))))||p.toLowerCase()!==i.toLowerCase()){e.next=18;break}return e.abrupt("return",!0);case 18:if(!p||p.toLowerCase()===i.toLowerCase()){e.next=20;break}return e.abrupt("return",!1);case 20:e.next=23;break;case 22:return e.abrupt("return",!0);case 23:e.next=28;break;case 25:e.prev=25,e.t0=e.catch(6),console.log(e.t0);case 28:return e.abrupt("return",!1);case 29:return e.abrupt("return",!0);case 30:case"end":return e.stop()}}),e,null,[[6,25]])})))).apply(this,arguments)}function ve(e){var t=e.getStorage,r=e.setStorage,n=t().swapDetails,a=V(n);null!=a&&a.networkStatus&&(a.networkStatus=null,r(w({},t(),{swapDetails:n})))}function Te(e,t){void 0===t&&(t={message:"",details:"",status:null});var r=t.message,n=t.details,a=t.status,o=e.getStorage,s=e.setStorage,i=o().swapDetails,l=V(i);null!=l&&l.networkStatus&&(i.networkStatusExtraMessage=r,i.networkStatusExtraMessageDetail=n,l.networkStatus=a,s(w({},o(),{swapDetails:i})))}function Se(e,t){var r=ce(e),n=r.type,o=r.address;if(!n||!o)return{ok:!1,reason:"not_connected"};var s=t(n);return s.connected?{ok:(s.accounts||[]).some((function(e){var t=a.readAccountAddress(e);return o===t.address})),reason:"account_miss_match"}:{ok:!1,reason:"not_connected"}}function he(e){var r=e.getStorage,a=e.setStorage,s=e.failed,i=e.next,l=e.schedule,u=e.context,c=u.meta,p=u.getSigners,d=u.notifier,f=r().swapDetails,g=V(f),v=g.evmTransaction,T=g.evmApprovalTransaction,S=g.cosmosTransaction,h=g.solanaTransaction,x=g.transferTransaction,y=g.tronTransaction,m=g.tronApprovalTransaction,E=g.starknetTransaction,_=g.starknetApprovalTransaction,A=U(f,g),k=P(f,g),C=p(A.walletType),N=function(){e.context.resetClaimedBy&&e.context.resetClaimedBy()};if(T){if(!(null==T?void 0:T.to))throw b.AssertionFailed("contract address is null for checking approval");var O=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(A.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},O)),void C.getSigner(o.TransactionType.EVM).signAndSendTx(T,k,null).then((function(r){var n=function(e,t,r){var n=r.find((function(e){return e.name===t}));if(!n)throw Error("unsupported network: "+t+" for getting approve url.");if(n.info.transactionUrl)return n.info.transactionUrl.replace("{txHash}",e.toLowerCase());throw Error("Explorer url for "+t+" is not implemented")}(r,L(f,g),c.evmBasedChains);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"contract_rejected"},p)),s(),N()}}))}if(m){var M=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(A.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},M)),void C.getSigner(o.TransactionType.TRON).signAndSendTx(m,k,null).then((function(r){var n=function(e){return"https://tronscan.org/#/transaction/{txHash}".replace("{txHash}",e.toLowerCase())}(r);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"contract_rejected"},p)),s(),N()}}))}if(_){var R=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(A.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},R)),void C.getSigner(o.TransactionType.STARKNET).signAndSendTx(_,k,null).then((function(r){var n=function(e){return"https://starkscan.co/tx/{txHash}".replace("{txHash}",e.toLowerCase())}(r);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"contract_rejected"},p)),s(),N()}}))}var I="boolean"==typeof f.hasAlreadyProceededToSign,W=I?"failed":"running",F=I?"TX_EXPIRED":null,B=I?"Transaction is expired. Please try again":"executing transaction",H=A.walletType===n.WalletType.WALLET_CONNECT?"Check your mobile phone":"";if(x){var j=z("confirm_transfer",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(j),"transaction_expired"===j.eventType?(s(),N()):C.getSigner(o.TransactionType.TRANSFER).signAndSendTx(x,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:t.extraMessageErrorCode});d(w({eventType:"transfer_rejected"},n)),s(),N()}}))}else if(v){var K=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(K),"transaction_expired"===K.eventType?(s(),N()):C.getSigner(o.TransactionType.EVM).signAndSendTx(v,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"smart_contract_call_failed"},p)),s(),N()}}))}else if(S){var X=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));if(d(X),"transaction_expired"===X.eventType)s(),N();else{if(("TerraSwap"===(null==g?void 0:g.swapperId.toString())||"ThorChain"===(null==g?void 0:g.swapperId.toString())&&(null==g?void 0:g.fromBlockchain)===n.Network.TERRA||"Terra Bridge"===(null==g?void 0:g.swapperId.toString())&&g.fromBlockchain===n.Network.TERRA)&&A.walletType===n.WalletType.KEPLR){var G=D("Keplr only supports IBC Transactions on Terra. Using Terra Bridge, TerraSwap and THORChain is not possible with Keplr. Please use TerraStation or Leap wallet"),Q=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:G.extraMessage,details:G.extraMessageDetail,errorCode:G.extraMessageErrorCode});return d(w({eventType:"smart_contract_call_failed"},Q)),s(),void N()}C.getSigner(o.TransactionType.COSMOS).signAndSendTx(S,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:t.extraMessageErrorCode});d(w({eventType:"smart_contract_call_failed"},n)),s(),N()}}))}}else if(h){var Z=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));if(d(Z),"transaction_expired"===Z.eventType)s(),N();else{var $=h;C.getSigner(o.TransactionType.SOLANA).signAndSendTx($,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:t.extraMessageErrorCode});d(w({eventType:"smart_contract_call_failed"},n)),s(),N()}}))}}else if(y){var ee=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(ee),"transaction_expired"===ee.eventType?(s(),N()):C.getSigner(o.TransactionType.TRON).signAndSendTx(y,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"smart_contract_call_failed"},p)),s(),N()}}))}else if(E){var te=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(te),"transaction_expired"===te.eventType?(s(),N()):C.getSigner(o.TransactionType.STARKNET).signAndSendTx(E,k,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==A?void 0:A.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"smart_contract_call_failed"},p)),s(),N()}}))}}function we(e){null==e||e.getAll().forEach((function(e){if(Object.keys(e.list.state.tasks).some((function(t){var n,a=e.list.state.tasks[t];return a.status===s.Status.BLOCKED&&[r.WAIT_FOR_NETWORK_CHANGE,r.DEPENDS_ON_OTHER_QUEUES].includes(null==(n=a.blockedFor)?void 0:n.reason)}))){var t,n=null==(t=e.list.getStorage())?void 0:t.swapDetails;if("running"===n.status){var a=ce(n),o=k(a.type);e.list.block({reason:{reason:r.WAIT_FOR_CONNECT_WALLET,description:o}})}}}))}function xe(e,t,r,n){var a;void 0===n&&(n={fallbackToOnlyWallet:!0});var o=Q(e),i=o[0],l=o[1];if(i&&l){var u=[],c=[];null==r||r.getAll().forEach((function(e){if(e.status===s.Status.BLOCKED){var t=e.list.getStorage(),r=null==t?void 0:t.swapDetails;if(r&&"running"===r.status){var n,a,o=V(r);o&&(I(r,o)==l&&(null==t||null==(n=t.swapDetails.wallets[l])?void 0:n.walletType)===i?u.push(e.list):(null==t||null==(a=t.swapDetails.wallets[o.fromBlockchain])?void 0:a.walletType)===i&&c.push(e.list))}}}));var p=void 0;if(u.length>0){if(p=u[0],u.length>1)for(var d=1;d<u.length;d++){var f=u[d];$({getStorage:f.getStorage.bind(f),setStorage:f.setStorage.bind(f),notifier:t})}}else c.length>0&&n.fallbackToOnlyWallet&&(p=c[0]);null==(a=p)||a.checkBlock()}}function ye(e){return!!e.evmTransaction||!!e.evmApprovalTransaction}function me(e){return Ee.apply(this,arguments)}function Ee(){return(Ee=h(T().mark((function e(t){var r;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t;case 3:if((r=e.sent).ok&&r.transaction){e.next=6;break}throw b.CreateTransaction(r.error||"bad response from create tx endpoint");case 6:return e.abrupt("return",r);case 9:throw e.prev=9,e.t0=e.catch(0),e.t0;case 12:case"end":return e.stop()}}),e,null,[[0,9]])})))).apply(this,arguments)}function _e(e){return Ae.apply(this,arguments)}function Ae(){return(Ae=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,x,y,m,E,_,A,k,C,b,N,O;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g=r.setStorage,v=r.next,S=r.schedule,h=r.retry,x=r.failed,y=r.context,m=(f=r.getStorage)().swapDetails,E=V(m),_=E.executedTransactionId,A=null,e.prev=5,e.next=8,K().checkStatus({requestId:m.requestId,txId:_,step:E.id});case 8:A=e.sent,e.next=17;break;case 11:return e.prev=11,e.t0=e.catch(5),e.next=15,ee(3e3);case 15:return h(),e.abrupt("return");case 17:if("failed"!==(null==E?void 0:E.status)){e.next=19;break}return e.abrupt("return");case 19:if(k=(null==(n=A)?void 0:n.outputAmount)||(E.outputAmount?E.outputAmount:null),C=E.outputAmount||null,m.extraMessage=(null==(a=A)?void 0:a.extraMessage)||m.extraMessage,m.extraMessageSeverity=exports.MessageSeverity.info,m.extraMessageDetail="",E.status=(null==(o=A)?void 0:o.status)||E.status,E.diagnosisUrl=(null==(s=A)?void 0:s.diagnosisUrl)||E.diagnosisUrl||null,E.outputAmount=k||E.outputAmount,E.explorerUrl=(null==(i=A)?void 0:i.explorerUrl)||E.explorerUrl,E.internalSteps=(null==(l=A)?void 0:l.steps)||null,(b=null==(u=A)?void 0:u.newTx)&&(E.status="created",E.executedTransactionId=null,E.executedTransactionTime=null,E.transferTransaction=null,E.cosmosTransaction=null,E.evmTransaction=null,E.solanaTransaction=null,E.evmApprovalTransaction=null,E.starknetApprovalTransaction=null,E.starknetTransaction=null,E.tronApprovalTransaction=null,E.tronTransaction=null,re(b)?b.isApprovalTx?E.evmApprovalTransaction=b:E.evmTransaction=b:ne(b)?E.cosmosTransaction=b:ae(b)?E.solanaTransaction=b:oe(b)?E.transferTransaction=b:se(b)?b.isApprovalTx?E.starknetApprovalTransaction=b:E.starknetTransaction=b:ie(b)&&(b.isApprovalTx?E.tronApprovalTransaction=b:E.tronTransaction=b)),null===C&&null!==k?y.notifier({eventType:"step_completed_with_output",swap:m,step:E}):null===C&&null===k&&y.notifier({eventType:"check_tx_status",swap:m,step:E}),"success"===E.status?(N=W(m,E),m.extraMessageDetail="",m.extraMessage=N?"starting next step: "+N.swapperId+": "+N.fromBlockchain+" -> "+N.toBlockchain:""):"failed"===E.status&&(m.extraMessage="Transaction failed in blockchain",m.extraMessageSeverity=exports.MessageSeverity.error,m.extraMessageDetail=(null==(O=A)?void 0:O.extraMessage)||"",m.status="failed",m.finishTime=(new Date).getTime().toString()),g(w({},f(),{swapDetails:m})),"failed"!==(null==(c=A)?void 0:c.status)){e.next=38;break}x(),e.next=46;break;case 38:if(!("success"===(null==(p=A)?void 0:p.status)||"running"===(null==(d=A)?void 0:d.status)&&A.newTx)){e.next=43;break}S(t.SCHEDULE_NEXT_STEP),v(),e.next=46;break;case 43:return e.next=45,ee(3e3);case 45:h();case 46:case"end":return e.stop()}}),e,null,[[5,11]])})))).apply(this,arguments)}function ke(e){return Ce.apply(this,arguments)}function Ce(){return(Ce=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=r.setStorage,o=r.next,s=r.schedule,i=r.retry,l=r.failed,u=r.context,c=(n=r.getStorage)().swapDetails,p=V(c),d=!1,e.prev=4,e.next=7,K().checkApproval(c.requestId,p.executedTransactionId||"");case 7:if(f=e.sent,"failed"!==(null==p?void 0:p.status)){e.next=10;break}return e.abrupt("return");case 10:(d=f.isApproved)||"failed"!==f.txStatus&&"success"!==f.txStatus?d||u.notifier({eventType:"check_approve_tx_status",swap:c,step:p}):("failed"===f.txStatus?(g="Approve transaction failed",v="Smart contract approval failed in blockchain."):(g="Not enough approval",v=f.requiredApprovedAmount&&f.currentApprovedAmount?"Required approval: "+f.requiredApprovedAmount+", current approval: "+f.currentApprovedAmount:"You still don't have enough approval for this swap."),S=J({getStorage:n,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",errorCode:"SEND_TX_FAILED",message:g,details:v}),u.notifier(w({eventType:"smart_contract_call_failed"},S)),l()),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(4),d=!1;case 17:if(!d){e.next=33;break}p.status="approved",c.extraMessage="Spending "+p.fromSymbol+" approved successfully.",c.extraMessageDetail=null,c.extraMessageSeverity=exports.MessageSeverity.success,p.evmApprovalTransaction=null,p.executedTransactionId=null,p.executedTransactionTime=null,p.starknetApprovalTransaction=null,p.tronApprovalTransaction=null,a(w({},n(),{swapDetails:c})),u.notifier({eventType:"contract_confirmed",swap:c,step:p}),s(t.SCHEDULE_NEXT_STEP),o(),e.next=36;break;case 33:return e.next=35,ee(2e3);case 35:i();case 36:case"end":return e.stop()}}),e,null,[[4,14]])})))).apply(this,arguments)}function be(){return(be=h(T().mark((function e(t){var r,n;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.getStorage().swapDetails,n=V(r),ve(t),"running"!==n.status){e.next=8;break}return e.next=6,_e(t);case 6:e.next=11;break;case 8:if("waitingForApproval"!==n.status){e.next=11;break}return e.next=11,ke(t);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ne(){return(Ne=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,x,y,m,E;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.setStorage,o=r.next,s=r.schedule,i=r.context,l=(a=r.getStorage)().swapDetails,u=V(l),c=u.cosmosTransaction,p=u.transferTransaction,d=u.evmApprovalTransaction,f=u.solanaTransaction,g=u.tronTransaction,v=u.tronApprovalTransaction,S=u.starknetTransaction,h=u.starknetApprovalTransaction,u.evmTransaction||d||g||v||S||h||c||p||f){e.next=25;break}return x={requestId:l.requestId,step:u.id,userSettings:{slippage:l.settings.slippage,infiniteApprove:l.settings.infiniteApprove},validations:{balance:l.validateBalanceOrFee,fee:l.validateBalanceOrFee}},e.prev=6,e.next=9,me(K().createTransaction(x));case 9:(y=e.sent.transaction)&&(re(y)?y.isApprovalTx?u.evmApprovalTransaction=y:u.evmTransaction=y:ne(y)?u.cosmosTransaction=y:ae(y)?u.solanaTransaction=y:oe(y)?u.transferTransaction=y:se(y)?y.isApprovalTx?u.starknetApprovalTransaction=y:u.starknetTransaction=y:ie(y)&&(y.isApprovalTx?u.tronApprovalTransaction=y:u.tronTransaction=y)),n(w({},a(),{swapDetails:l})),s(t.EXECUTE_TRANSACTION),o(),e.next=25;break;case 17:e.prev=17,e.t0=e.catch(6),l.status="failed",l.finishTime=(new Date).getTime().toString(),m=D(e.t0),E=J({getStorage:a,setStorage:n,nextStatus:"failed",nextStepStatus:"failed",message:m.extraMessage,details:m.extraMessageDetail,errorCode:"FETCH_TX_FAILED"}),i.notifier(w({eventType:"task_failed"},E)),r.failed();case 25:case"end":return e.stop()}}),e,null,[[6,17]])})))).apply(this,arguments)}function Oe(){return(Oe=h(T().mark((function e(t){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,w,x,y,m,E,_;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.getStorage,s=(o=t.context).meta,i=o.wallets,l=o.providers,u=G(),c=u.claimedBy,p=o.claimedBy===(null==(n=o._queue)?void 0:n.id),d=function(e){t.block(e),p&&t.context.resetClaimedBy&&t.context.resetClaimedBy()},f=a().swapDetails,g=V(f),ve(t),Se(f,o.state).ok){e.next=16;break}return S=ce(f),h=S.type,w=S.address,x=null==i||null==(v=i.blockchains)?void 0:v.find((function(e){var t;return!(null!=(t=e.accounts)&&t.find((function(e){return e.walletType===h})))})),y=!i||x?k(h):A(h,w),d({reason:r.WAIT_FOR_CONNECT_WALLET,description:y}),e.abrupt("return");case 16:return e.next=18,fe(f,g,i,s,l);case 18:if(m=e.sent,!c()||p||m){e.next=28;break}return d({reason:r.DEPENDS_ON_OTHER_QUEUES,details:"Waiting for other swaps to complete"}),e.abrupt("return");case 28:if(m){e.next=36;break}return E=L(f,g),_=C(E),d({reason:r.WAIT_FOR_NETWORK_CHANGE,details:_}),e.abrupt("return");case 36:Te(t,{message:"",details:"Wallet network changed successfully",status:exports.PendingSwapNetworkStatus.NetworkChanged});case 37:if(!ye(g)||p){e.next=42;break}return d({reason:r.DEPENDS_ON_OTHER_QUEUES,description:"Waiting for other swaps to complete",details:{}}),e.abrupt("return");case 42:he(t);case 43:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Me={name:"swap",actions:(te={},te[t.START]=function(e){var r=e.next;(0,e.schedule)(t.SCHEDULE_NEXT_STEP),r()},te[t.SCHEDULE_NEXT_STEP]=function(e){var r=e.schedule,n=e.next,a=e.failed,o=e.setStorage,s=e.getStorage,i=e.context,l=s().swapDetails,u=V(l),c=l.steps.find((function(e){return"failed"===e.status}));if(u&&!c){if(function(e,t){var r,n,a,o,s,i,l,u,c;return null!==(e.wallets[(null==(r=t.evmTransaction)?void 0:r.blockChain)||""]||e.wallets[(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||""]||e.wallets[(null==(a=t.tronTransaction)?void 0:a.blockChain)||""]||e.wallets[(null==(o=t.tronApprovalTransaction)?void 0:o.blockChain)||""]||e.wallets[(null==(s=t.starknetTransaction)?void 0:s.blockChain)||""]||e.wallets[(null==(i=t.starknetApprovalTransaction)?void 0:i.blockChain)||""]||e.wallets[(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||""]||e.wallets[(null==(u=t.solanaTransaction)?void 0:u.blockChain)||""]||(null==(c=t.transferTransaction)?void 0:c.fromWalletAddress)||null)}(l,u))return r(t.EXECUTE_TRANSACTION),n();if(null!=u&&u.executedTransactionId)return r(t.CHECK_TRANSACTION_STATUS),n();l.status="running",o(w({},s(),{swapDetails:l})),r(t.CREATE_TRANSACTION),n()}else l.status=c?"failed":"success",l.finishTime=(new Date).getTime().toString(),o(w({},s(),{swapDetails:l})),i.notifier({eventType:c?"task_failed":"task_completed",swap:l,step:null}),c?a():n()},te[t.CREATE_TRANSACTION]=function(e){return Ne.apply(this,arguments)},te[t.EXECUTE_TRANSACTION]=function(e){return Oe.apply(this,arguments)},te[t.CHECK_TRANSACTION_STATUS]=function(e){return be.apply(this,arguments)},te),run:[t.START],whenTaskBlocked:function(e,t){e.reason.reason===r.WAIT_FOR_CONNECT_WALLET?function(e,t){var r=t.context,n=t.queue,a=n.getStorage().swapDetails,o=Se(a,r.state),s=o.reason;if(!o.ok){var i=V(a);return r.notifier({eventType:"account_miss_match"===s?"waiting_for_change_wallet_account":"waiting_for_connecting_wallet",swap:a,step:i}),void function(e,t,r){var n=e.getStorage,a=e.setStorage,o=n().swapDetails,s=V(o);if(s){var i=new Date;o.lastNotificationTime=i.getTime().toString(),s.networkStatus===exports.PendingSwapNetworkStatus.WaitingForConnectingWallet&&o.networkStatusExtraMessage===t&&o.networkStatusExtraMessageDetail===r||(s.networkStatus=exports.PendingSwapNetworkStatus.WaitingForConnectingWallet,o.networkStatusExtraMessage=t,o.networkStatusExtraMessageDetail=r,a(w({},n(),{swapDetails:o})))}}({getStorage:n.getStorage.bind(n),setStorage:n.setStorage.bind(n)},"Waiting for connecting wallet",e.reason.description)}n.unblock()}(e,t):e.reason.reason===r.WAIT_FOR_NETWORK_CHANGE?function(e,t){var r=t.context,n=t.queue,a=n.getStorage().swapDetails;if(V(a)&&"running"===a.status){var o=Z({getStorage:n.getStorage.bind(n),setStorage:n.setStorage.bind(n)});o&&r.notifier({eventType:"waiting_for_network_change",swap:o.swap,step:o.step});var s=ce(a),i=s.type,l=s.network;if(i&&l){var u=r.switchNetwork(i,l);u&&u.then((function(){n.unblock()})).catch((function(e){console.log({error:e})}))}}}(0,t):e.reason.reason===r.DEPENDS_ON_OTHER_QUEUES&&function(e,t){var n=t.getBlockedTasks,a=t.forceExecute,o=t.queue,s=t.manager,i=t.context,l=G(),u=l.setClaimer,c=l.claimedBy,p=l.reset,d=n().filter((function(e){return e.reason.reason===r.DEPENDS_ON_OTHER_QUEUES}));if(0!==d.length){var f=c();if(f!==o.id)if(f)$({getStorage:o.getStorage.bind(o),setStorage:o.setStorage.bind(o),notifier:i.notifier});else{var g=d.find((function(e){return e.queue_id===t.queue_id}));g||(g=d[0]),u(g.queue_id);var v=ce(g.storage.get().swapDetails),T=v.type,S=v.network,h=v.address;a(g.queue_id,{claimedBy:c(),resetClaimedBy:function(){p(),xe(T+"-"+S+":"+h,i.notifier,s)}})}}}(0,t)}};function De(){return!!window.localStorage.getItem("migratedToQueueManager")}function Re(){return Ie.apply(this,arguments)}function Ie(){return(Ie=h(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,window.indexedDB.databases();case 3:return e.abrupt("return",e.sent.map((function(e){return e.name})).includes(s.DB_NAME));case 6:return e.prev=6,e.t0=e.catch(0),e.abrupt("return",!1);case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))).apply(this,arguments)}function Le(){return We.apply(this,arguments)}function We(){return(We=h(T().mark((function e(){var r,n,a,o,i,l;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=window.localStorage.getItem("pendingSwaps"),e.next=3,Re();case 3:if(n=e.sent,r&&!De()&&!n){e.next=6;break}return e.abrupt("return",!0);case 6:return a=JSON.parse(r),o=[],a.forEach((function(e){if("running"===e.status){var r,n=d.v4(),a={id:e.requestId,createdAt:Number(e.creationTime),name:"swap",status:s.Status.RUNNING,storage:{swapDetails:e},state:{status:s.Status.RUNNING,activeTaskIndex:0,tasks:(r={},r[n]={blockedFor:null,status:s.Status.RUNNING},r)},tasks:[{id:n,action:t.SCHEDULE_NEXT_STEP}]};o.push(a)}else{var i="success"===e.status?s.Status.SUCCESS:s.Status.FAILED,l={id:e.requestId,createdAt:Number(e.creationTime),name:"swap",status:i,storage:{swapDetails:e},state:{status:i,activeTaskIndex:0,tasks:{}},tasks:[]};o.push(l)}})),i=new s.Persistor,l=o.map((function(e){return i.insertQueue(e)})),e.next=13,Promise.all(l);case 13:return window.localStorage.setItem("migratedToQueueManager","1"),e.abrupt("return",!0);case 15:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Pe=0;exports.PrettyError=b,exports.calculatePendingSwap=function(e,t,r,n,a,o){var s,i,l=t.result;if(!l)throw Error("Simulation result should not be null");return{creationTime:(new Date).getTime().toString(),finishTime:null,requestId:t.requestId||"",inputAmount:e,wallets:r,status:"running",isPaused:!1,extraMessage:null,extraMessageSeverity:null,extraMessageDetail:null,extraMessageErrorCode:null,networkStatusExtraMessage:null,networkStatusExtraMessageDetail:null,lastNotificationTime:null,settings:n,simulationResult:l,validateBalanceOrFee:a,steps:(null==(s=t.result)||null==(i=s.swaps)?void 0:i.map((function(e,t){return{id:t+1,fromBlockchain:e.from.blockchain,fromBlockchainLogo:e.from.blockchainLogo,fromLogo:e.from.logo,fromSymbol:e.from.symbol,fromSymbolAddress:e.from.address,fromDecimals:e.from.decimals,fromAmountPrecision:e.fromAmountPrecision,fromAmountMinValue:e.fromAmountMinValue,fromAmountMaxValue:e.fromAmountMaxValue,fromAmountRestrictionType:e.fromAmountRestrictionType,toBlockchain:e.to.blockchain,toBlockchainLogo:e.to.blockchainLogo,toSymbol:e.to.symbol,toSymbolAddress:e.to.address,toDecimals:e.to.decimals,toLogo:e.to.logo,swapperId:e.swapperId,swapperLogo:e.swapperLogo,swapperType:e.swapperType,expectedOutputAmountHumanReadable:e.toAmount,outputAmount:"",feeInUsd:o?R(H(e,null==o?void 0:o.tokens),null,8):null,estimatedTimeInSeconds:e.estimatedTimeInSeconds||null,status:"created",networkStatus:null,startTransactionTime:(new Date).getTime(),externalTransactionId:null,executedTransactionId:null,executedTransactionTime:null,explorerUrl:null,diagnosisUrl:null,trackingCode:null,internalSteps:null,evmTransaction:null,evmApprovalTransaction:null,starknetTransaction:null,starknetApprovalTransaction:null,tronTransaction:null,tronApprovalTransaction:null,cosmosTransaction:null,solanaTransaction:null,transferTransaction:null,hasAlreadyProceededToSign:!1}})))||[]}},exports.cancelSwap=function(e,t){var r=G().reset;e.actions.cancel();var n=J({getStorage:e.actions.getStorage,setStorage:e.actions.setStorage,message:"Swap canceled by user.",details:"Warning: If you've already signed and sent a transaction, it won't be affected, but next swap steps will not be executed.",nextStatus:"failed",nextStepStatus:"failed",errorCode:"USER_CANCEL"});return r(),t&&(null==t||t.retry()),n},exports.checkWaitingForNetworkChange=we,exports.getCurrentBlockchainOfOrNull=I,exports.getCurrentStep=V,exports.getEvmProvider=ue,exports.getRelatedWallet=U,exports.getRelatedWalletOrNull=F,exports.getRequiredWallet=ce,exports.getRunningSwaps=function(e){var t=(null==e?void 0:e.getAll())||new Map,r=[];return t.forEach((function(e){var t=e.list.getStorage(),n=null==t?void 0:t.swapDetails;n&&"running"===n.status&&r.push(n)})),r},exports.makeQueueDefinition=function(e){return v(e),Me},exports.prettifyErrorMessage=D,exports.resetRunningSwapNotifsOnPageLoad=function(e,t){e.forEach((function(e){var r,n=V(e);(null==n?void 0:n.networkStatus)===exports.PendingSwapNetworkStatus.WaitingForQueue?r="waiting_for_queue":"running"===(null==e?void 0:e.status)&&(r="waiting_for_connecting_wallet"),r&&t&&t({eventType:r,swap:e,step:n})}))},exports.splitWalletNetwork=Q,exports.updateSwapStatus=J,exports.useMigration=function(){var e=De(),t=p.useState(e),r=t[0],n=t[1];return p.useEffect((function(){h(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Pe){e.next=2;break}return e.abrupt("return");case 2:Pe=1,Le().finally((function(){n(!0)}));case 4:case"end":return e.stop()}}),e)})))()}),[]),{status:r}},exports.useQueueManager=function(e){var t=c.useManager().manager;p.useEffect((function(){e.lastConnectedWallet&&(function(e){var t=e.evmChains,n=e.manager,a=Q(e.wallet_network),o=a[0],i=a[1];t.some((function(e){return e.name==i}))&&(null==n||n.getAll().forEach((function(t){var n=t.list.getStorage(),a=null==n?void 0:n.swapDetails;if(a&&"running"===a.status){var l=V(a);if(l){var u,c=null==n||null==(u=n.swapDetails.wallets[l.fromBlockchain])?void 0:u.walletType,p=Object.keys(t.list.state.tasks).some((function(e){var n,a=t.list.state.tasks[e];return a.status===s.Status.BLOCKED&&[r.WAIT_FOR_CONNECT_WALLET].includes(null==(n=a.blockedFor)?void 0:n.reason)}));if(c===o&&p&&I(a,l)!=i){var d=t.list,f=ce(a),g=C(f.type);t.list.block({reason:{reason:r.WAIT_FOR_NETWORK_CHANGE,description:g},silent:!0});var v=Z({getStorage:d.getStorage.bind(d),setStorage:d.setStorage.bind(d)});v&&(null==e||e.notifier({eventType:"waiting_for_network_change",swap:v.swap,step:v.step}))}}}})))}({evmChains:e.evmChains,wallet_network:e.lastConnectedWallet,manager:t,notifier:e.notifier}),xe(e.lastConnectedWallet,e.notifier,t))}),[e.lastConnectedWallet]),p.useEffect((function(){e.disconnectedWallet&&(we(t),e.clearDisconnectedWallet())}),[e.disconnectedWallet])};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t,r,n=require("@rango-dev/wallets-shared"),a=require("@rango-dev/wallets-core"),o=require("rango-sdk"),s=require("@rango-dev/queue-manager-core"),i=require("rango-types"),l=(e=require("bignumber.js"))&&"object"==typeof e&&"default"in e?e.default:e,u=require("@sentry/browser"),c=require("@rango-dev/queue-manager-react"),p=require("react"),d=require("uuid"),f={API_KEY:"c6381a79-2817-4602-83bf-6a641a409e32"};function g(e){return f[e]||""}function v(e){var t;return t="function"==typeof structuredClone?structuredClone(e):JSON.parse(JSON.stringify(e)),f=t}function T(){T=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},o=a.iterator||"@@iterator",s=a.asyncIterator||"@@asyncIterator",i=a.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function u(e,t,r,a){var o=Object.create((t&&t.prototype instanceof d?t:d).prototype),s=new A(a||[]);return n(o,"_invoke",{value:m(e,r,s)}),o}function c(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var p={};function d(){}function f(){}function g(){}var v={};l(v,o,(function(){return this}));var S=Object.getPrototypeOf,h=S&&S(S(k([])));h&&h!==t&&r.call(h,o)&&(v=h);var w=g.prototype=d.prototype=Object.create(v);function x(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function y(e,t){var a;n(this,"_invoke",{value:function(n,o){function s(){return new t((function(a,s){!function n(a,o,s,i){var l=c(e[a],e,o);if("throw"!==l.type){var u=l.arg,p=u.value;return p&&"object"==typeof p&&r.call(p,"__await")?t.resolve(p.__await).then((function(e){n("next",e,s,i)}),(function(e){n("throw",e,s,i)})):t.resolve(p).then((function(e){u.value=e,s(u)}),(function(e){return n("throw",e,s,i)}))}i(l.arg)}(n,o,a,s)}))}return a=a?a.then(s,s):s()}})}function m(e,t,r){var n="suspendedStart";return function(a,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===a)throw o;return{value:void 0,done:!0}}for(r.method=a,r.arg=o;;){var s=r.delegate;if(s){var i=E(s,r);if(i){if(i===p)continue;return i}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=c(e,t,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===p)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var a=c(n,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,p;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,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function _(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 C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(_,this),this.reset(!0)}function k(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:b}}function b(){return{value:void 0,done:!0}}return f.prototype=g,n(w,"constructor",{value:g,configurable:!0}),n(g,"constructor",{value:f,configurable:!0}),f.displayName=l(g,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,l(e,i,"GeneratorFunction")),e.prototype=Object.create(w),e},e.awrap=function(e){return{__await:e}},x(y.prototype),l(y.prototype,s,(function(){return this})),e.AsyncIterator=y,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var s=new y(u(t,r,n,a),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},x(w),l(w,i,"Generator"),l(w,o,(function(){return this})),l(w,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=k,A.prototype={constructor:A,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(C),!e)for(var t in this)"t"===t.charAt(0)&&r.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(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var i=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(i&&l){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(i){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,p):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),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;C(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:k(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},e}function S(e,t,r,n,a,o,s){try{var i=e[o](s),l=i.value}catch(e){return void r(e)}i.done?t(l):Promise.resolve(l).then(n,a)}function h(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function s(e){S(o,n,a,s,i,"next",e)}function i(e){S(o,n,a,s,i,"throw",e)}s(void 0)}))}}function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function x(e){return(x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function y(e,t){return(y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function m(){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 E(e,t,r){return(E=m()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var a=new(Function.bind.apply(e,n));return r&&y(a,r.prototype),a}).apply(null,arguments)}function _(e){var t="function"==typeof Map?new Map:void 0;return(_=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return E(e,arguments,x(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),y(r,e)})(e)}!function(e){e.START="START",e.SCHEDULE_NEXT_STEP="SCHEDULE_NEXT_STEP",e.CREATE_TRANSACTION="CREATE_TRANSACTION",e.EXECUTE_TRANSACTION="EXECUTE_TRANSACTION",e.CHECK_TRANSACTION_STATUS="CHECK_TRANSACTION_STATUS"}(t||(t={})),function(e){e.WAIT_FOR_CONNECT_WALLET="waiting_for_connecting_wallet",e.WAIT_FOR_NETWORK_CHANGE="waiting_for_network_change",e.DEPENDS_ON_OTHER_QUEUES="depends_on_other_queues"}(r||(r={}));var C=function(e,t){return"Please change your "+(e||"wallet")+" account to "+(t||"proper address")},A=function(e){return"Please connect to "+(e||"your wallet")+" by using bellow button or top right button on page."},k=function(e){return"Please change your network to "+e+"."},b=function(e){var t,r;function n(t,r,a,o){var s;return(s=e.call(this,r)||this)._isPrettyError=!0,Object.setPrototypeOf(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(s),n.prototype),n.prototype._isPrettyError=!0,s.code=t,s.detail=o,s.root=a,s}return r=e,(t=n).prototype=Object.create(r.prototype),t.prototype.constructor=t,y(t,r),n.isPrettyError=function(e){return e instanceof n||Object.prototype.hasOwnProperty.call(e,"_isPrettyError")},n.prototype.getErrorDetail=function(){var e="object"==typeof this.root&&this.root&&this.root.error?this.root.error:JSON.stringify(this.root),t="string"==typeof this.root?this.root:this.root instanceof Error?this.root.message:e;return{extraMessage:this.message,extraMessageDetail:this.detail||t,extraMessageErrorCode:this.code||null}},n.AssertionFailed=function(e){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Assertion failed (Unexpected behaviour)",e)},n.BadStatusCode=function(e,t){return new n("TX_FAIL",e,null,"status code = "+t)},n.CreateTransaction=function(e){return new n("FETCH_TX_FAILED","Create transaction failed in Rango Server",null,e)},n.WalletMissing=function(){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Input wallet not found",null,"Server requested for a blockchain or address not selected by user")},n.BlockchainMissing=function(){return new n("CLIENT_UNEXPECTED_BEHAVIOUR","Input wallet not found",null,"Server requested for a blockchain or address not selected by user")},n}(_(Error));function N(e){var t="CLIENT_UNEXPECTED_BEHAVIOUR";try{return e?i.isAPIErrorCode(e)?e:i.isSignerErrorCode(e)?((r={})[i.SignerErrorCode.REJECTED_BY_USER]="USER_REJECT",r[i.SignerErrorCode.SIGN_TX_ERROR]="CALL_WALLET_FAILED",r[i.SignerErrorCode.SEND_TX_ERROR]="SEND_TX_FAILED",r[i.SignerErrorCode.NOT_IMPLEMENTED]=t,r[i.SignerErrorCode.OPERATION_UNSUPPORTED]=t,r[i.SignerErrorCode.UNEXPECTED_BEHAVIOUR]=t,r)[e]:t:t;var r}catch(e){return t}}var O,M,D=function(e){if(!e)return{extraMessage:"",extraMessageErrorCode:null};if(b.isPrettyError(e))return e.getErrorDetail();if(i.SignerError.isSignerError(e)){var t=e.getErrorDetail();return{extraMessage:t.message,extraMessageDetail:t.detail,extraMessageErrorCode:t.code}}return e instanceof Error?{extraMessage:e.toString(),extraMessageErrorCode:null}:"string"!=typeof e?{extraMessage:JSON.stringify(e),extraMessageErrorCode:null}:{extraMessage:e,extraMessageErrorCode:null}},R=function(e,t,r){if(void 0===t&&(t=null),void 0===r&&(r=null),null===e)return"";if(""===e)return"";for(var n=new l(e),a=1e3,o=0;o<60;o++)if(new l(n.toFixed(o,1)).eq(n)){a=o;break}if(n.gte(1e4))return n.toFormat(0,1);if(n.gte(1e3))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,1))),1);if(n.gte(100))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,1))),1);if(n.gte(1))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,2))),1);if(n.gte(.01))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,4))),1);for(var s=t||4;s<17;s++)if(n.gte(Math.pow(10,-s)))return n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,s))),1);return n.isEqualTo(0)?"0":n.toFormat(Math.min(a,Math.min(r||100,Math.max(t||0,8))),1)};(O=exports.PendingSwapNetworkStatus||(exports.PendingSwapNetworkStatus={})).WaitingForConnectingWallet="waitingForConnectingWallet",O.WaitingForQueue="waitingForQueue",O.WaitingForNetworkChange="waitingForNetworkChange",O.NetworkChanged="networkChanged",(M=exports.MessageSeverity||(exports.MessageSeverity={})).error="error",M.warning="warning",M.info="info",M.success="success";var I=function(e,t){try{return L(e,t)}catch(e){return null}},L=function(e,t){var r,n,a,o,s,i,l,u,c,p=(null==(r=t.evmTransaction)?void 0:r.blockChain)||(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||(null==(a=t.starknetTransaction)?void 0:a.blockChain)||(null==(o=t.starknetApprovalTransaction)?void 0:o.blockChain)||(null==(s=t.tronTransaction)?void 0:s.blockChain)||(null==(i=t.tronApprovalTransaction)?void 0:i.blockChain)||(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||(null==(u=t.solanaTransaction)?void 0:u.blockChain);if(p)return p;var d=null==(c=t.transferTransaction)?void 0:c.fromWalletAddress;if(!d)throw b.BlockchainMissing();var f=Object.keys(e.wallets).find((function(t){var r;return(null==(r=e.wallets[t])?void 0:r.address)===d}))||null;if(null==f)throw b.BlockchainMissing();return f};function W(e,t){return e.steps.find((function(e){return"failed"!==e.status&&"success"!==e.status&&e.id!==t.id}))||null}var P=function(e,t){var r,n,a,o,s,i,l,u,c,p,d=e.wallets[(null==(r=t.evmTransaction)?void 0:r.blockChain)||""]||e.wallets[(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||""]||e.wallets[(null==(a=t.tronTransaction)?void 0:a.blockChain)||""]||e.wallets[(null==(o=t.tronApprovalTransaction)?void 0:o.blockChain)||""]||e.wallets[(null==(s=t.starknetTransaction)?void 0:s.blockChain)||""]||e.wallets[(null==(i=t.starknetApprovalTransaction)?void 0:i.blockChain)||""]||e.wallets[(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||""]||e.wallets[(null==(u=t.solanaTransaction)?void 0:u.blockChain)||""]||(null!=(c=t.transferTransaction)&&c.fromWalletAddress?{address:null==(p=t.transferTransaction)?void 0:p.fromWalletAddress}:null)||null;if(null==d)throw b.WalletMissing();return d.address};function U(e,t){var r=P(e,t),a=Object.keys(e.wallets).map((function(t){return{k:t,v:e.wallets[t]}})).find((function(e){return e.v.address===r}))||null,o=(null==a?void 0:a.v)||null,s=null==o?void 0:o.walletType;if(s===n.WalletType.UNKNOWN||null===o)throw b.AssertionFailed("Wallet for source "+((null==a?void 0:a.k)||null)+" not passed: walletType: "+s);return o}function F(e,t){try{return U(e,t)}catch(e){return null}}var B=function(e,t,r,n){var a=null==n?void 0:n.find((function(n){var a;return n.blockchain===e&&(null==(a=n.symbol)?void 0:a.toUpperCase())===(null==t?void 0:t.toUpperCase())&&n.address===r}));return(null==a?void 0:a.usdPrice)||null};function H(e,t){for(var r=new l(0),n=0;n<e.fee.length;n++){var a=e.fee[n];if("DECREASE_FROM_OUTPUT"!==a.expenseType){var o=B(a.asset.blockchain,a.asset.symbol,a.asset.address,t);r=r.plus(new l(a.amount).multipliedBy(o||0))}}return r}function q(e,t,r,n){try{u.captureException(e,{tags:{requestId:t.requestId,rpc:!0,swapper:(null==r?void 0:r.swapperId)||"",walletType:n||""},level:"warning"})}catch(e){console.log({e:e})}}var j=void 0,K=function(){return j||(j=new o.RangoClient(g("API_KEY"),g("BASE_URL")))},X=null;function G(){return{claimedBy:function(){var e;return null==(e=X)?void 0:e.id},setClaimer:function(e){X={id:e}},reset:function(){X=null}}}function Q(e){var t=((null==e?void 0:e.split(":")[0])||"").split("-"),r=t[t.length-1],n=t.slice(0,-1);return n[n.length-1]===r&&n.pop(),[n.join("-"),r]}var V=function(e){return e.steps.find((function(e){return"failed"!==e.status&&"success"!==e.status}))||null};function J(e){var t=e.getStorage,r=e.setStorage,n=e.nextStatus,a=e.nextStepStatus,o=e.message,s=e.details,i=e.errorCode,l=void 0===i?null:i,u=e.hasAlreadyProceededToSign,c=t().swapDetails,p=V(c);if(a&&p&&(p.status=a),n&&(c.status=n),c.hasAlreadyProceededToSign=u,n&&["failed","success"].includes(n)&&(c.finishTime=(new Date).getTime().toString()),(o||s)&&(c.extraMessage=o||"",c.extraMessageDetail=s||""),a&&["failed"].includes(a)){var d,f=s&&s.includes("Warning")?"Swap canceled by user.":s,g=null==(d=F(c,p))?void 0:d.walletType;c.extraMessageSeverity=exports.MessageSeverity.error,K().reportFailure({requestId:c.requestId,step:(null==p?void 0:p.id)||1,eventType:N(l),reason:f||"",data:g?{wallet:g}:void 0}).then().catch()}else a&&["running"].includes(a)?c.extraMessageSeverity=exports.MessageSeverity.info:a&&["success","approved"].includes(a)?c.extraMessageSeverity=exports.MessageSeverity.success:a&&["waitingForApproval"].includes(a)&&(c.extraMessageSeverity=exports.MessageSeverity.warning);return"running"===a&&p&&(p.startTransactionTime=(new Date).getTime()),r(w({},t(),{swapDetails:c})),{swap:c,step:p}}function Y(e,t,r,n,a){var o=e.getStorage,s=e.setStorage,i=o().swapDetails;i.hasAlreadyProceededToSign=null;var l=V(i);l.executedTransactionId=t,l.executedTransactionTime=(new Date).getTime().toString(),a&&(l.explorerUrl=[].concat(l.explorerUrl||[],[{url:a,description:"approve"}])),"check_tx_status"===n?(i.extraMessage="Checking transaction status ...",i.extraMessageDetail="",i.extraMessageSeverity=exports.MessageSeverity.info):"check_approve_tx_status"===n&&(i.extraMessage="Checking approve transaction status ...",i.extraMessageDetail="",i.extraMessageSeverity=exports.MessageSeverity.info),s(w({},o(),{swapDetails:i})),n&&r({eventType:n,swap:i,step:l})}function z(e,t){return w(t.swap.hasAlreadyProceededToSign?{eventType:"transaction_expired"}:{eventType:e},t)}function Z(e){var t=e.getStorage,r=e.setStorage,a=t().swapDetails,o=V(a);if(o){var s=ce(a).type,i=L(a,o),l="Change "+s+" wallet network to "+i,u="";s===n.WalletType.META_MASK&&(u="(Networks -> Select '"+i+"' network.)");var c="Please change your "+s+" wallet network to "+i+". "+u,p=new Date;return a.lastNotificationTime=p.getTime().toString(),o.networkStatus=exports.PendingSwapNetworkStatus.WaitingForNetworkChange,a.networkStatusExtraMessage=l,a.networkStatusExtraMessageDetail=c,r(w({},t(),{swapDetails:a})),{swap:a,step:o}}}function $(e){var t=e.getStorage,r=e.setStorage,n=e.notifier,a=t().swapDetails,o=V(a);if(o)return a.networkStatusExtraMessage="",a.networkStatusExtraMessageDetail="",o.networkStatus=exports.PendingSwapNetworkStatus.WaitingForQueue,n({eventType:"waiting_for_queue",swap:a,step:o}),r(w({},t(),{swapDetails:a})),{swap:a,step:o}}function ee(e){return new Promise((function(t){return setTimeout(t,e)}))}var te,re=function(e){return e.type===o.TransactionType.EVM},ne=function(e){return e.type===o.TransactionType.COSMOS},ae=function(e){return e.type===o.TransactionType.SOLANA},oe=function(e){return e.type===o.TransactionType.TRANSFER},se=function(e){return e.type===o.TransactionType.STARKNET},ie=function(e){return e.type===o.TransactionType.TRON};function le(e){return null===e||null===(null==e?void 0:e.blockchains)||0===(null==e?void 0:e.blockchains.length)}function ue(e,t){return t&&e[t]?e[t].size?e[t].get(n.Network.ETHEREUM):e[t]:null}function ce(e){var t=V(e),r=I(e,t);if(!r)return{type:null,network:null,address:null};var n=function(e,t){var r;return null==(r=e.wallets[t])?void 0:r.walletType}(e,r),a=e.wallets[r];return{type:n||null,network:r,address:a?a.address:null}}function pe(e){return de.apply(this,arguments)}function de(){return(de=h(T().mark((function e(t){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.request({method:"eth_chainId"});case 3:if(e.t0=e.sent,e.t0){e.next=6;break}e.t0=null==t?void 0:t.chainId;case 6:return e.abrupt("return",e.t0);case 10:return e.prev=10,e.t1=e.catch(0),e.abrupt("return",null==t?void 0:t.chainId);case 13:case"end":return e.stop()}}),e,null,[[0,10]])})))).apply(this,arguments)}function fe(e,t,r,n,a){return ge.apply(this,arguments)}function ge(){return(ge=h(T().mark((function e(t,r,a,o,s){var i,l,u,c,p;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!le(a)){e.next=2;break}return e.abrupt("return",!1);case 2:if(i=I(t,r)){e.next=5;break}return e.abrupt("return",!1);case 5:if(!o.evmBasedChains.find((function(e){return e.name===i}))){e.next=29;break}if(e.prev=6,!(l=t.wallets[i])){e.next=23;break}if(![n.WalletType.META_MASK,n.WalletType.BINANCE_CHAIN,n.WalletType.XDEFI,n.WalletType.WALLET_CONNECT,n.WalletType.TRUST_WALLET,n.WalletType.COIN98,n.WalletType.EXODUS,n.WalletType.OKX,n.WalletType.COINBASE,n.WalletType.TOKEN_POCKET,n.WalletType.MATH,n.WalletType.SAFEPAL,n.WalletType.COSMOSTATION,n.WalletType.CLOVER,n.WalletType.BRAVE,n.WalletType.FRONTIER,n.WalletType.KUCOIN,n.WalletType.ENKRYPT].includes(l.walletType)){e.next=22;break}return u=ue(s,l.walletType),e.next=13,pe(u);case 13:if(!(c=e.sent)){e.next=20;break}if(!(p=n.getBlockChainNameFromId(c,Object.entries(o.blockchains).map((function(e){return e[1]}))))||p.toLowerCase()!==i.toLowerCase()){e.next=18;break}return e.abrupt("return",!0);case 18:if(!p||p.toLowerCase()===i.toLowerCase()){e.next=20;break}return e.abrupt("return",!1);case 20:e.next=23;break;case 22:return e.abrupt("return",!0);case 23:e.next=28;break;case 25:e.prev=25,e.t0=e.catch(6),console.log(e.t0);case 28:return e.abrupt("return",!1);case 29:return e.abrupt("return",!0);case 30:case"end":return e.stop()}}),e,null,[[6,25]])})))).apply(this,arguments)}function ve(e){var t=e.getStorage,r=e.setStorage,n=t().swapDetails,a=V(n);null!=a&&a.networkStatus&&(a.networkStatus=null,r(w({},t(),{swapDetails:n})))}function Te(e,t){void 0===t&&(t={message:"",details:"",status:null});var r=t.message,n=t.details,a=t.status,o=e.getStorage,s=e.setStorage,i=o().swapDetails,l=V(i);null!=l&&l.networkStatus&&(i.networkStatusExtraMessage=r,i.networkStatusExtraMessageDetail=n,l.networkStatus=a,s(w({},o(),{swapDetails:i})))}function Se(e,t){var r=ce(e),n=r.type,o=r.address;if(!n||!o)return{ok:!1,reason:"not_connected"};var s=t(n);return s.connected?{ok:(s.accounts||[]).some((function(e){var t=a.readAccountAddress(e).address;return o.toLocaleLowerCase()===t.toLocaleLowerCase()})),reason:"account_miss_match"}:{ok:!1,reason:"not_connected"}}function he(e){var r=e.getStorage,a=e.setStorage,s=e.failed,i=e.next,l=e.schedule,u=e.context,c=u.meta,p=u.getSigners,d=u.notifier,f=r().swapDetails,g=V(f),v=g.evmTransaction,T=g.evmApprovalTransaction,S=g.cosmosTransaction,h=g.solanaTransaction,x=g.transferTransaction,y=g.tronTransaction,m=g.tronApprovalTransaction,E=g.starknetTransaction,_=g.starknetApprovalTransaction,C=U(f,g),A=P(f,g),k=p(C.walletType),N=function(){e.context.resetClaimedBy&&e.context.resetClaimedBy()};if(T){if(!(null==T?void 0:T.to))throw b.AssertionFailed("contract address is null for checking approval");var O=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(C.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},O)),void k.getSigner(o.TransactionType.EVM).signAndSendTx(T,A,null).then((function(r){var n=function(e,t,r){var n=r.find((function(e){return e.name===t}));if(!n)throw Error("unsupported network: "+t+" for getting approve url.");if(n.info.transactionUrl)return n.info.transactionUrl.replace("{txHash}",e.toLowerCase());throw Error("Explorer url for "+t+" is not implemented")}(r,L(f,g),c.evmBasedChains);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"REJECTED_BY_USER"===c?"contract_rejected":"smart_contract_call_failed"},p)),s(),N()}}))}if(m){var M=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(C.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},M)),void k.getSigner(o.TransactionType.TRON).signAndSendTx(m,A,null).then((function(r){var n=function(e){return"https://tronscan.org/#/transaction/{txHash}".replace("{txHash}",e.toLowerCase())}(r);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"REJECTED_BY_USER"===c?"contract_rejected":"smart_contract_call_failed"},p)),s(),N()}}))}if(_){var R=J({getStorage:r,setStorage:a,nextStepStatus:"waitingForApproval",message:"Waiting for approval of "+(null==g?void 0:g.fromSymbol)+" coin "+(C.walletType===n.WalletType.WALLET_CONNECT?"on your mobile phone":""),details:"Waiting for approve transaction to be mined and confirmed successfully"});return d(w({eventType:"confirm_approve_contract"},R)),void k.getSigner(o.TransactionType.STARKNET).signAndSendTx(_,A,null).then((function(r){var n=function(e){return"https://starkscan.co/tx/{txHash}".replace("{txHash}",e.toLowerCase())}(r);Y(e,r,d,"check_approve_tx_status",n),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"REJECTED_BY_USER"===c?"contract_rejected":"smart_contract_call_failed"},p)),s(),N()}}))}var I="boolean"==typeof f.hasAlreadyProceededToSign,W=I?"failed":"running",F=I?"TX_EXPIRED":null,B=I?"Transaction is expired. Please try again":"executing transaction",H=C.walletType===n.WalletType.WALLET_CONNECT?"Check your mobile phone":"";if(x){var j=z("confirm_transfer",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(j),"transaction_expired"===j.eventType?(s(),N()):k.getSigner(o.TransactionType.TRANSFER).signAndSendTx(x,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=t.extraMessageErrorCode,o=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:n});d(w({eventType:"REJECTED_BY_USER"===n?"transfer_rejected":"transfer_failed"},o)),s(),N()}}))}else if(v){var K=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(K),"transaction_expired"===K.eventType?(s(),N()):k.getSigner(o.TransactionType.EVM).signAndSendTx(v,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"REJECTED_BY_USER"===c?"contract_rejected":"smart_contract_call_failed"},p)),s(),N()}}))}else if(S){var X=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));if(d(X),"transaction_expired"===X.eventType)s(),N();else{if(("TerraSwap"===(null==g?void 0:g.swapperId.toString())||"ThorChain"===(null==g?void 0:g.swapperId.toString())&&(null==g?void 0:g.fromBlockchain)===n.Network.TERRA||"Terra Bridge"===(null==g?void 0:g.swapperId.toString())&&g.fromBlockchain===n.Network.TERRA)&&C.walletType===n.WalletType.KEPLR){var G=D("Keplr only supports IBC Transactions on Terra. Using Terra Bridge, TerraSwap and THORChain is not possible with Keplr. Please use TerraStation or Leap wallet"),Q=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:G.extraMessage,details:G.extraMessageDetail,errorCode:G.extraMessageErrorCode});return d(w({eventType:"smart_contract_call_failed"},Q)),s(),void N()}k.getSigner(o.TransactionType.COSMOS).signAndSendTx(S,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:t.extraMessageErrorCode});d(w({eventType:"smart_contract_call_failed"},n)),s(),N()}}))}}else if(h){var Z=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));if(d(Z),"transaction_expired"===Z.eventType)s(),N();else{var $=h;k.getSigner(o.TransactionType.SOLANA).signAndSendTx($,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){if("failed"!==f.status){var t=D(e),n=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:t.extraMessage,details:t.extraMessageDetail,errorCode:t.extraMessageErrorCode});d(w({eventType:"smart_contract_call_failed"},n)),s(),N()}}))}}else if(y){var ee=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(ee),"transaction_expired"===ee.eventType?(s(),N()):k.getSigner(o.TransactionType.TRON).signAndSendTx(y,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"smart_contract_call_failed"},p)),s(),N()}}))}else if(E){var te=z("calling_smart_contract",J({getStorage:r,setStorage:a,nextStepStatus:W,nextStatus:W,message:B,details:H,hasAlreadyProceededToSign:I,errorCode:F}));d(te),"transaction_expired"===te.eventType?(s(),N()):k.getSigner(o.TransactionType.STARKNET).signAndSendTx(E,A,null).then((function(r){Y(e,r,d,"check_tx_status"),l(t.CHECK_TRANSACTION_STATUS),i(),N()}),(function(e){var t,n,o;if("failed"!==f.status){var i=D(e),l=i.extraMessage,u=i.extraMessageDetail,c=i.extraMessageErrorCode;e&&null!=e&&e.root&&null!=e&&null!=(t=e.root)&&t.message&&null!=e&&null!=(n=e.root)&&n.code&&null!=e&&null!=(o=e.root)&&o.reason&&q(e.root,f,g,null==C?void 0:C.walletType);var p=J({getStorage:r,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",message:l,details:u,errorCode:c});d(w({eventType:"smart_contract_call_failed"},p)),s(),N()}}))}}function we(e){null==e||e.getAll().forEach((function(e){if(Object.keys(e.list.state.tasks).some((function(t){var n,a=e.list.state.tasks[t];return a.status===s.Status.BLOCKED&&[r.WAIT_FOR_NETWORK_CHANGE,r.DEPENDS_ON_OTHER_QUEUES].includes(null==(n=a.blockedFor)?void 0:n.reason)}))){var t,n=null==(t=e.list.getStorage())?void 0:t.swapDetails;if("running"===n.status){var a=ce(n),o=A(a.type);e.list.block({reason:{reason:r.WAIT_FOR_CONNECT_WALLET,description:o}})}}}))}function xe(e,t,r,n){var a;void 0===n&&(n={fallbackToOnlyWallet:!0});var o=Q(e),i=o[0],l=o[1];if(i&&l){var u=[],c=[];null==r||r.getAll().forEach((function(e){if(e.status===s.Status.BLOCKED){var t=e.list.getStorage(),r=null==t?void 0:t.swapDetails;if(r&&"running"===r.status){var n,a,o=V(r);o&&(I(r,o)==l&&(null==t||null==(n=t.swapDetails.wallets[l])?void 0:n.walletType)===i?u.push(e.list):(null==t||null==(a=t.swapDetails.wallets[o.fromBlockchain])?void 0:a.walletType)===i&&c.push(e.list))}}}));var p=void 0;if(u.length>0){if(p=u[0],u.length>1)for(var d=1;d<u.length;d++){var f=u[d];$({getStorage:f.getStorage.bind(f),setStorage:f.setStorage.bind(f),notifier:t})}}else c.length>0&&n.fallbackToOnlyWallet&&(p=c[0]);null==(a=p)||a.checkBlock()}}function ye(e){return!!e.evmTransaction||!!e.evmApprovalTransaction}function me(e){return Ee.apply(this,arguments)}function Ee(){return(Ee=h(T().mark((function e(t){var r;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t;case 3:if((r=e.sent).ok&&r.transaction){e.next=6;break}throw b.CreateTransaction(r.error||"bad response from create tx endpoint");case 6:return e.abrupt("return",r);case 9:throw e.prev=9,e.t0=e.catch(0),e.t0;case 12:case"end":return e.stop()}}),e,null,[[0,9]])})))).apply(this,arguments)}function _e(e){return Ce.apply(this,arguments)}function Ce(){return(Ce=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,x,y,m,E,_,C,A,k,b,N,O;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return g=r.setStorage,v=r.next,S=r.schedule,h=r.retry,x=r.failed,y=r.context,m=(f=r.getStorage)().swapDetails,E=V(m),_=E.executedTransactionId,C=null,e.prev=5,e.next=8,K().checkStatus({requestId:m.requestId,txId:_,step:E.id});case 8:C=e.sent,e.next=17;break;case 11:return e.prev=11,e.t0=e.catch(5),e.next=15,ee(3e3);case 15:return h(),e.abrupt("return");case 17:if("failed"!==(null==E?void 0:E.status)){e.next=19;break}return e.abrupt("return");case 19:if(A=(null==(n=C)?void 0:n.outputAmount)||(E.outputAmount?E.outputAmount:null),k=E.outputAmount||null,m.extraMessage=(null==(a=C)?void 0:a.extraMessage)||m.extraMessage,m.extraMessageSeverity=exports.MessageSeverity.info,m.extraMessageDetail="",E.status=(null==(o=C)?void 0:o.status)||E.status,E.diagnosisUrl=(null==(s=C)?void 0:s.diagnosisUrl)||E.diagnosisUrl||null,E.outputAmount=A||E.outputAmount,E.explorerUrl=(null==(i=C)?void 0:i.explorerUrl)||E.explorerUrl,E.internalSteps=(null==(l=C)?void 0:l.steps)||null,(b=null==(u=C)?void 0:u.newTx)&&(E.status="created",E.executedTransactionId=null,E.executedTransactionTime=null,E.transferTransaction=null,E.cosmosTransaction=null,E.evmTransaction=null,E.solanaTransaction=null,E.evmApprovalTransaction=null,E.starknetApprovalTransaction=null,E.starknetTransaction=null,E.tronApprovalTransaction=null,E.tronTransaction=null,re(b)?b.isApprovalTx?E.evmApprovalTransaction=b:E.evmTransaction=b:ne(b)?E.cosmosTransaction=b:ae(b)?E.solanaTransaction=b:oe(b)?E.transferTransaction=b:se(b)?b.isApprovalTx?E.starknetApprovalTransaction=b:E.starknetTransaction=b:ie(b)&&(b.isApprovalTx?E.tronApprovalTransaction=b:E.tronTransaction=b)),null===k&&null!==A?y.notifier({eventType:"step_completed_with_output",swap:m,step:E}):null===k&&null===A&&y.notifier({eventType:"check_tx_status",swap:m,step:E}),"success"===E.status?(N=W(m,E),m.extraMessageDetail="",m.extraMessage=N?"starting next step: "+N.swapperId+": "+N.fromBlockchain+" -> "+N.toBlockchain:""):"failed"===E.status&&(m.extraMessage="Transaction failed in blockchain",m.extraMessageSeverity=exports.MessageSeverity.error,m.extraMessageDetail=(null==(O=C)?void 0:O.extraMessage)||"",m.status="failed",m.finishTime=(new Date).getTime().toString()),g(w({},f(),{swapDetails:m})),"failed"!==(null==(c=C)?void 0:c.status)){e.next=38;break}x(),e.next=46;break;case 38:if(!("success"===(null==(p=C)?void 0:p.status)||"running"===(null==(d=C)?void 0:d.status)&&C.newTx)){e.next=43;break}S(t.SCHEDULE_NEXT_STEP),v(),e.next=46;break;case 43:return e.next=45,ee(3e3);case 45:h();case 46:case"end":return e.stop()}}),e,null,[[5,11]])})))).apply(this,arguments)}function Ae(e){return ke.apply(this,arguments)}function ke(){return(ke=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=r.setStorage,o=r.next,s=r.schedule,i=r.retry,l=r.failed,u=r.context,c=(n=r.getStorage)().swapDetails,p=V(c),d=!1,e.prev=4,e.next=7,K().checkApproval(c.requestId,p.executedTransactionId||"");case 7:if(f=e.sent,"failed"!==(null==p?void 0:p.status)){e.next=10;break}return e.abrupt("return");case 10:(d=f.isApproved)||"failed"!==f.txStatus&&"success"!==f.txStatus?d||u.notifier({eventType:"check_approve_tx_status",swap:c,step:p}):("failed"===f.txStatus?(g="Approve transaction failed",v="Smart contract approval failed in blockchain."):(g="Not enough approval",v=f.requiredApprovedAmount&&f.currentApprovedAmount?"Required approval: "+f.requiredApprovedAmount+", current approval: "+f.currentApprovedAmount:"You still don't have enough approval for this swap."),S=J({getStorage:n,setStorage:a,nextStatus:"failed",nextStepStatus:"failed",errorCode:"SEND_TX_FAILED",message:g,details:v}),u.notifier(w({eventType:"smart_contract_call_failed"},S)),l()),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(4),d=!1;case 17:if(!d){e.next=33;break}p.status="approved",c.extraMessage="Spending "+p.fromSymbol+" approved successfully.",c.extraMessageDetail=null,c.extraMessageSeverity=exports.MessageSeverity.success,p.evmApprovalTransaction=null,p.executedTransactionId=null,p.executedTransactionTime=null,p.starknetApprovalTransaction=null,p.tronApprovalTransaction=null,a(w({},n(),{swapDetails:c})),u.notifier({eventType:"contract_confirmed",swap:c,step:p}),s(t.SCHEDULE_NEXT_STEP),o(),e.next=36;break;case 33:return e.next=35,ee(2e3);case 35:i();case 36:case"end":return e.stop()}}),e,null,[[4,14]])})))).apply(this,arguments)}function be(){return(be=h(T().mark((function e(t){var r,n;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.getStorage().swapDetails,n=V(r),ve(t),"running"!==n.status){e.next=8;break}return e.next=6,_e(t);case 6:e.next=11;break;case 8:if("waitingForApproval"!==n.status){e.next=11;break}return e.next=11,Ae(t);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ne(){return(Ne=h(T().mark((function e(r){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,x,y,m,E;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.setStorage,o=r.next,s=r.schedule,i=r.context,l=(a=r.getStorage)().swapDetails,u=V(l),c=u.cosmosTransaction,p=u.transferTransaction,d=u.evmApprovalTransaction,f=u.solanaTransaction,g=u.tronTransaction,v=u.tronApprovalTransaction,S=u.starknetTransaction,h=u.starknetApprovalTransaction,u.evmTransaction||d||g||v||S||h||c||p||f){e.next=25;break}return x={requestId:l.requestId,step:u.id,userSettings:{slippage:l.settings.slippage,infiniteApprove:l.settings.infiniteApprove},validations:{balance:l.validateBalanceOrFee,fee:l.validateBalanceOrFee}},e.prev=6,e.next=9,me(K().createTransaction(x));case 9:(y=e.sent.transaction)&&(re(y)?y.isApprovalTx?u.evmApprovalTransaction=y:u.evmTransaction=y:ne(y)?u.cosmosTransaction=y:ae(y)?u.solanaTransaction=y:oe(y)?u.transferTransaction=y:se(y)?y.isApprovalTx?u.starknetApprovalTransaction=y:u.starknetTransaction=y:ie(y)&&(y.isApprovalTx?u.tronApprovalTransaction=y:u.tronTransaction=y)),n(w({},a(),{swapDetails:l})),s(t.EXECUTE_TRANSACTION),o(),e.next=25;break;case 17:e.prev=17,e.t0=e.catch(6),l.status="failed",l.finishTime=(new Date).getTime().toString(),m=D(e.t0),E=J({getStorage:a,setStorage:n,nextStatus:"failed",nextStepStatus:"failed",message:m.extraMessage,details:m.extraMessageDetail,errorCode:"FETCH_TX_FAILED"}),i.notifier(w({eventType:"task_failed"},E)),r.failed();case 25:case"end":return e.stop()}}),e,null,[[6,17]])})))).apply(this,arguments)}function Oe(){return(Oe=h(T().mark((function e(t){var n,a,o,s,i,l,u,c,p,d,f,g,v,S,h,w,x,y,m,E,_;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.getStorage,s=(o=t.context).meta,i=o.wallets,l=o.providers,u=G(),c=u.claimedBy,p=o.claimedBy===(null==(n=o._queue)?void 0:n.id),d=function(e){t.block(e),p&&t.context.resetClaimedBy&&t.context.resetClaimedBy()},f=a().swapDetails,g=V(f),ve(t),Se(f,o.state).ok){e.next=16;break}return S=ce(f),h=S.type,w=S.address,x=null==i||null==(v=i.blockchains)?void 0:v.find((function(e){var t;return!(null!=(t=e.accounts)&&t.find((function(e){return e.walletType===h})))})),y=!i||x?A(h):C(h,w),d({reason:r.WAIT_FOR_CONNECT_WALLET,description:y}),e.abrupt("return");case 16:return e.next=18,fe(f,g,i,s,l);case 18:if(m=e.sent,!c()||p||m){e.next=28;break}return d({reason:r.DEPENDS_ON_OTHER_QUEUES,details:"Waiting for other swaps to complete"}),e.abrupt("return");case 28:if(m){e.next=36;break}return E=L(f,g),_=k(E),d({reason:r.WAIT_FOR_NETWORK_CHANGE,details:_}),e.abrupt("return");case 36:Te(t,{message:"",details:"Wallet network changed successfully",status:exports.PendingSwapNetworkStatus.NetworkChanged});case 37:if(!ye(g)||p){e.next=42;break}return d({reason:r.DEPENDS_ON_OTHER_QUEUES,description:"Waiting for other swaps to complete",details:{}}),e.abrupt("return");case 42:he(t);case 43:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Me={name:"swap",actions:(te={},te[t.START]=function(e){var r=e.next;(0,e.schedule)(t.SCHEDULE_NEXT_STEP),r()},te[t.SCHEDULE_NEXT_STEP]=function(e){var r=e.schedule,n=e.next,a=e.failed,o=e.setStorage,s=e.getStorage,i=e.context,l=s().swapDetails,u=V(l),c=l.steps.find((function(e){return"failed"===e.status}));if(u&&!c){if(function(e,t){var r,n,a,o,s,i,l,u,c;return null!==(e.wallets[(null==(r=t.evmTransaction)?void 0:r.blockChain)||""]||e.wallets[(null==(n=t.evmApprovalTransaction)?void 0:n.blockChain)||""]||e.wallets[(null==(a=t.tronTransaction)?void 0:a.blockChain)||""]||e.wallets[(null==(o=t.tronApprovalTransaction)?void 0:o.blockChain)||""]||e.wallets[(null==(s=t.starknetTransaction)?void 0:s.blockChain)||""]||e.wallets[(null==(i=t.starknetApprovalTransaction)?void 0:i.blockChain)||""]||e.wallets[(null==(l=t.cosmosTransaction)?void 0:l.blockChain)||""]||e.wallets[(null==(u=t.solanaTransaction)?void 0:u.blockChain)||""]||(null==(c=t.transferTransaction)?void 0:c.fromWalletAddress)||null)}(l,u))return r(t.EXECUTE_TRANSACTION),n();if(null!=u&&u.executedTransactionId)return r(t.CHECK_TRANSACTION_STATUS),n();l.status="running",o(w({},s(),{swapDetails:l})),r(t.CREATE_TRANSACTION),n()}else l.status=c?"failed":"success",l.finishTime=(new Date).getTime().toString(),o(w({},s(),{swapDetails:l})),i.notifier({eventType:c?"task_failed":"task_completed",swap:l,step:null}),c?a():n()},te[t.CREATE_TRANSACTION]=function(e){return Ne.apply(this,arguments)},te[t.EXECUTE_TRANSACTION]=function(e){return Oe.apply(this,arguments)},te[t.CHECK_TRANSACTION_STATUS]=function(e){return be.apply(this,arguments)},te),run:[t.START],whenTaskBlocked:function(e,t){e.reason.reason===r.WAIT_FOR_CONNECT_WALLET?function(e,t){var r=t.context,n=t.queue,a=n.getStorage().swapDetails,o=Se(a,r.state),s=o.reason;if(!o.ok){var i=V(a);return r.notifier({eventType:"account_miss_match"===s?"waiting_for_change_wallet_account":"waiting_for_connecting_wallet",swap:a,step:i}),void function(e,t,r){var n=e.getStorage,a=e.setStorage,o=n().swapDetails,s=V(o);if(s){var i=new Date;o.lastNotificationTime=i.getTime().toString(),s.networkStatus===exports.PendingSwapNetworkStatus.WaitingForConnectingWallet&&o.networkStatusExtraMessage===t&&o.networkStatusExtraMessageDetail===r||(s.networkStatus=exports.PendingSwapNetworkStatus.WaitingForConnectingWallet,o.networkStatusExtraMessage=t,o.networkStatusExtraMessageDetail=r,a(w({},n(),{swapDetails:o})))}}({getStorage:n.getStorage.bind(n),setStorage:n.setStorage.bind(n)},"Waiting for connecting wallet",e.reason.description)}n.unblock()}(e,t):e.reason.reason===r.WAIT_FOR_NETWORK_CHANGE?function(e,t){var r=t.context,n=t.queue,a=n.getStorage().swapDetails;if(V(a)&&"running"===a.status){var o=Z({getStorage:n.getStorage.bind(n),setStorage:n.setStorage.bind(n)});o&&r.notifier({eventType:"waiting_for_network_change",swap:o.swap,step:o.step});var s=ce(a),i=s.type,l=s.network;if(i&&l){var u=r.switchNetwork(i,l);u&&u.then((function(){n.unblock()})).catch((function(e){console.log({error:e})}))}}}(0,t):e.reason.reason===r.DEPENDS_ON_OTHER_QUEUES&&function(e,t){var n=t.getBlockedTasks,a=t.forceExecute,o=t.queue,s=t.manager,i=t.context,l=G(),u=l.setClaimer,c=l.claimedBy,p=l.reset,d=n().filter((function(e){return e.reason.reason===r.DEPENDS_ON_OTHER_QUEUES}));if(0!==d.length){var f=c();if(f!==o.id)if(f)$({getStorage:o.getStorage.bind(o),setStorage:o.setStorage.bind(o),notifier:i.notifier});else{var g=d.find((function(e){return e.queue_id===t.queue_id}));g||(g=d[0]),u(g.queue_id);var v=ce(g.storage.get().swapDetails),T=v.type,S=v.network,h=v.address;a(g.queue_id,{claimedBy:c(),resetClaimedBy:function(){p(),xe(T+"-"+S+":"+h,i.notifier,s)}})}}}(0,t)}};function De(){return!!window.localStorage.getItem("migratedToQueueManager")}function Re(){return Ie.apply(this,arguments)}function Ie(){return(Ie=h(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,window.indexedDB.databases();case 3:return e.abrupt("return",e.sent.map((function(e){return e.name})).includes(s.DB_NAME));case 6:return e.prev=6,e.t0=e.catch(0),e.abrupt("return",!1);case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))).apply(this,arguments)}function Le(){return We.apply(this,arguments)}function We(){return(We=h(T().mark((function e(){var r,n,a,o,i,l;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=window.localStorage.getItem("pendingSwaps"),e.next=3,Re();case 3:if(n=e.sent,r&&!De()&&!n){e.next=6;break}return e.abrupt("return",!0);case 6:return a=JSON.parse(r),o=[],a.forEach((function(e){if("running"===e.status){var r,n=d.v4(),a={id:e.requestId,createdAt:Number(e.creationTime),name:"swap",status:s.Status.RUNNING,storage:{swapDetails:e},state:{status:s.Status.RUNNING,activeTaskIndex:0,tasks:(r={},r[n]={blockedFor:null,status:s.Status.RUNNING},r)},tasks:[{id:n,action:t.SCHEDULE_NEXT_STEP}]};o.push(a)}else{var i="success"===e.status?s.Status.SUCCESS:s.Status.FAILED,l={id:e.requestId,createdAt:Number(e.creationTime),name:"swap",status:i,storage:{swapDetails:e},state:{status:i,activeTaskIndex:0,tasks:{}},tasks:[]};o.push(l)}})),i=new s.Persistor,l=o.map((function(e){return i.insertQueue(e)})),e.next=13,Promise.all(l);case 13:return window.localStorage.setItem("migratedToQueueManager","1"),e.abrupt("return",!0);case 15:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Pe=0;exports.PrettyError=b,exports.calculatePendingSwap=function(e,t,r,n,a,o){var s,i,l=t.result;if(!l)throw Error("Simulation result should not be null");return{creationTime:(new Date).getTime().toString(),finishTime:null,requestId:t.requestId||"",inputAmount:e,wallets:r,status:"running",isPaused:!1,extraMessage:null,extraMessageSeverity:null,extraMessageDetail:null,extraMessageErrorCode:null,networkStatusExtraMessage:null,networkStatusExtraMessageDetail:null,lastNotificationTime:null,settings:n,simulationResult:l,validateBalanceOrFee:a,steps:(null==(s=t.result)||null==(i=s.swaps)?void 0:i.map((function(e,t){return{id:t+1,fromBlockchain:e.from.blockchain,fromBlockchainLogo:e.from.blockchainLogo,fromLogo:e.from.logo,fromSymbol:e.from.symbol,fromSymbolAddress:e.from.address,fromDecimals:e.from.decimals,fromAmountPrecision:e.fromAmountPrecision,fromAmountMinValue:e.fromAmountMinValue,fromAmountMaxValue:e.fromAmountMaxValue,fromAmountRestrictionType:e.fromAmountRestrictionType,toBlockchain:e.to.blockchain,toBlockchainLogo:e.to.blockchainLogo,toSymbol:e.to.symbol,toSymbolAddress:e.to.address,toDecimals:e.to.decimals,toLogo:e.to.logo,swapperId:e.swapperId,swapperLogo:e.swapperLogo,swapperType:e.swapperType,expectedOutputAmountHumanReadable:e.toAmount,outputAmount:"",feeInUsd:o?R(H(e,null==o?void 0:o.tokens),null,8):null,estimatedTimeInSeconds:e.estimatedTimeInSeconds||null,status:"created",networkStatus:null,startTransactionTime:(new Date).getTime(),externalTransactionId:null,executedTransactionId:null,executedTransactionTime:null,explorerUrl:null,diagnosisUrl:null,trackingCode:null,internalSteps:null,evmTransaction:null,evmApprovalTransaction:null,starknetTransaction:null,starknetApprovalTransaction:null,tronTransaction:null,tronApprovalTransaction:null,cosmosTransaction:null,solanaTransaction:null,transferTransaction:null,hasAlreadyProceededToSign:!1}})))||[]}},exports.cancelSwap=function(e,t){var r=G().reset;e.actions.cancel();var n=J({getStorage:e.actions.getStorage,setStorage:e.actions.setStorage,message:"Swap canceled by user.",details:"Warning: If you've already signed and sent a transaction, it won't be affected, but next swap steps will not be executed.",nextStatus:"failed",nextStepStatus:"failed",errorCode:"USER_CANCEL"});return r(),t&&(null==t||t.retry()),n},exports.checkWaitingForNetworkChange=we,exports.getCurrentBlockchainOfOrNull=I,exports.getCurrentStep=V,exports.getEvmProvider=ue,exports.getRelatedWallet=U,exports.getRelatedWalletOrNull=F,exports.getRequiredWallet=ce,exports.getRunningSwaps=function(e){var t=(null==e?void 0:e.getAll())||new Map,r=[];return t.forEach((function(e){var t=e.list.getStorage(),n=null==t?void 0:t.swapDetails;n&&"running"===n.status&&r.push(n)})),r},exports.makeQueueDefinition=function(e){return v(e),Me},exports.prettifyErrorMessage=D,exports.resetRunningSwapNotifsOnPageLoad=function(e,t){e.forEach((function(e){var r,n=V(e);(null==n?void 0:n.networkStatus)===exports.PendingSwapNetworkStatus.WaitingForQueue?r="waiting_for_queue":"running"===(null==e?void 0:e.status)&&(r="waiting_for_connecting_wallet"),r&&t&&t({eventType:r,swap:e,step:n})}))},exports.splitWalletNetwork=Q,exports.updateSwapStatus=J,exports.useMigration=function(){var e=De(),t=p.useState(e),r=t[0],n=t[1];return p.useEffect((function(){h(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Pe){e.next=2;break}return e.abrupt("return");case 2:Pe=1,Le().finally((function(){n(!0)}));case 4:case"end":return e.stop()}}),e)})))()}),[]),{status:r}},exports.useQueueManager=function(e){var t=c.useManager().manager;p.useEffect((function(){e.lastConnectedWallet&&(function(e){var t=e.evmChains,n=e.manager,a=Q(e.wallet_network),o=a[0],i=a[1];t.some((function(e){return e.name==i}))&&(null==n||n.getAll().forEach((function(t){var n=t.list.getStorage(),a=null==n?void 0:n.swapDetails;if(a&&"running"===a.status){var l=V(a);if(l){var u,c=null==n||null==(u=n.swapDetails.wallets[l.fromBlockchain])?void 0:u.walletType,p=Object.keys(t.list.state.tasks).some((function(e){var n,a=t.list.state.tasks[e];return a.status===s.Status.BLOCKED&&[r.WAIT_FOR_CONNECT_WALLET].includes(null==(n=a.blockedFor)?void 0:n.reason)}));if(c===o&&p&&I(a,l)!=i){var d=t.list,f=ce(a),g=k(f.type);t.list.block({reason:{reason:r.WAIT_FOR_NETWORK_CHANGE,description:g},silent:!0});var v=Z({getStorage:d.getStorage.bind(d),setStorage:d.setStorage.bind(d)});v&&(null==e||e.notifier({eventType:"waiting_for_network_change",swap:v.swap,step:v.step}))}}}})))}({evmChains:e.evmChains,wallet_network:e.lastConnectedWallet,manager:t,notifier:e.notifier}),xe(e.lastConnectedWallet,e.notifier,t))}),[e.lastConnectedWallet]),p.useEffect((function(){e.disconnectedWallet&&(we(t),e.clearDisconnectedWallet())}),[e.disconnectedWallet])};
2
2
  //# sourceMappingURL=queue-manager-rango-preset.cjs.production.min.js.map