@rango-dev/queue-manager-rango-preset 0.60.1-next.5 → 0.61.1-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # [0.61.0](https://github.com/rango-exchange/rango-client/compare/queue-manager-rango-preset@0.60.0...queue-manager-rango-preset@0.61.0) (2026-04-29)
2
+
3
+
4
+
1
5
  # [0.60.0](https://github.com/rango-exchange/rango-client/compare/queue-manager-rango-preset@0.59.0...queue-manager-rango-preset@0.60.0) (2025-12-30)
2
6
 
3
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var Xt=Object.defineProperty;var i=(e,t)=>Xt(e,"name",{value:t,configurable:!0});function Qt(){return process.env.REACT_APP_RANGO_API_KEY}i(Qt,"getApiKeyFromEnv");function Je(){return Qt()||"NOT_SET"}i(Je,"getApiKeyFromEnvOrNotSet");var Ne={API_KEY:Je(),BASE_URL:""};function j(e){return Ne[e]}i(j,"getConfig");function ze(e){return Ne=e,Ne}i(ze,"initConfig");import{warn as ne}from"@rango-dev/logging-core";import{SignerError as vt}from"rango-types";import{warn as en}from"@rango-dev/logging-core";import{Status as Le}from"@rango-dev/queue-manager-core";import{legacyReadAccountAddress as tn}from"@rango-dev/wallets-core/legacy";import{getBlockChainNameFromId as nn,getEvmProvider as rn}from"@rango-dev/wallets-shared";import an from"bignumber.js";import{PendingSwapNetworkStatus as ee,SignerError as on,TransactionType as I}from"rango-types";var Ie="Waiting for other swaps to complete",Ze="Waiting for connecting wallet",et=i((e,t)=>`Please change your ${e||"wallet"} account to ${t||"proper address"}`,"ERROR_MESSAGE_WAIT_FOR_WALLET_DESCRIPTION_WRONG_WALLET"),Se=i(e=>`Please connect your ${e??""} wallet.`,"ERROR_MESSAGE_WAIT_FOR_WALLET_DESCRIPTION"),ge=i(e=>`Please change your network to ${e}.`,"ERROR_MESSAGE_WAIT_FOR_CHANGE_NETWORK"),P="CLIENT_UNEXPECTED_BEHAVIOUR";import{RangoClient as qt}from"rango-sdk";var me,q=i(()=>me||(me=new qt(j("API_KEY"),j("BASE_URL")),me),"httpService");import ot from"bignumber.js";import tt from"bignumber.js";var nt=i((e,t=null,n=null)=>{if(e===null||e==="")return"";let r=new tt(e),a=1,o=1e3;for(let l=0;l<60;l++)if(new tt(r.toFixed(l,a)).eq(r)){o=l;break}if(r.gte(1e4))return r.toFormat(0,a);if(r.gte(1e3)||r.gte(100))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,1))),a);if(r.gte(1))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,2))),a);if(r.gte(.01))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,4))),a);for(let l=t||4;l<17;l++)if(r.gte(Math.pow(10,-l)))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,l))),a);return r.isEqualTo(0)?"0":r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,8))),a)},"numberToString");import{SignerErrorCode as G,SignerError as Ht,isSignerErrorCode as Gt,isAPIErrorCode as Kt}from"rango-types";var Vt="Assertion failed (Unexpected behaviour)",$t="Create transaction failed in Rango Server",rt="Input wallet not found",D=class e extends Error{constructor(n,r,a,o){super(r);this._isPrettyError=!0;Object.setPrototypeOf(this,e.prototype),e.prototype._isPrettyError=!0,this.code=n,this.detail=o,this.root=a}static{i(this,"PrettyError")}static isPrettyError(n){return n instanceof e||Object.prototype.hasOwnProperty.call(n,"_isPrettyError")}getErrorDetail(){let n=typeof this.root=="object"&&this.root&&this.root.error?this.root.error:JSON.stringify(this.root),r=typeof this.root=="string"?this.root:this.root instanceof Error?this.root.message:n;return{extraMessage:this.message,extraMessageDetail:this.detail||r,extraMessageErrorCode:this.code||null}}static AssertionFailed(n){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",Vt,null,n)}static BadStatusCode(n,r){return new e("TX_FAIL",n,null,`status code = ${r}`)}static CreateTransaction(n){return new e("FETCH_TX_FAILED",$t,null,n)}static WalletMissing(){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",rt,null,"Server requested for a blockchain or address not selected by user")}static BlockchainMissing(){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",rt,null,"Server requested for a blockchain or address not selected by user")}};function at(e){try{return e?Kt(e)?e:Gt(e)?{[G.REJECTED_BY_USER]:"USER_REJECT",[G.SIGN_TX_ERROR]:"CALL_WALLET_FAILED",[G.SEND_TX_ERROR]:"SEND_TX_FAILED",[G.TX_FAILED_IN_BLOCKCHAIN]:"TX_FAILED_IN_BLOCKCHAIN",[G.NOT_IMPLEMENTED]:P,[G.OPERATION_UNSUPPORTED]:P,[G.UNEXPECTED_BEHAVIOUR]:P}[e]:P:P}catch{return P}}i(at,"mapAppErrorCodesToAPIErrorCode");var H=i(e=>{if(!e)return{extraMessage:"",extraMessageErrorCode:null};if(D.isPrettyError(e))return e.getErrorDetail();if(Ht.isSignerError(e)){let t=e.getErrorDetail();return{extraMessage:t.message,extraMessageDetail:t.detail,extraMessageErrorCode:t.code}}return e instanceof Error?{extraMessage:e.toString(),extraMessageErrorCode:null}:typeof e!="string"?{extraMessage:JSON.stringify(e),extraMessageErrorCode:null}:{extraMessage:e,extraMessageErrorCode:null}},"prettifyErrorMessage");var Te=(a=>(a.error="error",a.warning="warning",a.info="info",a.success="success",a))(Te||{}),W=i((e,t)=>{try{return F(e,t)}catch{return null}},"getCurrentNamespaceOfOrNull"),F=i((e,t)=>{let n=t.evmTransaction?.blockChain||t.evmApprovalTransaction?.blockChain,r=t.starknetTransaction?.blockChain||t.starknetApprovalTransaction?.blockChain,a=t.tronTransaction?.blockChain||t.tronApprovalTransaction?.blockChain,o=t.cosmosTransaction?.blockChain,l=t.solanaTransaction?.blockChain,s=t.tonTransaction?.blockChain,u=t.suiTransaction?.blockChain,p=t.xrplTransaction?.blockChain,c=t.stellarTransaction?.blockChain;if(n)return{namespace:"EVM",network:n};if(r)return{namespace:"Starknet",network:r};if(a)return{namespace:"Tron",network:a};if(o)return{namespace:"Cosmos",network:o};if(l)return{namespace:"Solana",network:l};if(s)return{namespace:"Ton",network:s};if(u)return{namespace:"Sui",network:u};if(p)return{namespace:"XRPL",network:p};if(c)return{namespace:"Stellar",network:c};if(t.transferTransaction){let S=t.transferTransaction.fromWalletAddress;if(!S)throw D.BlockchainMissing();let d=Object.keys(e.wallets).find(g=>e.wallets[g]?.address===S);if(!d)throw D.BlockchainMissing();return{namespace:"UTXO",network:d}}throw new Error("Unsupported transaction type has been included in your swap.",{cause:t})},"getCurrentNamespaceOf"),le=i((e,t,n)=>{let a=n[t].info?.transactionUrl;if(a)return a.indexOf("/{txHash}")!==-1?a.replace("{txHash}",e):`${a}/${e}`},"getScannerUrl");function it(e,t){return e.steps.find(n=>n.status!=="failed"&&n.status!=="success"&&n.id!==t.id)||null}i(it,"getNextStep");var ct=i((e,t)=>{let n=e.wallets[t.evmTransaction?.blockChain||""]||e.wallets[t.evmApprovalTransaction?.blockChain||""]||e.wallets[t.tronTransaction?.blockChain||""]||e.wallets[t.tronApprovalTransaction?.blockChain||""]||e.wallets[t.starknetTransaction?.blockChain||""]||e.wallets[t.starknetApprovalTransaction?.blockChain||""]||e.wallets[t.cosmosTransaction?.blockChain||""]||e.wallets[t.solanaTransaction?.blockChain||""]||e.wallets[t.tonTransaction?.blockChain||""]||e.wallets[t.suiTransaction?.blockChain||""]||e.wallets[t.xrplTransaction?.blockChain||""]||e.wallets[t.stellarTransaction?.blockChain||""]||(t.transferTransaction?.fromWalletAddress?{address:t.transferTransaction.fromWalletAddress,walletType:Object.values(e.wallets).find(r=>r.address===t.transferTransaction?.fromWalletAddress)?.walletType}:null)||null;if(n==null)throw D.WalletMissing();return n},"getCurrentWalletTypeAndAddress"),J=i((e,t)=>ct(e,t).address,"getCurrentAddressOf");function R(e,t){let{address:n,walletType:r}=ct(e,t),a=Object.keys(e.wallets).map(u=>({k:u,v:e.wallets[u]})).find(({v:u})=>u.address===n&&u.walletType===r)||null,o=a?.k||null,l=a?.v||null,s=l?.walletType;if(l===null)throw D.AssertionFailed(`Wallet for source ${o} not passed: walletType: ${s}`);return l}i(R,"getRelatedWallet");function Pe(e,t){if(!t)return null;try{return R(e,t)}catch(n){return console.log({e:n}),null}}i(Pe,"getRelatedWalletOrNull");var lt=i((e,t,n,r)=>r?.find(o=>o.blockchain===e&&o.symbol?.toUpperCase()===t?.toUpperCase()&&o.address===n)?.usdPrice||null,"getUsdPrice");function Yt(e,t){let n=new ot(0);for(let r=0;r<e.fee.length;r++){let a=e.fee[r];if(a.expenseType==="DECREASE_FROM_OUTPUT")continue;let o=lt(a.asset.blockchain,a.asset.symbol,a.asset.address,t);n=n.plus(new ot(a.amount).multipliedBy(o||0))}return n}i(Yt,"getUsdFeeOfStep");function st(e,t){return{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,fromUsdPrice:e.from.usdPrice,toBlockchain:e.to.blockchain,toBlockchainLogo:e.to.blockchainLogo,toSymbol:e.to.symbol,toSymbolAddress:e.to.address,toDecimals:e.to.decimals,toLogo:e.to.logo,toUsdPrice:e.to.usdPrice,swapperId:e.swapperId,swapperLogo:e.swapperLogo,swapperType:e.swapperType,expectedOutputAmountHumanReadable:e.toAmount,feeInUsd:t?nt(Yt(e,t?.tokens),null,8):null,estimatedTimeInSeconds:e.estimatedTimeInSeconds||null,internalSteps:null}}i(st,"mapSwapStepToPendingSwapStep");function jt(e){let{inputAmount:t,bestRoute:n,wallets:r,settings:a,validateBalanceOrFee:o,meta:l,swapMode:s="swap"}=e,u=n.result;if(!u)throw Error("Simulation result should not be null");return{creationTime:new Date().getTime().toString(),finishTime:null,requestId:n.requestId||"",inputAmount:t,wallets:r,status:"running",mode:s,isPaused:!1,extraMessage:null,extraMessageSeverity:null,extraMessageDetail:null,extraMessageErrorCode:null,networkStatusExtraMessage:null,networkStatusExtraMessageDetail:null,lastNotificationTime:null,settings:a,simulationResult:u,validateBalanceOrFee:o,steps:n.result?.swaps?.map((p,c)=>{let S=st(p,l);return{id:c+1,...S,internalSwaps:p?.internalSwaps?.map(d=>st(d,l))||null,outputAmount:"",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,tonTransaction:null,suiTransaction:null,xrplTransaction:null,stellarTransaction:null,hasAlreadyProceededToSign:!1}})||[]}}i(jt,"calculatePendingSwap");var Oe=(n=>(n.RouteEvent="routeEvent",n.StepEvent="stepEvent",n))(Oe||{}),De=(r=>(r.STARTED="started",r.FAILED="failed",r.SUCCEEDED="succeeded",r))(De||{}),z=(r=>(r.CREATE_TX="create_tx",r.SEND_TX="send_tx",r.TX_SENT="tx_sent",r))(z||{}),fe=(a=>(a.WAITING_FOR_QUEUE="waiting_for_queue",a.WAITING_FOR_WALLET_CONNECT="waiting_for_wallet_connect",a.WAITING_FOR_NETWORK_CHANGE="waiting_for_network_change",a.WAITING_FOR_CHANGE_WALLET_ACCOUNT="waiting_for_change_wallet_account",a))(fe||{}),B=(u=>(u.STARTED="started",u.FAILED="failed",u.SUCCEEDED="succeeded",u.TX_EXECUTION="tx_execution",u.TX_EXECUTION_BLOCKED="tx_execution_blocked",u.APPROVAL_TX_SUCCEEDED="approval_tx_succeeded",u.CHECK_STATUS="check_status",u.OUTPUT_REVEALED="output_revealed",u))(B||{}),Ue=(a=>(a.ERROR="error",a.SUCCESS="success",a.WARNING="warning",a.INFO="info",a))(Ue||{});function ut(e){return e.map(t=>{let{diagnosisUrl:n,estimatedTimeInSeconds:r,explorerUrl:a,feeInUsd:o,executedTransactionId:l,executedTransactionTime:s,expectedOutputAmountHumanReadable:u,fromBlockchain:p,toBlockchain:c,fromSymbol:S,toSymbol:d,fromSymbolAddress:g,toSymbolAddress:m,swapperType:E,swapperId:C,outputAmount:_,fromAmountMaxValue:T,fromAmountMinValue:A,fromAmountPrecision:y,fromAmountRestrictionType:v,fromDecimals:x,status:k}=t;return{diagnosisUrl:n,estimatedTimeInSeconds:r,explorerUrl:a,feeInUsd:o,executedTransactionId:l,executedTransactionTime:s,expectedOutputAmountHumanReadable:u,fromBlockchain:p,toBlockchain:c,fromSymbol:S,toSymbol:d,fromSymbolAddress:g,toSymbolAddress:m,swapperName:C,swapperType:E,outputAmount:_,fromAmountMaxValue:T,fromAmountMinValue:A,fromAmountPrecision:y,fromAmountRestrictionType:v,fromDecimals:x,status:k,transaction:h(t)}})}i(ut,"createSteps");function Jt(e,t,n){let{creationTime:r,finishTime:a,requestId:o,inputAmount:l,status:s,wallets:u,steps:p,settings:c}=e,S=ut(p),g={route:{creationTime:r,finishTime:a,requestId:o,inputAmount:l,status:s,wallets:u,steps:S,slippage:c.slippage,infiniteApproval:c.infiniteApprove},step:S[S.length-1]};if(n)g.step=ut([n])[0];else if(t==="failed"){let m=pt(S);m&&(g.step=m)}else{let m=Z(S);m&&(g.step=m)}return g}i(Jt,"getEventPayload");function zt(e,t,n){let r,{type:a}=e;switch(a){case"started":r={...e,type:"started"};break;case"failed":r={...e,type:"failed",inputAmount:n.inputAmount,inputAmountUsd:be(n),swapMode:n.mode||"swap"};break;case"succeeded":{r={...e,type:"succeeded",inputAmount:n.inputAmount,inputAmountUsd:be(n),outputAmount:n.steps[n.steps.length-1].outputAmount??"",outputAmountUsd:dt(n),swapMode:n.mode||"swap"};break}default:break}r&&j("emitter")?.emit("routeEvent",{event:r,route:t})}i(zt,"emitRouteEvent");function Zt(e,t,n){j("emitter")?.emit("stepEvent",{event:e,route:t,step:n})}i(Zt,"emitStepEvent");function w(e){let{event:t}=e,{type:n}=t,{route:r,step:a}=Jt(e.swap,n,e.step??void 0),o=`${a.fromBlockchain}.${a.fromSymbol}`,l=`${a.toBlockchain}.${a.toSymbol}`,s=a.outputAmount??"",u=e.step?W(e.swap,e.step):null,p="",c="info";switch(n){case"started":p="Swap process started",c="success";break;case"succeeded":p=`You received ${s} ${l}, hooray!`,c="success";break;case"failed":p=`Swap failed: ${e.swap?.extraMessage??"Reason is unknown"}`,c="error";break;case"tx_execution":t.status==="create_tx"?(p="Please wait while the transaction is created ...",c="info"):t.status==="send_tx"?(e.step&&L(e.step)?p=`Please confirm '${a.swapperName}' smart contract access to ${o}`:p="Please confirm transaction request in your wallet",c="warning"):t.status==="tx_sent"&&(p="Transaction sent successfully",c="info");break;case"check_status":e.step&&L(e.step)?p="Checking approve transaction status ...":p="Checking transaction status ...",c="info";break;case"approval_tx_succeeded":p="Smart contract called successfully",c="success";break;case"output_revealed":p="Transaction output amount revealed",c="success";break;case"tx_execution_blocked":t.status==="waiting_for_wallet_connect"?(p="Please connect your wallet.",c="warning"):t.status==="waiting_for_queue"?(p="Waiting for other swaps to complete",c="warning"):t.status==="waiting_for_change_wallet_account"?(p="Please change your wallet account.",c="warning"):t.status==="waiting_for_network_change"&&(p=`Please change your wallet network to ${u?.network}.`,c="warning");break;default:break}e.step&&Zt({...t,message:p,messageSeverity:c},r,a),(e.event.type==="failed"||!e.step)&&zt({...t,message:p,messageSeverity:c},r,e.swap)}i(w,"notifier");var We=null;function Ee(){return{claimedBy:()=>We?.id,setClaimer:e=>{We={id:e}},reset:()=>{We=null}}}i(Ee,"claimQueue");var K={};function we(){return{getTransactionDataByHash:e=>K[e]||{},setTransactionDataByHash:(e,t)=>{K[e]||(K[e]={}),K[e].response=t.response||K[e].response,K[e].receiptReceived=t.receiptReceived||K[e].receiptReceived||!1}}}i(we,"inMemoryTransactionsData");var f=i(e=>e.steps.find(t=>t.status!=="failed"&&t.status!=="success")||null,"getCurrentStep"),h=i(e=>{let{evmTransaction:t,evmApprovalTransaction:n,cosmosTransaction:r,solanaTransaction:a,transferTransaction:o,starknetApprovalTransaction:l,starknetTransaction:s,tronApprovalTransaction:u,tronTransaction:p,tonTransaction:c,suiTransaction:S,xrplTransaction:d}=e;return t||n||r||a||o||l||s||u||p||c||S||d},"getCurrentStepTx"),ye=i((e,t)=>{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,e.tonTransaction=null,e.suiTransaction=null,e.xrplTransaction=null,e.stellarTransaction=null;let n=t.type;switch(n){case I.EVM:t.isApprovalTx?e.evmApprovalTransaction=t:e.evmTransaction=t;break;case I.TRON:t.isApprovalTx?e.tronApprovalTransaction=t:e.tronTransaction=t;break;case I.STARKNET:t.isApprovalTx?e.starknetApprovalTransaction=t:e.starknetTransaction=t;break;case I.COSMOS:e.cosmosTransaction=t;break;case I.SOLANA:e.solanaTransaction=t;break;case I.TRANSFER:e.transferTransaction=t;break;case I.TON:e.tonTransaction=t;break;case I.SUI:e.suiTransaction=t;break;case I.XRPL:e.xrplTransaction=t;break;case I.STELLAR:e.stellarTransaction=t;break;default:(r=>{throw new Error(`${r} was unhandled!`)})(n)}return e},"setCurrentStepTx"),Me=i(e=>h(e)?.type,"getCurrentStepTxType"),L=i(e=>{let{evmApprovalTransaction:t,starknetApprovalTransaction:n,tronApprovalTransaction:r}=e;return!!(t||n||r)},"isApprovalCurrentStepTx");function O({getStorage:e,setStorage:t,nextStatus:n,nextStepStatus:r,message:a,details:o,errorCode:l=null,hasAlreadyProceededToSign:s,trace:u=null}){let p=e().swapDetails,c=f(p),S={swap:p,step:c};if(r&&c&&(c.status=r),n&&(p.status=n),p.hasAlreadyProceededToSign=s,n&&["failed","success"].includes(n)&&(p.finishTime=new Date().getTime().toString()),(a||o)&&(p.extraMessage=a||"",p.extraMessageDetail=o||""),r&&["failed"].includes(r)){let d=o&&o.includes("Warning")?"Swap canceled by user.":o,g=Pe(p,c)?.walletType;p.extraMessageSeverity="error";let m=at(l);S.failureType=m;let E=l!=="REJECTED_BY_USER"&&u?.message&&typeof u.message=="string"?u.message:d||"";q().reportFailure({requestId:p.requestId,step:c?.id||1,eventType:m,reason:E,tags:g?{wallet:g}:void 0}).then().catch()}else r&&["running"].includes(r)?p.extraMessageSeverity="info":r&&["success","approved"].includes(r)?p.extraMessageSeverity="success":r&&["waitingForApproval"].includes(r)&&(p.extraMessageSeverity="warning");return r==="running"&&c&&(c.startTransactionTime=new Date().getTime()),t({...e(),swapDetails:p}),S}i(O,"updateSwapStatus");function sn({getStorage:e,setStorage:t},n,r){let a=e().swapDetails;a.hasAlreadyProceededToSign=null;let o=f(a);o.executedTransactionId=n,o.executedTransactionTime=new Date().getTime().toString(),r?.url&&(o.explorerUrl=[...o.explorerUrl||[],{url:r.url,description:r.description||null}]),L(o)?a.extraMessage="Checking approve transaction status ...":a.extraMessage="Checking transaction status ...",a.extraMessageDetail="",a.extraMessageSeverity="info",t({...e(),swapDetails:a}),w({event:{type:"tx_execution",status:"tx_sent"},swap:a,step:o}),w({event:{type:"check_status"},swap:a,step:o})}i(sn,"setStepTransactionIds");function cn({getStorage:e,setStorage:t},n,r){let a=e().swapDetails,o=f(a);if(!o)return;let l=new Date;a.lastNotificationTime=l.getTime().toString(),!(o.networkStatus===ee.WaitingForConnectingWallet&&a.networkStatusExtraMessage===n&&a.networkStatusExtraMessageDetail===r)&&(o.networkStatus=ee.WaitingForConnectingWallet,a.networkStatusExtraMessage=n,a.networkStatusExtraMessageDetail=r,t({...e(),swapDetails:a}))}i(cn,"markRunningSwapAsWaitingForConnectingWallet");function gt({getStorage:e,setStorage:t}){let n=e().swapDetails,r=f(n);if(!r)return;let{type:a}=U(n),o=F(n,r),l=`Change ${a} wallet network to ${o.network}`,s=`We\u2019re switching the connected network to ${o.network}. Please check your wallet.`,u=new Date;return n.lastNotificationTime=u.getTime().toString(),r.networkStatus=ee.WaitingForNetworkChange,n.networkStatusExtraMessage=l,n.networkStatusExtraMessageDetail=s,t({...e(),swapDetails:n}),{swap:n,step:r}}i(gt,"markRunningSwapAsSwitchingNetwork");function mt({getStorage:e,setStorage:t}){let n=e().swapDetails,r=f(n);if(r)return n.networkStatusExtraMessage="",n.networkStatusExtraMessageDetail="",r.networkStatus=ee.WaitingForQueue,w({event:{type:"tx_execution_blocked",status:"waiting_for_queue"},swap:n,step:r}),t({...e(),swapDetails:n}),{swap:n,step:r}}i(mt,"markRunningSwapAsDependsOnOtherQueues");async function xe(e){return new Promise(t=>setTimeout(t,e))}i(xe,"delay");var ln=i((e,t)=>e.wallets[t]?.walletType,"getSwapWalletType");function Fe(e){return e===null||e?.blockchains===null||e?.blockchains.length===0}i(Fe,"isWalletNull");function U(e){let t=f(e),n=W(e,t);if(!n)return{type:null,namespace:null,address:null};let r=ln(e,n.network),a=e.wallets[n.network];return{type:r||null,namespace:n,address:a?a.address:null}}i(U,"getRequiredWallet");async function un(e){try{return await e.request({method:"eth_chainId"})||e?.chainId}catch{return e?.chainId}}i(un,"getChainId");async function pn(e,t,n){let r=rn(e,n);if(r)return await un(r);let o=t(n).get("evm");if(!o)throw new Error("EVM namespace not found for wallet type: "+n);return o.getChainId()}i(pn,"getProviderChainId");async function Tt(e,t,n,r,a,o){if(Fe(n))return!1;let l=W(e,t);if(!l)return!1;if(r.evmBasedChains.find(s=>s.name===l.network)){try{let s=e.wallets[l.network];if(s){let u=await pn(a,o,s.walletType);if(u){let p=nn(u,Object.entries(r.blockchains).map(([,c])=>c));if(p&&p.toLowerCase()===l.network.toLowerCase())return!0;if(p&&p.toLowerCase()!==l.network.toLowerCase())return!1}}}catch(s){console.log(s)}return!1}return!0}i(Tt,"isNetworkMatchedForTransaction");var ft=i((e,t)=>(e.wallets[t.evmTransaction?.blockChain||""]||e.wallets[t.evmApprovalTransaction?.blockChain||""]||e.wallets[t.tronTransaction?.blockChain||""]||e.wallets[t.tronApprovalTransaction?.blockChain||""]||e.wallets[t.starknetTransaction?.blockChain||""]||e.wallets[t.starknetApprovalTransaction?.blockChain||""]||e.wallets[t.cosmosTransaction?.blockChain||""]||e.wallets[t.solanaTransaction?.blockChain||""]||e.wallets[t.tonTransaction?.blockChain||""]||e.wallets[t.suiTransaction?.blockChain||""]||e.wallets[t.xrplTransaction?.blockChain||""]||t.transferTransaction?.fromWalletAddress||null)!==null,"isTxAlreadyCreated");function Ae(e){let{getStorage:t,setStorage:n}=e,r=t().swapDetails,a=f(r);a?.networkStatus&&(a.networkStatus=null,n({...t(),swapDetails:r}))}i(Ae,"resetNetworkStatus");function Be(e,t={message:"",details:"",status:null}){let{message:n,details:r,status:a}=t,{getStorage:o,setStorage:l}=e,s=o().swapDetails,u=f(s);u?.networkStatus&&(s.networkStatusExtraMessage=n,s.networkStatusExtraMessageDetail=r,u.networkStatus=a,l({...o(),swapDetails:s}))}i(Be,"updateNetworkStatus");function Et(e,t){let{context:n,queue:r}=t,a=r.getStorage().swapDetails,{ok:o,reason:l}=Xe(a,n.state);if(!o){let s=f(a),{type:u,address:p}=U(a);w({event:{type:"tx_execution_blocked",...l==="account_miss_match"?{status:"waiting_for_change_wallet_account",requiredAccount:p??void 0}:{status:"waiting_for_wallet_connect",requiredWallet:u??void 0,requiredAccount:p??void 0}},swap:a,step:s}),cn({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)},Ze,e.reason.description);return}r.unblock()}i(Et,"onBlockForConnectWallet");function wt(e,t){let{context:n,queue:r}=t,a=r.getStorage().swapDetails,o=f(a);if(!o||a.status!=="running")return;let l=gt({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)}),s=W(a,o)?.network,u=U(a).type,p=u?n.state(u).network:void 0;l&&w({event:{type:"tx_execution_blocked",status:"waiting_for_network_change",requiredNetwork:s??void 0,currentNetwork:p??void 0},swap:l.swap,step:l.step});let{type:c,namespace:S}=U(a);if(c&&S?.network&&n.canSwitchNetworkTo(c,S.network,S)){let d=n.switchNetwork(c,S);d&&d.then(()=>{r.unblock()}).catch(g=>{Be({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)},{message:g.message,details:g.message,status:ee.NetworkChangeFailed})})}}i(wt,"onBlockForChangeNetwork");function yt(e,t){let{getBlockedTasks:n,forceExecute:r,queue:a,manager:o,context:l}=t,{setClaimer:s,claimedBy:u,reset:p}=Ee(),c=n().filter(T=>T.reason.reason==="depends_on_other_queues");if(c.length===0)return;let S=u(),d=!!S;if(S===a.id)return;if(d){mt({getStorage:a.getStorage.bind(a),setStorage:a.setStorage.bind(a)});return}let g=c.find(T=>T.queue_id===t.queue_id);g||(g=c[0]),s(g.queue_id);let m=g.storage.get(),{type:E,namespace:C,address:_}=U(m.swapDetails);r(g.queue_id,{claimedBy:u(),resetClaimedBy:()=>{p(),E&&He({walletType:E,network:C?.network,accounts:_?[_]:[]},o,l.canSwitchNetworkTo)}})}i(yt,"onDependsOnOtherQueues");function Xe(e,t){let{type:n,address:r}=U(e);if(!n||!r)return{ok:!1,reason:"not_connected"};let a=t(n),{accounts:o,connected:l}=a,s=o||[];return l?{ok:s.some(p=>{let{address:c}=tn(p);return r.toLocaleLowerCase()===c.toLocaleLowerCase()}),reason:"account_miss_match"}:{ok:!1,reason:"not_connected"}}i(Xe,"isRequiredWalletConnected");function Qe(e,t,n){let{setTransactionDataByHash:r}=we(),{getStorage:a,context:o}=e,{meta:l}=o,s=a().swapDetails,u=f(s),p=F(s,u),c=le(t.hash,p.network,l.blockchains);sn(e,t.hash,c&&(!t.response||t.response&&!t.response.hashRequiringUpdate)?{url:c,description:n.isApproval?"Approve":"Swap"}:void 0),t.response&&r(t.hash,{response:t.response})}i(Qe,"updateStorageOnSuccessfulSign");function Ce(e,t){return({hash:n,response:r})=>{let{schedule:a,next:o}=e;Qe(e,{hash:n,response:r},t),a("CHECK_TRANSACTION_STATUS"),o()}}i(Ce,"handleSuccessfulSign");function $(e){return t=>{let{getStorage:n,setStorage:r,failed:a}=e,o=n().swapDetails,l=f(o);if(o.status==="failed")return;let s=R(o,l),{extraMessage:u,extraMessageDetail:p,extraMessageErrorCode:c}=H(t);en(t,{tags:{requestId:o.requestId,rpc:!0,swapper:l?.swapperId||"",walletType:s?.walletType||""},context:on.isSignerError(t)?t.getErrorContext():{}});let S=O({getStorage:n,setStorage:r,nextStatus:"failed",nextStepStatus:"failed",message:u,details:p,errorCode:c,trace:t?.cause});w({event:{type:"failed",reason:u,reasonCode:S.failureType??P,inputAmount:M(o),inputAmountUsd:X(o)},...S}),a()}}i($,"handleRejectedSign");function xt(e){let{lastConnectedWallet:t,evmChains:n,manager:r}=e,{walletType:a,network:o}=t;n.some(l=>l.name==o)&&r?.getAll().forEach(l=>{let s=l.list.getStorage(),u=s?.swapDetails;if(u&&u.status==="running"){let p=f(u);if(p){let c=s?.swapDetails.wallets[p.fromBlockchain]?.walletType,S=Object.keys(l.list.state.tasks).some(g=>{let m=l.list.state.tasks[g];return m.status===Le.BLOCKED&&["waiting_for_connecting_wallet"].includes(m.blockedFor?.reason)}),d=W(u,p)?.network;if(!n.some(g=>g.name==d))return;if(c===a&&S&&d!=o){let g=l.list,{type:m}=U(u),E=ge(m);l.list.block({reason:{reason:"waiting_for_network_change",description:E},silent:!0});let C=gt({getStorage:g.getStorage.bind(g),setStorage:g.setStorage.bind(g)});C&&w({event:{type:"tx_execution_blocked",status:"waiting_for_network_change",currentNetwork:o,requiredNetwork:d??void 0},swap:C.swap,step:C.step})}}}})}i(xt,"checkWaitingForConnectWalletChange");function qe(e){e?.getAll().forEach(t=>{if(Object.keys(t.list.state.tasks).some(r=>{let a=t.list.state.tasks[r];return a.status===Le.BLOCKED&&["waiting_for_network_change","depends_on_other_queues"].includes(a.blockedFor?.reason)})){let r=t.list.getStorage()?.swapDetails;if(r.status==="running"){let{type:a}=U(r),o=Se(a);t.list.block({reason:{reason:"waiting_for_connecting_wallet",description:o}})}}})}i(qe,"checkWaitingForNetworkChange");function dn(e){let t=e?.getAll()||new Map,n=[];return t.forEach(r=>{let o=r.list.getStorage()?.swapDetails;!o||o.status!=="running"||n.push(o)}),n}i(dn,"getRunningSwaps");function Sn(e){e.forEach(t=>{let n=f(t),r="tx_execution_blocked",a;n?.networkStatus===ee.WaitingForQueue?a="waiting_for_queue":t?.status==="running"&&(a="waiting_for_wallet_connect"),r&&w&&w({event:{type:r,status:a??"waiting_for_queue"},swap:t,step:n})})}i(Sn,"resetRunningSwapNotifsOnPageLoad");function He(e,t,n,r={fallbackToOnlyWallet:!0}){let{walletType:a,network:o}=e;if(!a)return;let l=[],s=[];t?.getAll().forEach(p=>{if(p.status===Le.BLOCKED){let c=p.list.getStorage(),S=c?.swapDetails;if(S&&S.status==="running"){let d=f(S);d&&(o&&W(S,d)?.network==o&&c?.swapDetails.wallets[o]?.walletType===a?l.push(p.list):c?.swapDetails.wallets[d.fromBlockchain]?.walletType===a&&s.push(p.list))}}});let u;if(l.length>0){if(u=l[0],l.length>1)for(let p=1;p<l.length;p++){let c=l[p];mt({getStorage:c.getStorage.bind(c),setStorage:c.setStorage.bind(c)})}}else s.length>0&&r.fallbackToOnlyWallet&&(u=s[0]);if(u){let p=u.getStorage(),c=f(p?.swapDetails),S=c?W(p.swapDetails,c):null;!o||!S||!n?.(a,o,S)?u.unblock():u.checkBlock()}}i(He,"retryOn");function At(e){return!!e.evmTransaction||!!e.evmApprovalTransaction}i(At,"isNeedBlockQueueForParallel");async function Ct(e){let t=await e;if(!t.ok||!t.transaction)throw D.CreateTransaction(t.error||"bad response from create tx endpoint");return t}i(Ct,"throwOnOK");function gn(e,t){let{reset:n}=Ee();e.actions.cancel();let r=O({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 w({event:{type:"failed",reasonCode:"USER_CANCEL",reason:r.swap.extraMessage??void 0,inputAmount:M(r.swap),inputAmountUsd:X(r.swap)},swap:r.swap,step:r.step}),n(),t&&t?.retry(),r}i(gn,"cancelSwap");function Z(e){return e.slice().reverse().find(t=>t.status==="success")}i(Z,"getLastSuccessfulStep");function pt(e){return e.slice().reverse().find(t=>t.status==="failed")}i(pt,"getFailedStep");function mn(e){let{transaction:t}=e;return t?.type===I.EVM&&t.isApprovalTx||t?.type===I.STARKNET&&t.isApprovalTx||t?.type===I.TRON&&t.isApprovalTx}i(mn,"isApprovalTX");function ke(e,t){let n=new an(e).multipliedBy(t);return isNaN(n.toNumber())?"":n.toString()}i(ke,"getTokenAmountInUsd");function be(e){return ke(e.inputAmount,e.steps[0].fromUsdPrice??"")}i(be,"getSwapInputUsd");function dt(e){let t=e.steps[e.steps.length-1];return ke(t.outputAmount??"",t.toUsdPrice??"")}i(dt,"getSwapOutputUsd");function kt(e){let t=["success","failed"],n=e.steps.findLastIndex(r=>t.includes(r.status));return n<0?void 0:{step:e.steps[n],index:n}}i(kt,"getLastFinishedStep");function M(e){let t=kt(e);return t?t.index===0?e.inputAmount:e.steps[t.index-1].outputAmount??"":""}i(M,"getLastFinishedStepInput");function X(e){let t=kt(e);return ke(M(e),t?.step?.fromUsdPrice??"")}i(X,"getLastFinishedStepInputUsd");function _e(e){let t=Z(e.steps);return ke(t?.outputAmount??"",t?.toUsdPrice??"")}i(_e,"getLastSuccessfulStepOutputUsd");function te(e,t,n){return{type:"failed",reason:t,reasonCode:n??P,inputAmount:M(e),inputAmountUsd:X(e)}}i(te,"createStepFailedEvent");var _t=5e3,Tn=5e3;async function fn({getStorage:e,setStorage:t,next:n,schedule:r,retry:a,failed:o,context:l}){let s=e().swapDetails,{meta:u}=l,p=new Error("check status Error"),c=f(s);if(!c?.executedTransactionId)return;let S=h(c),d=c.executedTransactionId,g=!1,m=null,E=null,{getTransactionDataByHash:C,setTransactionDataByHash:_}=we();try{let x=Me(c),k=R(s,c);x&&k&&(E=(await l.getSigners(k.walletType)).getSigner(x))}catch{}try{let{response:x,receiptReceived:k}=C(d);if(E?.wait&&!k){let b=S?.blockChain&&u.blockchains?.[S?.blockChain]?.chainId||void 0,{hash:N,response:Y}=await E.wait(d,b,x);if(N!==d){c.executedTransactionId=N||c.executedTransactionId;let Q=F(s,c),ce;!!Object.keys(u.blockchains).length&&(ce=le(c.executedTransactionId,Q.network,u.blockchains)),ce&&c.explorerUrl&&c.explorerUrl?.length>=1&&(c.explorerUrl[c.explorerUrl.length-1]={url:ce,description:"Replaced Swap"}),d=c.executedTransactionId,N&&Y&&_(N,{response:Y})}else _(N,{receiptReceived:!0})}}catch(x){let{extraMessage:k,extraMessageDetail:b,extraMessageErrorCode:N}=H(x),Y=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:k,details:b,errorCode:N}),Q=te(s,k,Y.failureType);ne(p,{tags:{type:"singer-error",reason:Q.reason,reasonCode:Q.reasonCode,message:k,messageDetail:b,pendingSwap:s},context:vt.isSignerError(x)?x.getErrorContext():{}}),g=!0}let T={requestId:s.requestId,txId:d,step:c.id};try{m=await q().checkStatus(T)}catch{await xe(_t),a(),ne(p,{tags:{type:"request-error",requestBody:T,pendingSwap:s}});return}if(g)return o();if(c?.status==="failed")return;let A=m?.outputAmount||(c.outputAmount?c.outputAmount:null),y=c.outputAmount||null;s.extraMessage=m?.extraMessage||s.extraMessage,s.extraMessageSeverity="info",s.extraMessageDetail="",c.status=m?.status||c.status,c.diagnosisUrl=m?.diagnosisUrl||c.diagnosisUrl||null,c.outputAmount=A||c.outputAmount,c.explorerUrl=m?.explorerUrl||c.explorerUrl,c.internalSteps=m?.steps||null;let v=m?.newTx;if(v&&(c.status="created",c.executedTransactionId=null,c.executedTransactionTime=null,ye(c,v)),y===null&&A!==null?w({event:{type:"output_revealed",outputAmount:A},swap:s,step:c}):y===null&&A===null&&w({event:{type:"check_status"},swap:s,step:c}),c.status==="success"){let x=it(s,c);s.extraMessageDetail="",s.extraMessage=x?`starting next step: ${x.swapperId}: ${x.fromBlockchain} -> ${x.toBlockchain}`:"",w({event:{type:"succeeded",inputAmount:M(s),inputAmountUsd:X(s),outputAmount:c.outputAmount??"",outputAmountUsd:_e(s)},swap:s,step:c})}else c.status==="failed"&&(s.extraMessage="Transaction failed in blockchain",s.extraMessageSeverity="error",s.extraMessageDetail=m?.extraMessage||"",s.status="failed",s.finishTime=new Date().getTime().toString(),ne(p,{tags:{type:"transaction-failed",message:s.extraMessage,messageDetails:s.extraMessageDetail,pendingSwap:s}}));t({...e(),swapDetails:s}),m?.status==="failed"?o():m?.status==="success"||m?.status==="running"&&m.newTx?(r("SCHEDULE_NEXT_STEP"),n()):(await xe(_t),a())}i(fn,"checkTransactionStatus");async function En({getStorage:e,setStorage:t,next:n,schedule:r,retry:a,failed:o,context:l}){let s=e().swapDetails,{meta:u}=l,{getTransactionDataByHash:p,setTransactionDataByHash:c}=we(),S=new Error("check approval status error"),d=f(s);if(!d){console.log("ignore check status, current step is null");return}let g=h(d);if(!d?.executedTransactionId)return;let m=d.executedTransactionId,E=null;try{let T=Me(d),A=R(s,d);T&&A&&(E=(await l.getSigners(A.walletType)).getSigner(T))}catch{}try{let{response:T,receiptReceived:A}=p(m);if(E?.wait&&!A){let y=g?.blockChain&&u.blockchains?.[g?.blockChain]?.chainId||void 0,{hash:v,response:x}=await E.wait(m,y,T);if(v!==m){d.executedTransactionId=v||d.executedTransactionId;let k=F(s,d),b;!!Object.keys(u.blockchains).length&&(b=le(d.executedTransactionId,k.network,u.blockchains)),b&&d.explorerUrl&&d.explorerUrl?.length>=1&&(d.explorerUrl[d.explorerUrl.length-1]={url:b,description:"Replaced Approve"}),m=d.executedTransactionId,v&&x&&c(v,{response:x})}else c(v,{receiptReceived:!0})}}catch(T){let{extraMessage:A,extraMessageDetail:y,extraMessageErrorCode:v}=H(T),x=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:A,details:y,errorCode:v}),k=te(s,A,x.failureType);return w({event:k,...x}),ne(S,{tags:{type:"singer-error",reason:k.reason,reasonCode:k.reasonCode,message:A,messageDetail:y,pendingSwap:s},context:vt.isSignerError(T)?T.getErrorContext():{}}),o()}let C=!1,_={requestId:s.requestId,txId:d.executedTransactionId};try{let T=await q().checkApproval(_.requestId,_.txId);if(d?.status==="failed")return;if(C=T.isApproved,!C&&(T.txStatus==="failed"||T.txStatus==="success")){let A,y;T.txStatus==="failed"?(A="Approve transaction failed",y="Smart contract approval tx failed in blockchain."):(A="Not enough approval",T.requiredApprovedAmount&&T.currentApprovedAmount?y=`Required approval: ${T.requiredApprovedAmount}, current approval: ${T.currentApprovedAmount}`:y="You still don't have enough approval for this swap.");let v=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",errorCode:"INSUFFICIENT_APPROVE",message:A,details:y}),x=te(s,A,v.failureType);w({event:x,...v}),ne(S,{tags:{type:"approval-failed",message:s.extraMessage,messageDetails:s.extraMessageDetail,pendingSwap:s}}),o()}else C||w({event:{type:"check_status"},swap:s,step:d})}catch{C=!1,ne(S,{tags:{type:"request-error",requestBody:_,pendingSwap:s}})}C?(d.status="approved",s.extraMessage=`Spending ${d.fromSymbol} approved successfully.`,s.extraMessageDetail=null,s.extraMessageSeverity="success",d.evmApprovalTransaction=null,d.executedTransactionId=null,d.executedTransactionTime=null,d.starknetApprovalTransaction=null,d.tronApprovalTransaction=null,t({...e(),swapDetails:s}),w({event:{type:"approval_tx_succeeded"},swap:s,step:d}),r("SCHEDULE_NEXT_STEP"),n()):(await xe(Tn),a())}i(En,"checkApprovalStatus");async function ht(e){let t=e.getStorage().swapDetails,n=f(t);if(!n){console.log("ignore check status, current step is null",t.requestId);return}Ae(e),n.status==="running"?await fn(e):n.status==="waitingForApproval"&&await En(e)}i(ht,"checkStatus");import{PendingSwapNetworkStatus as Rt}from"rango-types";import{Err as he,Ok as Ge}from"ts-results";function ve(e){return e.claimedBy===e._queue?.id}i(ve,"isClaimedByCurrentQueue");function re(e,t){e.block(t),ve(e.context)&&e.context.resetClaimedBy&&e.context.resetClaimedBy()}i(re,"requestBlockQueue");async function ae(e){let{getStorage:t,context:n}=e,r=t().swapDetails,a=f(r),o=wn(e);if(o.err)return o;let l=await yn(e);if(l.err)return l;a.networkStatus===Rt.NetworkChanged&&Be(e,{message:"",details:"The network has been successfully changed.",status:Rt.NetworkChanged});let s=At(a),u=ve(n);if(s&&!u){let p={reason:"depends_on_other_queues",description:Ie,details:{}};return new he(p)}return new Ge(!0)}i(ae,"checkEnvironmentBeforeExecuteTransaction");function wn(e){let{getStorage:t,context:n}=e,{wallets:r}=n,a=t().swapDetails;if(!Xe(a,n.state).ok){let{type:l,address:s}=U(a),u=r?.blockchains?.find(S=>!S.accounts?.find(d=>d.walletType===l)),p=Fe(r)||u?Se(l):et(l,s),c={reason:"waiting_for_connecting_wallet",description:p};return new he(c)}return new Ge(!0)}i(wn,"ensureRequiredWalletIsConnected");async function yn(e){let{getStorage:t,context:n}=e,{meta:r,wallets:a,providers:o,hubProvider:l}=n,s=t().swapDetails,u=f(s),p=await Tt(s,u,a,r,o,l),{claimedBy:c}=Ee();if(!!c()&&!ve(n)&&!p){let g=Ie,m={reason:"depends_on_other_queues",details:g};return new he(m)}else if(!p){let g=F(s,u),m=ge(g.network),E={reason:"waiting_for_network_change",details:m};return new he(E)}return new Ge(!0)}i(yn,"ensureWalletIsOnCorrectNetwork");import{Err as Nt,Ok as It}from"ts-results";function oe(e){let{getStorage:t,context:n}=e,{isMobileWallet:r}=n,a=t().swapDetails,o=f(a),l=R(a,o),s=r(l?.walletType),u=h(o),p=L(o);if(!u||!u.type)return new Nt({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: tx is null!",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"});let c=!!a.hasAlreadyProceededToSign;return p?new It({nextStatus:void 0,nextStepStatus:"waitingForApproval",details:"Waiting for approve transaction to be mined and confirmed successfully",message:`Waiting for approval of ${o?.fromSymbol} coin ${s?"on your mobile phone!":""}`}):c?new Nt({message:"Transaction is expired. Please try again.",nextStepStatus:"failed",nextStatus:"failed",details:"",errorCode:"TX_EXPIRED"}):new It({message:"Executing transaction ...",nextStepStatus:"running",nextStatus:"running",details:`${s?"Check your mobile phone!":""}`})}i(oe,"produceNextStateForTransaction");function se(e,t){let{getStorage:n,setStorage:r}=e,a=n().swapDetails,o=f(a),l=L(o),s=typeof a.hasAlreadyProceededToSign=="boolean",u=O({getStorage:n,setStorage:r,nextStepStatus:t.nextStepStatus,nextStatus:t.nextStatus,message:t.message,details:t.details,errorCode:t.errorCode,hasAlreadyProceededToSign:l?void 0:s});w({event:{type:"failed",reason:t.message,reasonCode:u.failureType??P,inputAmount:M(a),inputAmountUsd:X(a)},...u})}i(se,"onNextStateError");function ie(e,t){let{getStorage:n,setStorage:r}=e,a=n().swapDetails,o=f(a),l=L(o),s=typeof a.hasAlreadyProceededToSign=="boolean",u=O({getStorage:n,setStorage:r,nextStepStatus:t.nextStepStatus,nextStatus:t.nextStatus,message:t.message,details:t.details,hasAlreadyProceededToSign:l?void 0:s});w({event:{type:"tx_execution",status:"send_tx"},...u})}i(ie,"onNextStateOk");import{isXrplTransaction as xn}from"rango-types";import{Err as Re,Ok as Pt}from"ts-results";async function ue(e){return e?xn(e)?e.data.TransactionType!=="Payment"?new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: We only support XRPL transactions with payment type",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"}):Pt(e):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: Expected XRPL transaction but it doesn't match with the structure.",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"}):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: tx is null!",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"})}i(ue,"ensureXrplTransactionIsValid");async function pe(e,t){let r=e.hubProvider(t).get("xrpl");return r?Pt(r):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"XRPL is not available on your wallet.",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"})}i(pe,"ensureXrplNamespaceExists");async function Ot(e,t,n){return!!(await n.namespace.accountLines(e,{peer:t.account})).some(a=>a.currency===t.currency&&a.account===t.account&&a.limit!=="0")}i(Ot,"checkTruslineAlreadyOpened");function Dt(e,t){return{TransactionType:"TrustSet",Account:e,LimitAmount:{currency:t.currency,issuer:t.account,value:t.amount}}}i(Dt,"createTrustlineTransaction");async function Ke(e){let t=await ae(e);if(t.err){re(e,t.val);return}let{failed:n,context:r,schedule:a,getStorage:o,next:l}=e,{meta:s,getSigners:u}=r,p=o().swapDetails,c=f(p),S=h(c),d=R(p,c),g=J(p,c),m=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),E=i(()=>{a("EXECUTE_XRPL_TRANSACTION"),l(),m()},"onSuccessfulFinish"),C=i(N=>{se(e,N.val),n(),m()},"handleErr"),_=oe(e);if(_.err){C(_);return}ie(e,_.val);let T=await ue(S);if(T.err){C(T);return}let A=await pe(r,d.walletType);if(A.err){C(A);return}let y=T.val.preconditions.find(N=>N.type==="XRPL_CHANGE_TRUSTLINE");if(!y){E();return}let v=s.blockchains[T.val.blockChain]?.chainId,x=await u(d.walletType),k={currency:y.currency,account:y.issuer,amount:y.value};if(await Ot(y.wallet,k,{namespace:A.val})){E();return}else{let N=Dt(y.wallet,k),Y=x.getSigner(T.val.type);try{let Q={...T.val,data:N},ce=await Y.signAndSendTx(Q,g,v);Qe(e,ce,{isApproval:!0}),E()}catch(Q){$(e)(Q),m()}}}i(Ke,"checkXrplTrustline");import{warn as An}from"@rango-dev/logging-core";async function Ut(e){let{setStorage:t,getStorage:n,next:r,schedule:a}=e,o=n().swapDetails,l=f(o);if(!h(l)){w({event:{type:"tx_execution",status:"create_tx"},swap:o,step:l});let u={requestId:o.requestId,step:l.id,userSettings:{slippage:o.settings.slippage,infiniteApprove:o.settings.infiniteApprove},validations:{balance:o.validateBalanceOrFee,fee:o.validateBalanceOrFee,approve:!0}};try{let{transaction:p}=await Ct(q().createTransaction(u));p&&ye(l,p),t({...n(),swapDetails:o}),a("SCHEDULE_NEXT_STEP"),r()}catch(p){o.status="failed",o.finishTime=new Date().getTime().toString();let{extraMessage:c,extraMessageDetail:S}=H(p),d=O({getStorage:n,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:c,details:S,errorCode:"FETCH_TX_FAILED"}),g=te(o,c,d.failureType);w({event:g,...d}),p instanceof Error&&An(new Error("create transaction error"),{tags:{message:p.message,requestBody:u,reason:g.reason,reasonCode:g.reasonCode,pendingSwap:o}}),e.failed()}}}i(Ut,"createTransaction");async function Ve(e){let t=await ae(e);if(t.err){re(e,t.val);return}Ae(e);let{failed:n,getStorage:r,context:a}=e,{meta:o,getSigners:l}=a,s=r().swapDetails,u=f(s),p=L(u),c=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),S=oe(e);if(S.err){se(e,S.val),n(),c();return}ie(e,S.val);let d=h(u),g=R(s,u),m=J(s,u),E=o.blockchains?.[d.blockChain]?.chainId,C;try{C=await l(g.walletType)}catch(T){$(e)(T),c();return}await C.getSigner(d.type).signAndSendTx(d,m,E).then(Ce(e,{isApproval:p}),$(e)).finally(()=>{c()})}i(Ve,"executeTransaction");async function $e(e){let t=await ae(e);if(t.err){re(e,t.val);return}let{failed:n,getStorage:r,context:a}=e,{meta:o,getSigners:l}=a,s=r().swapDetails,u=f(s),p=h(u),c=R(s,u),S=J(s,u),d=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),g=i(y=>{se(e,y.val),n(),d()},"handleErr"),m=oe(e);if(m.err){g(m);return}ie(e,m.val);let E=await ue(p);if(E.err){g(E);return}let C=await pe(a,c.walletType);if(C.err){g(C);return}let _=o.blockchains[E.val.blockChain]?.chainId,A=(await l(c.walletType)).getSigner(E.val.type);try{let y=await A.signAndSendTx(E.val,S,_);Ce(e,{isApproval:E.val.data.TransactionType==="TrustSet"})(y)}catch(y){$(e)(y)}d()}i($e,"executeXrplTransaction");import{TransactionType as Cn}from"rango-types";function bt({schedule:e,next:t,failed:n,setStorage:r,getStorage:a}){let o=a().swapDetails,l=f(o),s=o.steps.find(u=>u.status==="failed");if(l&&!s){if(ft(o,l))return l.fromBlockchain===Cn.XRPL?e("CHECK_XRPL_TRUSTLINE"):e("EXECUTE_TRANSACTION"),t();if(l?.executedTransactionId)return e("CHECK_TRANSACTION_STATUS"),t();o.status="running",r({...a(),swapDetails:o}),w({event:{type:"started"},swap:o,step:l}),e("CREATE_TRANSACTION"),t()}else{o.status=s?"failed":"success",o.finishTime=new Date().getTime().toString(),r({...a(),swapDetails:o});let u=M(o),p=X(o);w({...s?{event:{type:"failed",reason:o.extraMessage??void 0,reasonCode:"CALL_OR_SEND_FAILED",inputAmount:u,inputAmountUsd:p}}:{event:{type:"succeeded",inputAmount:u,inputAmountUsd:p,outputAmount:Z(o.steps)?.outputAmount??"",outputAmountUsd:_e(o)}},swap:o,step:null}),s?n():t()}}i(bt,"scheduleNextStep");function Wt({schedule:e,next:t,getStorage:n}){let r=n().swapDetails;w({event:{type:"started"},swap:r,step:null}),e("SCHEDULE_NEXT_STEP"),t()}i(Wt,"start");var Lt={name:"swap",actions:{START:Wt,SCHEDULE_NEXT_STEP:bt,CREATE_TRANSACTION:Ut,EXECUTE_TRANSACTION:Ve,EXECUTE_XRPL_TRANSACTION:$e,CHECK_XRPL_TRUSTLINE:Ke,CHECK_TRANSACTION_STATUS:ht},run:["START"],whenTaskBlocked:(e,t)=>{e.reason.reason==="waiting_for_connecting_wallet"?Et(e,t):e.reason.reason==="waiting_for_network_change"?wt(e,t):e.reason.reason==="depends_on_other_queues"&&yt(e,t)}};import{useManager as Rn}from"@rango-dev/queue-manager-react";import{useEffect as je,useState as Nn}from"react";import{DB_NAME as kn,Persistor as _n,Status as de}from"@rango-dev/queue-manager-core";import{v4 as vn}from"uuid";var Mt="migratedToQueueManager";function Ye(){return!!window.localStorage.getItem(Mt)}i(Ye,"migrated");async function hn(){try{return(await window.indexedDB.databases()).map(e=>e.name).includes(kn)}catch{return!1}}i(hn,"hasQueueManagerOnIDB");async function Ft(){let e=window.localStorage.getItem("pendingSwaps"),t=await hn();if(!e||Ye()||t)return!0;let n=JSON.parse(e),r=[];n.forEach(l=>{if(l.status==="running"){let s=vn(),u={id:l.requestId,createdAt:Number(l.creationTime),name:"swap",status:de.RUNNING,storage:{swapDetails:l},state:{status:de.RUNNING,activeTaskIndex:0,tasks:{[s]:{blockedFor:null,status:de.RUNNING}}},tasks:[{id:s,action:"SCHEDULE_NEXT_STEP"}]};r.push(u)}else{let s=l.status==="success"?de.SUCCESS:de.FAILED,u={id:l.requestId,createdAt:Number(l.creationTime),name:"swap",status:s,storage:{swapDetails:l},state:{status:s,activeTaskIndex:0,tasks:{}},tasks:[]};r.push(u)}});let a=new _n,o=r.map(async l=>a.insertQueue(l));return await Promise.all(o),window.localStorage.setItem(Mt,"1"),!0}i(Ft,"migration");var Bt=0;function In(e){return`${e?.walletType}-${e?.network}-${e?.accounts?.toString()}`}i(In,"getLastConnectedWalletHash");function Pn(){let e=Ye(),[t,n]=Nn(e);return je(()=>{(async()=>Bt||(Bt=1,Ft().finally(()=>{n(!0)})))()},[]),{status:t}}i(Pn,"useMigration");function On(e){let{manager:t}=Rn(),{lastConnectedWallet:n,disconnectedWallet:r,evmChains:a,canSwitchNetworkTo:o,clearDisconnectedWallet:l}=e;je(()=>{n&&(xt({evmChains:a,lastConnectedWallet:n,manager:t}),He(n,t,o))},[In(n)]),je(()=>{r&&(qe(t),l())},[r])}i(On,"useQueueManager");function vo(e){return ze(e),Lt}i(vo,"makeQueueDefinition");export{Ue as EventSeverity,Te as MessageSeverity,D as PrettyError,De as RouteEventType,B as StepEventType,fe as StepExecutionBlockedEventStatus,z as StepExecutionEventStatus,Oe as WidgetEvents,jt as calculatePendingSwap,gn as cancelSwap,qe as checkWaitingForNetworkChange,W as getCurrentNamespaceOfOrNull,f as getCurrentStep,Z as getLastSuccessfulStep,R as getRelatedWallet,Pe as getRelatedWalletOrNull,U as getRequiredWallet,dn as getRunningSwaps,lt as getUsdPrice,mn as isApprovalTX,vo as makeQueueDefinition,H as prettifyErrorMessage,Sn as resetRunningSwapNotifsOnPageLoad,O as updateSwapStatus,Pn as useMigration,On as useQueueManager};
1
+ var Xt=Object.defineProperty;var i=(e,t)=>Xt(e,"name",{value:t,configurable:!0});function Qt(){return process.env.REACT_APP_RANGO_API_KEY}i(Qt,"getApiKeyFromEnv");function Je(){return Qt()||"NOT_SET"}i(Je,"getApiKeyFromEnvOrNotSet");var Ne={API_KEY:Je(),BASE_URL:""};function j(e){return Ne[e]}i(j,"getConfig");function ze(e){return Ne=e,Ne}i(ze,"initConfig");import{warn as ne}from"@rango-dev/logging-core";import{SignerError as vt}from"rango-types";import{warn as en}from"@rango-dev/logging-core";import{Status as Le}from"@rango-dev/queue-manager-core";import{legacyReadAccountAddress as tn}from"@rango-dev/wallets-core/legacy";import{getBlockChainNameFromId as nn,getEvmProvider as rn}from"@rango-dev/wallets-shared";import an from"bignumber.js";import{PendingSwapNetworkStatus as ee,SignerError as on,TransactionType as I}from"rango-types";var Ie="Waiting for other swaps to complete",Ze="Waiting for connecting wallet",et=i((e,t)=>`Please change your ${e||"wallet"} account to ${t||"proper address"}`,"ERROR_MESSAGE_WAIT_FOR_WALLET_DESCRIPTION_WRONG_WALLET"),Se=i(e=>`Please connect your ${e??""} wallet.`,"ERROR_MESSAGE_WAIT_FOR_WALLET_DESCRIPTION"),ge=i(e=>`Please change your network to ${e}.`,"ERROR_MESSAGE_WAIT_FOR_CHANGE_NETWORK"),P="CLIENT_UNEXPECTED_BEHAVIOUR";import{RangoClient as qt}from"rango-sdk";var me,q=i(()=>me||(me=new qt(j("API_KEY"),j("BASE_URL")),me),"httpService");import ot from"bignumber.js";import tt from"bignumber.js";var nt=i((e,t=null,n=null)=>{if(e===null||e==="")return"";let r=new tt(e),a=1,o=1e3;for(let l=0;l<60;l++)if(new tt(r.toFixed(l,a)).eq(r)){o=l;break}if(r.gte(1e4))return r.toFormat(0,a);if(r.gte(1e3)||r.gte(100))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,1))),a);if(r.gte(1))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,2))),a);if(r.gte(.01))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,4))),a);for(let l=t||4;l<17;l++)if(r.gte(Math.pow(10,-l)))return r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,l))),a);return r.isEqualTo(0)?"0":r.toFormat(Math.min(o,Math.min(n||100,Math.max(t||0,8))),a)},"numberToString");import{SignerErrorCode as G,SignerError as Ht,isSignerErrorCode as Gt,isAPIErrorCode as Kt}from"rango-types";var Vt="Assertion failed (Unexpected behaviour)",$t="Create transaction failed in Rango Server",rt="Input wallet not found",D=class e extends Error{constructor(n,r,a,o){super(r);this._isPrettyError=!0;Object.setPrototypeOf(this,e.prototype),e.prototype._isPrettyError=!0,this.code=n,this.detail=o,this.root=a}static{i(this,"PrettyError")}static isPrettyError(n){return n instanceof e||Object.prototype.hasOwnProperty.call(n,"_isPrettyError")}getErrorDetail(){let n=typeof this.root=="object"&&this.root&&this.root.error?this.root.error:JSON.stringify(this.root),r=typeof this.root=="string"?this.root:this.root instanceof Error?this.root.message:n;return{extraMessage:this.message,extraMessageDetail:this.detail||r,extraMessageErrorCode:this.code||null}}static AssertionFailed(n){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",Vt,null,n)}static BadStatusCode(n,r){return new e("TX_FAIL",n,null,`status code = ${r}`)}static CreateTransaction(n){return new e("FETCH_TX_FAILED",$t,null,n)}static WalletMissing(){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",rt,null,"Server requested for a blockchain or address not selected by user")}static BlockchainMissing(){return new e("CLIENT_UNEXPECTED_BEHAVIOUR",rt,null,"Server requested for a blockchain or address not selected by user")}};function at(e){try{return e?Kt(e)?e:Gt(e)?{[G.REJECTED_BY_USER]:"USER_REJECT",[G.SIGN_TX_ERROR]:"CALL_WALLET_FAILED",[G.SEND_TX_ERROR]:"SEND_TX_FAILED",[G.TX_FAILED_IN_BLOCKCHAIN]:"TX_FAILED_IN_BLOCKCHAIN",[G.NOT_IMPLEMENTED]:P,[G.OPERATION_UNSUPPORTED]:P,[G.UNEXPECTED_BEHAVIOUR]:P}[e]:P:P}catch{return P}}i(at,"mapAppErrorCodesToAPIErrorCode");var H=i(e=>{if(!e)return{extraMessage:"",extraMessageErrorCode:null};if(D.isPrettyError(e))return e.getErrorDetail();if(Ht.isSignerError(e)){let t=e.getErrorDetail();return{extraMessage:t.message,extraMessageDetail:t.detail,extraMessageErrorCode:t.code}}return e instanceof Error?{extraMessage:e.toString(),extraMessageErrorCode:null}:typeof e!="string"?{extraMessage:JSON.stringify(e),extraMessageErrorCode:null}:{extraMessage:e,extraMessageErrorCode:null}},"prettifyErrorMessage");var Te=(a=>(a.error="error",a.warning="warning",a.info="info",a.success="success",a))(Te||{}),W=i((e,t)=>{try{return F(e,t)}catch{return null}},"getCurrentNamespaceOfOrNull"),F=i((e,t)=>{let n=t.evmTransaction?.blockChain||t.evmApprovalTransaction?.blockChain,r=t.starknetTransaction?.blockChain||t.starknetApprovalTransaction?.blockChain,a=t.tronTransaction?.blockChain||t.tronApprovalTransaction?.blockChain,o=t.cosmosTransaction?.blockChain,l=t.solanaTransaction?.blockChain,s=t.tonTransaction?.blockChain,u=t.suiTransaction?.blockChain,p=t.xrplTransaction?.blockChain,c=t.stellarTransaction?.blockChain;if(n)return{namespace:"EVM",network:n};if(r)return{namespace:"Starknet",network:r};if(a)return{namespace:"Tron",network:a};if(o)return{namespace:"Cosmos",network:o};if(l)return{namespace:"Solana",network:l};if(s)return{namespace:"Ton",network:s};if(u)return{namespace:"Sui",network:u};if(p)return{namespace:"XRPL",network:p};if(c)return{namespace:"Stellar",network:c};if(t.transferTransaction){let S=t.transferTransaction.fromWalletAddress;if(!S)throw D.BlockchainMissing();let d=Object.keys(e.wallets).find(g=>e.wallets[g]?.address===S);if(!d)throw D.BlockchainMissing();return{namespace:"UTXO",network:d}}throw new Error("Unsupported transaction type has been included in your swap.",{cause:t})},"getCurrentNamespaceOf"),le=i((e,t,n)=>{let a=n[t].info?.transactionUrl;if(a)return a.indexOf("/{txHash}")!==-1?a.replace("{txHash}",e):`${a}/${e}`},"getScannerUrl");function it(e,t){return e.steps.find(n=>n.status!=="failed"&&n.status!=="success"&&n.id!==t.id)||null}i(it,"getNextStep");var ct=i((e,t)=>{let n=e.wallets[t.evmTransaction?.blockChain||""]||e.wallets[t.evmApprovalTransaction?.blockChain||""]||e.wallets[t.tronTransaction?.blockChain||""]||e.wallets[t.tronApprovalTransaction?.blockChain||""]||e.wallets[t.starknetTransaction?.blockChain||""]||e.wallets[t.starknetApprovalTransaction?.blockChain||""]||e.wallets[t.cosmosTransaction?.blockChain||""]||e.wallets[t.solanaTransaction?.blockChain||""]||e.wallets[t.tonTransaction?.blockChain||""]||e.wallets[t.suiTransaction?.blockChain||""]||e.wallets[t.xrplTransaction?.blockChain||""]||e.wallets[t.stellarTransaction?.blockChain||""]||(t.transferTransaction?.fromWalletAddress?{address:t.transferTransaction.fromWalletAddress,walletType:Object.values(e.wallets).find(r=>r.address===t.transferTransaction?.fromWalletAddress)?.walletType}:null)||null;if(n==null)throw D.WalletMissing();return n},"getCurrentWalletTypeAndAddress"),J=i((e,t)=>ct(e,t).address,"getCurrentAddressOf");function R(e,t){let{address:n,walletType:r}=ct(e,t),a=Object.keys(e.wallets).map(u=>({k:u,v:e.wallets[u]})).find(({v:u})=>u.address===n&&u.walletType===r)||null,o=a?.k||null,l=a?.v||null,s=l?.walletType;if(l===null)throw D.AssertionFailed(`Wallet for source ${o} not passed: walletType: ${s}`);return l}i(R,"getRelatedWallet");function Pe(e,t){if(!t)return null;try{return R(e,t)}catch(n){return console.log({e:n}),null}}i(Pe,"getRelatedWalletOrNull");var lt=i((e,t,n,r)=>r?.find(o=>o.blockchain===e&&o.symbol?.toUpperCase()===t?.toUpperCase()&&o.address===n)?.usdPrice||null,"getUsdPrice");function Yt(e,t){let n=new ot(0);for(let r=0;r<e.fee.length;r++){let a=e.fee[r];if(a.expenseType==="DECREASE_FROM_OUTPUT")continue;let o=lt(a.asset.blockchain,a.asset.symbol,a.asset.address,t);n=n.plus(new ot(a.amount).multipliedBy(o||0))}return n}i(Yt,"getUsdFeeOfStep");function st(e,t){return{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,fromUsdPrice:e.from.usdPrice,toBlockchain:e.to.blockchain,toBlockchainLogo:e.to.blockchainLogo,toSymbol:e.to.symbol,toSymbolAddress:e.to.address,toDecimals:e.to.decimals,toLogo:e.to.logo,toUsdPrice:e.to.usdPrice,swapperId:e.swapperId,swapperLogo:e.swapperLogo,swapperType:e.swapperType,expectedOutputAmountHumanReadable:e.toAmount,feeInUsd:t?nt(Yt(e,t?.tokens),null,8):null,estimatedTimeInSeconds:e.estimatedTimeInSeconds||null,internalSteps:null}}i(st,"mapSwapStepToPendingSwapStep");function jt(e){let{inputAmount:t,bestRoute:n,wallets:r,settings:a,validateBalanceOrFee:o,meta:l,swapMode:s="swap"}=e,u=n.result;if(!u)throw Error("Simulation result should not be null");return{creationTime:new Date().getTime().toString(),finishTime:null,requestId:n.requestId||"",inputAmount:t,wallets:r,status:"running",mode:s,isPaused:!1,extraMessage:null,extraMessageSeverity:null,extraMessageDetail:null,extraMessageErrorCode:null,networkStatusExtraMessage:null,networkStatusExtraMessageDetail:null,lastNotificationTime:null,settings:a,simulationResult:u,validateBalanceOrFee:o,steps:n.result?.swaps?.map((p,c)=>{let S=st(p,l);return{id:c+1,...S,internalSwaps:p?.internalSwaps?.map(d=>st(d,l))||null,outputAmount:"",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,tonTransaction:null,suiTransaction:null,xrplTransaction:null,stellarTransaction:null,hyperliquidTransaction:null,hasAlreadyProceededToSign:!1}})||[]}}i(jt,"calculatePendingSwap");var Oe=(n=>(n.RouteEvent="routeEvent",n.StepEvent="stepEvent",n))(Oe||{}),De=(r=>(r.STARTED="started",r.FAILED="failed",r.SUCCEEDED="succeeded",r))(De||{}),z=(r=>(r.CREATE_TX="create_tx",r.SEND_TX="send_tx",r.TX_SENT="tx_sent",r))(z||{}),fe=(a=>(a.WAITING_FOR_QUEUE="waiting_for_queue",a.WAITING_FOR_WALLET_CONNECT="waiting_for_wallet_connect",a.WAITING_FOR_NETWORK_CHANGE="waiting_for_network_change",a.WAITING_FOR_CHANGE_WALLET_ACCOUNT="waiting_for_change_wallet_account",a))(fe||{}),B=(u=>(u.STARTED="started",u.FAILED="failed",u.SUCCEEDED="succeeded",u.TX_EXECUTION="tx_execution",u.TX_EXECUTION_BLOCKED="tx_execution_blocked",u.APPROVAL_TX_SUCCEEDED="approval_tx_succeeded",u.CHECK_STATUS="check_status",u.OUTPUT_REVEALED="output_revealed",u))(B||{}),Ue=(a=>(a.ERROR="error",a.SUCCESS="success",a.WARNING="warning",a.INFO="info",a))(Ue||{});function ut(e){return e.map(t=>{let{diagnosisUrl:n,estimatedTimeInSeconds:r,explorerUrl:a,feeInUsd:o,executedTransactionId:l,executedTransactionTime:s,expectedOutputAmountHumanReadable:u,fromBlockchain:p,toBlockchain:c,fromSymbol:S,toSymbol:d,fromSymbolAddress:g,toSymbolAddress:m,swapperType:E,swapperId:C,outputAmount:_,fromAmountMaxValue:T,fromAmountMinValue:A,fromAmountPrecision:y,fromAmountRestrictionType:v,fromDecimals:x,status:k}=t;return{diagnosisUrl:n,estimatedTimeInSeconds:r,explorerUrl:a,feeInUsd:o,executedTransactionId:l,executedTransactionTime:s,expectedOutputAmountHumanReadable:u,fromBlockchain:p,toBlockchain:c,fromSymbol:S,toSymbol:d,fromSymbolAddress:g,toSymbolAddress:m,swapperName:C,swapperType:E,outputAmount:_,fromAmountMaxValue:T,fromAmountMinValue:A,fromAmountPrecision:y,fromAmountRestrictionType:v,fromDecimals:x,status:k,transaction:h(t)}})}i(ut,"createSteps");function Jt(e,t,n){let{creationTime:r,finishTime:a,requestId:o,inputAmount:l,status:s,wallets:u,steps:p,settings:c}=e,S=ut(p),g={route:{creationTime:r,finishTime:a,requestId:o,inputAmount:l,status:s,wallets:u,steps:S,slippage:c.slippage,infiniteApproval:c.infiniteApprove},step:S[S.length-1]};if(n)g.step=ut([n])[0];else if(t==="failed"){let m=pt(S);m&&(g.step=m)}else{let m=Z(S);m&&(g.step=m)}return g}i(Jt,"getEventPayload");function zt(e,t,n){let r,{type:a}=e;switch(a){case"started":r={...e,type:"started"};break;case"failed":r={...e,type:"failed",inputAmount:n.inputAmount,inputAmountUsd:be(n),swapMode:n.mode||"swap"};break;case"succeeded":{r={...e,type:"succeeded",inputAmount:n.inputAmount,inputAmountUsd:be(n),outputAmount:n.steps[n.steps.length-1].outputAmount??"",outputAmountUsd:dt(n),swapMode:n.mode||"swap"};break}default:break}r&&j("emitter")?.emit("routeEvent",{event:r,route:t})}i(zt,"emitRouteEvent");function Zt(e,t,n){j("emitter")?.emit("stepEvent",{event:e,route:t,step:n})}i(Zt,"emitStepEvent");function w(e){let{event:t}=e,{type:n}=t,{route:r,step:a}=Jt(e.swap,n,e.step??void 0),o=`${a.fromBlockchain}.${a.fromSymbol}`,l=`${a.toBlockchain}.${a.toSymbol}`,s=a.outputAmount??"",u=e.step?W(e.swap,e.step):null,p="",c="info";switch(n){case"started":p="Swap process started",c="success";break;case"succeeded":p=`You received ${s} ${l}, hooray!`,c="success";break;case"failed":p=`Swap failed: ${e.swap?.extraMessage??"Reason is unknown"}`,c="error";break;case"tx_execution":t.status==="create_tx"?(p="Please wait while the transaction is created ...",c="info"):t.status==="send_tx"?(e.step&&L(e.step)?p=`Please confirm '${a.swapperName}' smart contract access to ${o}`:p="Please confirm transaction request in your wallet",c="warning"):t.status==="tx_sent"&&(p="Transaction sent successfully",c="info");break;case"check_status":e.step&&L(e.step)?p="Checking approve transaction status ...":p="Checking transaction status ...",c="info";break;case"approval_tx_succeeded":p="Smart contract called successfully",c="success";break;case"output_revealed":p="Transaction output amount revealed",c="success";break;case"tx_execution_blocked":t.status==="waiting_for_wallet_connect"?(p="Please connect your wallet.",c="warning"):t.status==="waiting_for_queue"?(p="Waiting for other swaps to complete",c="warning"):t.status==="waiting_for_change_wallet_account"?(p="Please change your wallet account.",c="warning"):t.status==="waiting_for_network_change"&&(p=`Please change your wallet network to ${u?.network}.`,c="warning");break;default:break}e.step&&Zt({...t,message:p,messageSeverity:c},r,a),(e.event.type==="failed"||!e.step)&&zt({...t,message:p,messageSeverity:c},r,e.swap)}i(w,"notifier");var We=null;function Ee(){return{claimedBy:()=>We?.id,setClaimer:e=>{We={id:e}},reset:()=>{We=null}}}i(Ee,"claimQueue");var K={};function we(){return{getTransactionDataByHash:e=>K[e]||{},setTransactionDataByHash:(e,t)=>{K[e]||(K[e]={}),K[e].response=t.response||K[e].response,K[e].receiptReceived=t.receiptReceived||K[e].receiptReceived||!1}}}i(we,"inMemoryTransactionsData");var f=i(e=>e.steps.find(t=>t.status!=="failed"&&t.status!=="success")||null,"getCurrentStep"),h=i(e=>{let{evmTransaction:t,evmApprovalTransaction:n,cosmosTransaction:r,solanaTransaction:a,transferTransaction:o,starknetApprovalTransaction:l,starknetTransaction:s,tronApprovalTransaction:u,tronTransaction:p,tonTransaction:c,suiTransaction:S,xrplTransaction:d}=e;return t||n||r||a||o||l||s||u||p||c||S||d},"getCurrentStepTx"),ye=i((e,t)=>{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,e.tonTransaction=null,e.suiTransaction=null,e.xrplTransaction=null,e.stellarTransaction=null;let n=t.type;switch(n){case I.EVM:t.isApprovalTx?e.evmApprovalTransaction=t:e.evmTransaction=t;break;case I.TRON:t.isApprovalTx?e.tronApprovalTransaction=t:e.tronTransaction=t;break;case I.STARKNET:t.isApprovalTx?e.starknetApprovalTransaction=t:e.starknetTransaction=t;break;case I.COSMOS:e.cosmosTransaction=t;break;case I.SOLANA:e.solanaTransaction=t;break;case I.TRANSFER:e.transferTransaction=t;break;case I.TON:e.tonTransaction=t;break;case I.SUI:e.suiTransaction=t;break;case I.XRPL:e.xrplTransaction=t;break;case I.STELLAR:e.stellarTransaction=t;break;case I.HYPERLIQUID:e.hyperliquidTransaction=t;break;default:(r=>{throw new Error(`${r} was unhandled!`)})(n)}return e},"setCurrentStepTx"),Me=i(e=>h(e)?.type,"getCurrentStepTxType"),L=i(e=>{let{evmApprovalTransaction:t,starknetApprovalTransaction:n,tronApprovalTransaction:r}=e;return!!(t||n||r)},"isApprovalCurrentStepTx");function O({getStorage:e,setStorage:t,nextStatus:n,nextStepStatus:r,message:a,details:o,errorCode:l=null,hasAlreadyProceededToSign:s,trace:u=null}){let p=e().swapDetails,c=f(p),S={swap:p,step:c};if(r&&c&&(c.status=r),n&&(p.status=n),p.hasAlreadyProceededToSign=s,n&&["failed","success"].includes(n)&&(p.finishTime=new Date().getTime().toString()),(a||o)&&(p.extraMessage=a||"",p.extraMessageDetail=o||""),r&&["failed"].includes(r)){let d=o&&o.includes("Warning")?"Swap canceled by user.":o,g=Pe(p,c)?.walletType;p.extraMessageSeverity="error";let m=at(l);S.failureType=m;let E=l!=="REJECTED_BY_USER"&&u?.message&&typeof u.message=="string"?u.message:d||"";q().reportFailure({requestId:p.requestId,step:c?.id||1,eventType:m,reason:E,tags:g?{wallet:g}:void 0}).then().catch()}else r&&["running"].includes(r)?p.extraMessageSeverity="info":r&&["success","approved"].includes(r)?p.extraMessageSeverity="success":r&&["waitingForApproval"].includes(r)&&(p.extraMessageSeverity="warning");return r==="running"&&c&&(c.startTransactionTime=new Date().getTime()),t({...e(),swapDetails:p}),S}i(O,"updateSwapStatus");function sn({getStorage:e,setStorage:t},n,r){let a=e().swapDetails;a.hasAlreadyProceededToSign=null;let o=f(a);o.executedTransactionId=n,o.executedTransactionTime=new Date().getTime().toString(),r?.url&&(o.explorerUrl=[...o.explorerUrl||[],{url:r.url,description:r.description||null}]),L(o)?a.extraMessage="Checking approve transaction status ...":a.extraMessage="Checking transaction status ...",a.extraMessageDetail="",a.extraMessageSeverity="info",t({...e(),swapDetails:a}),w({event:{type:"tx_execution",status:"tx_sent"},swap:a,step:o}),w({event:{type:"check_status"},swap:a,step:o})}i(sn,"setStepTransactionIds");function cn({getStorage:e,setStorage:t},n,r){let a=e().swapDetails,o=f(a);if(!o)return;let l=new Date;a.lastNotificationTime=l.getTime().toString(),!(o.networkStatus===ee.WaitingForConnectingWallet&&a.networkStatusExtraMessage===n&&a.networkStatusExtraMessageDetail===r)&&(o.networkStatus=ee.WaitingForConnectingWallet,a.networkStatusExtraMessage=n,a.networkStatusExtraMessageDetail=r,t({...e(),swapDetails:a}))}i(cn,"markRunningSwapAsWaitingForConnectingWallet");function gt({getStorage:e,setStorage:t}){let n=e().swapDetails,r=f(n);if(!r)return;let{type:a}=U(n),o=F(n,r),l=`Change ${a} wallet network to ${o.network}`,s=`We\u2019re switching the connected network to ${o.network}. Please check your wallet.`,u=new Date;return n.lastNotificationTime=u.getTime().toString(),r.networkStatus=ee.WaitingForNetworkChange,n.networkStatusExtraMessage=l,n.networkStatusExtraMessageDetail=s,t({...e(),swapDetails:n}),{swap:n,step:r}}i(gt,"markRunningSwapAsSwitchingNetwork");function mt({getStorage:e,setStorage:t}){let n=e().swapDetails,r=f(n);if(r)return n.networkStatusExtraMessage="",n.networkStatusExtraMessageDetail="",r.networkStatus=ee.WaitingForQueue,w({event:{type:"tx_execution_blocked",status:"waiting_for_queue"},swap:n,step:r}),t({...e(),swapDetails:n}),{swap:n,step:r}}i(mt,"markRunningSwapAsDependsOnOtherQueues");async function xe(e){return new Promise(t=>setTimeout(t,e))}i(xe,"delay");var ln=i((e,t)=>e.wallets[t]?.walletType,"getSwapWalletType");function Fe(e){return e===null||e?.blockchains===null||e?.blockchains.length===0}i(Fe,"isWalletNull");function U(e){let t=f(e),n=W(e,t);if(!n)return{type:null,namespace:null,address:null};let r=ln(e,n.network),a=e.wallets[n.network];return{type:r||null,namespace:n,address:a?a.address:null}}i(U,"getRequiredWallet");async function un(e){try{return await e.request({method:"eth_chainId"})||e?.chainId}catch{return e?.chainId}}i(un,"getChainId");async function pn(e,t,n){let r=rn(e,n);if(r)return await un(r);let o=t(n).get("evm");if(!o)throw new Error("EVM namespace not found for wallet type: "+n);return o.getChainId()}i(pn,"getProviderChainId");async function Tt(e,t,n,r,a,o){if(Fe(n))return!1;let l=W(e,t);if(!l)return!1;if(r.evmBasedChains.find(s=>s.name===l.network)){try{let s=e.wallets[l.network];if(s){let u=await pn(a,o,s.walletType);if(u){let p=nn(u,Object.entries(r.blockchains).map(([,c])=>c));if(p&&p.toLowerCase()===l.network.toLowerCase())return!0;if(p&&p.toLowerCase()!==l.network.toLowerCase())return!1}}}catch(s){console.log(s)}return!1}return!0}i(Tt,"isNetworkMatchedForTransaction");var ft=i((e,t)=>(e.wallets[t.evmTransaction?.blockChain||""]||e.wallets[t.evmApprovalTransaction?.blockChain||""]||e.wallets[t.tronTransaction?.blockChain||""]||e.wallets[t.tronApprovalTransaction?.blockChain||""]||e.wallets[t.starknetTransaction?.blockChain||""]||e.wallets[t.starknetApprovalTransaction?.blockChain||""]||e.wallets[t.cosmosTransaction?.blockChain||""]||e.wallets[t.solanaTransaction?.blockChain||""]||e.wallets[t.tonTransaction?.blockChain||""]||e.wallets[t.suiTransaction?.blockChain||""]||e.wallets[t.xrplTransaction?.blockChain||""]||t.transferTransaction?.fromWalletAddress||null)!==null,"isTxAlreadyCreated");function Ae(e){let{getStorage:t,setStorage:n}=e,r=t().swapDetails,a=f(r);a?.networkStatus&&(a.networkStatus=null,n({...t(),swapDetails:r}))}i(Ae,"resetNetworkStatus");function Be(e,t={message:"",details:"",status:null}){let{message:n,details:r,status:a}=t,{getStorage:o,setStorage:l}=e,s=o().swapDetails,u=f(s);u?.networkStatus&&(s.networkStatusExtraMessage=n,s.networkStatusExtraMessageDetail=r,u.networkStatus=a,l({...o(),swapDetails:s}))}i(Be,"updateNetworkStatus");function Et(e,t){let{context:n,queue:r}=t,a=r.getStorage().swapDetails,{ok:o,reason:l}=Xe(a,n.state);if(!o){let s=f(a),{type:u,address:p}=U(a);w({event:{type:"tx_execution_blocked",...l==="account_miss_match"?{status:"waiting_for_change_wallet_account",requiredAccount:p??void 0}:{status:"waiting_for_wallet_connect",requiredWallet:u??void 0,requiredAccount:p??void 0}},swap:a,step:s}),cn({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)},Ze,e.reason.description);return}r.unblock()}i(Et,"onBlockForConnectWallet");function wt(e,t){let{context:n,queue:r}=t,a=r.getStorage().swapDetails,o=f(a);if(!o||a.status!=="running")return;let l=gt({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)}),s=W(a,o)?.network,u=U(a).type,p=u?n.state(u).network:void 0;l&&w({event:{type:"tx_execution_blocked",status:"waiting_for_network_change",requiredNetwork:s??void 0,currentNetwork:p??void 0},swap:l.swap,step:l.step});let{type:c,namespace:S}=U(a);if(c&&S?.network&&n.canSwitchNetworkTo(c,S.network,S)){let d=n.switchNetwork(c,S);d&&d.then(()=>{r.unblock()}).catch(g=>{Be({getStorage:r.getStorage.bind(r),setStorage:r.setStorage.bind(r)},{message:g.message,details:g.message,status:ee.NetworkChangeFailed})})}}i(wt,"onBlockForChangeNetwork");function yt(e,t){let{getBlockedTasks:n,forceExecute:r,queue:a,manager:o,context:l}=t,{setClaimer:s,claimedBy:u,reset:p}=Ee(),c=n().filter(T=>T.reason.reason==="depends_on_other_queues");if(c.length===0)return;let S=u(),d=!!S;if(S===a.id)return;if(d){mt({getStorage:a.getStorage.bind(a),setStorage:a.setStorage.bind(a)});return}let g=c.find(T=>T.queue_id===t.queue_id);g||(g=c[0]),s(g.queue_id);let m=g.storage.get(),{type:E,namespace:C,address:_}=U(m.swapDetails);r(g.queue_id,{claimedBy:u(),resetClaimedBy:()=>{p(),E&&He({walletType:E,network:C?.network,accounts:_?[_]:[]},o,l.canSwitchNetworkTo)}})}i(yt,"onDependsOnOtherQueues");function Xe(e,t){let{type:n,address:r}=U(e);if(!n||!r)return{ok:!1,reason:"not_connected"};let a=t(n),{accounts:o,connected:l}=a,s=o||[];return l?{ok:s.some(p=>{let{address:c}=tn(p);return r.toLocaleLowerCase()===c.toLocaleLowerCase()}),reason:"account_miss_match"}:{ok:!1,reason:"not_connected"}}i(Xe,"isRequiredWalletConnected");function Qe(e,t,n){let{setTransactionDataByHash:r}=we(),{getStorage:a,context:o}=e,{meta:l}=o,s=a().swapDetails,u=f(s),p=F(s,u),c=le(t.hash,p.network,l.blockchains);sn(e,t.hash,c&&(!t.response||t.response&&!t.response.hashRequiringUpdate)?{url:c,description:n.isApproval?"Approve":"Swap"}:void 0),t.response&&r(t.hash,{response:t.response})}i(Qe,"updateStorageOnSuccessfulSign");function Ce(e,t){return({hash:n,response:r})=>{let{schedule:a,next:o}=e;Qe(e,{hash:n,response:r},t),a("CHECK_TRANSACTION_STATUS"),o()}}i(Ce,"handleSuccessfulSign");function $(e){return t=>{let{getStorage:n,setStorage:r,failed:a}=e,o=n().swapDetails,l=f(o);if(o.status==="failed")return;let s=R(o,l),{extraMessage:u,extraMessageDetail:p,extraMessageErrorCode:c}=H(t);en(t,{tags:{requestId:o.requestId,rpc:!0,swapper:l?.swapperId||"",walletType:s?.walletType||""},context:on.isSignerError(t)?t.getErrorContext():{}});let S=O({getStorage:n,setStorage:r,nextStatus:"failed",nextStepStatus:"failed",message:u,details:p,errorCode:c,trace:t?.cause});w({event:{type:"failed",reason:u,reasonCode:S.failureType??P,inputAmount:M(o),inputAmountUsd:X(o)},...S}),a()}}i($,"handleRejectedSign");function xt(e){let{lastConnectedWallet:t,evmChains:n,manager:r}=e,{walletType:a,network:o}=t;n.some(l=>l.name==o)&&r?.getAll().forEach(l=>{let s=l.list.getStorage(),u=s?.swapDetails;if(u&&u.status==="running"){let p=f(u);if(p){let c=s?.swapDetails.wallets[p.fromBlockchain]?.walletType,S=Object.keys(l.list.state.tasks).some(g=>{let m=l.list.state.tasks[g];return m.status===Le.BLOCKED&&["waiting_for_connecting_wallet"].includes(m.blockedFor?.reason)}),d=W(u,p)?.network;if(!n.some(g=>g.name==d))return;if(c===a&&S&&d!=o){let g=l.list,{type:m}=U(u),E=ge(m);l.list.block({reason:{reason:"waiting_for_network_change",description:E},silent:!0});let C=gt({getStorage:g.getStorage.bind(g),setStorage:g.setStorage.bind(g)});C&&w({event:{type:"tx_execution_blocked",status:"waiting_for_network_change",currentNetwork:o,requiredNetwork:d??void 0},swap:C.swap,step:C.step})}}}})}i(xt,"checkWaitingForConnectWalletChange");function qe(e){e?.getAll().forEach(t=>{if(Object.keys(t.list.state.tasks).some(r=>{let a=t.list.state.tasks[r];return a.status===Le.BLOCKED&&["waiting_for_network_change","depends_on_other_queues"].includes(a.blockedFor?.reason)})){let r=t.list.getStorage()?.swapDetails;if(r.status==="running"){let{type:a}=U(r),o=Se(a);t.list.block({reason:{reason:"waiting_for_connecting_wallet",description:o}})}}})}i(qe,"checkWaitingForNetworkChange");function dn(e){let t=e?.getAll()||new Map,n=[];return t.forEach(r=>{let o=r.list.getStorage()?.swapDetails;!o||o.status!=="running"||n.push(o)}),n}i(dn,"getRunningSwaps");function Sn(e){e.forEach(t=>{let n=f(t),r="tx_execution_blocked",a;n?.networkStatus===ee.WaitingForQueue?a="waiting_for_queue":t?.status==="running"&&(a="waiting_for_wallet_connect"),r&&w&&w({event:{type:r,status:a??"waiting_for_queue"},swap:t,step:n})})}i(Sn,"resetRunningSwapNotifsOnPageLoad");function He(e,t,n,r={fallbackToOnlyWallet:!0}){let{walletType:a,network:o}=e;if(!a)return;let l=[],s=[];t?.getAll().forEach(p=>{if(p.status===Le.BLOCKED){let c=p.list.getStorage(),S=c?.swapDetails;if(S&&S.status==="running"){let d=f(S);d&&(o&&W(S,d)?.network==o&&c?.swapDetails.wallets[o]?.walletType===a?l.push(p.list):c?.swapDetails.wallets[d.fromBlockchain]?.walletType===a&&s.push(p.list))}}});let u;if(l.length>0){if(u=l[0],l.length>1)for(let p=1;p<l.length;p++){let c=l[p];mt({getStorage:c.getStorage.bind(c),setStorage:c.setStorage.bind(c)})}}else s.length>0&&r.fallbackToOnlyWallet&&(u=s[0]);if(u){let p=u.getStorage(),c=f(p?.swapDetails),S=c?W(p.swapDetails,c):null;!o||!S||!n?.(a,o,S)?u.unblock():u.checkBlock()}}i(He,"retryOn");function At(e){return!!e.evmTransaction||!!e.evmApprovalTransaction}i(At,"isNeedBlockQueueForParallel");async function Ct(e){let t=await e;if(!t.ok||!t.transaction)throw D.CreateTransaction(t.error||"bad response from create tx endpoint");return t}i(Ct,"throwOnOK");function gn(e,t){let{reset:n}=Ee();e.actions.cancel();let r=O({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 w({event:{type:"failed",reasonCode:"USER_CANCEL",reason:r.swap.extraMessage??void 0,inputAmount:M(r.swap),inputAmountUsd:X(r.swap)},swap:r.swap,step:r.step}),n(),t&&t?.retry(),r}i(gn,"cancelSwap");function Z(e){return e.slice().reverse().find(t=>t.status==="success")}i(Z,"getLastSuccessfulStep");function pt(e){return e.slice().reverse().find(t=>t.status==="failed")}i(pt,"getFailedStep");function mn(e){let{transaction:t}=e;return t?.type===I.EVM&&t.isApprovalTx||t?.type===I.STARKNET&&t.isApprovalTx||t?.type===I.TRON&&t.isApprovalTx}i(mn,"isApprovalTX");function ke(e,t){let n=new an(e).multipliedBy(t);return isNaN(n.toNumber())?"":n.toString()}i(ke,"getTokenAmountInUsd");function be(e){return ke(e.inputAmount,e.steps[0].fromUsdPrice??"")}i(be,"getSwapInputUsd");function dt(e){let t=e.steps[e.steps.length-1];return ke(t.outputAmount??"",t.toUsdPrice??"")}i(dt,"getSwapOutputUsd");function kt(e){let t=["success","failed"],n=e.steps.findLastIndex(r=>t.includes(r.status));return n<0?void 0:{step:e.steps[n],index:n}}i(kt,"getLastFinishedStep");function M(e){let t=kt(e);return t?t.index===0?e.inputAmount:e.steps[t.index-1].outputAmount??"":""}i(M,"getLastFinishedStepInput");function X(e){let t=kt(e);return ke(M(e),t?.step?.fromUsdPrice??"")}i(X,"getLastFinishedStepInputUsd");function _e(e){let t=Z(e.steps);return ke(t?.outputAmount??"",t?.toUsdPrice??"")}i(_e,"getLastSuccessfulStepOutputUsd");function te(e,t,n){return{type:"failed",reason:t,reasonCode:n??P,inputAmount:M(e),inputAmountUsd:X(e)}}i(te,"createStepFailedEvent");var _t=5e3,Tn=5e3;async function fn({getStorage:e,setStorage:t,next:n,schedule:r,retry:a,failed:o,context:l}){let s=e().swapDetails,{meta:u}=l,p=new Error("check status Error"),c=f(s);if(!c?.executedTransactionId)return;let S=h(c),d=c.executedTransactionId,g=!1,m=null,E=null,{getTransactionDataByHash:C,setTransactionDataByHash:_}=we();try{let x=Me(c),k=R(s,c);x&&k&&(E=(await l.getSigners(k.walletType)).getSigner(x))}catch{}try{let{response:x,receiptReceived:k}=C(d);if(E?.wait&&!k){let b=S?.blockChain&&u.blockchains?.[S?.blockChain]?.chainId||void 0,{hash:N,response:Y}=await E.wait(d,b,x);if(N!==d){c.executedTransactionId=N||c.executedTransactionId;let Q=F(s,c),ce;!!Object.keys(u.blockchains).length&&(ce=le(c.executedTransactionId,Q.network,u.blockchains)),ce&&c.explorerUrl&&c.explorerUrl?.length>=1&&(c.explorerUrl[c.explorerUrl.length-1]={url:ce,description:"Replaced Swap"}),d=c.executedTransactionId,N&&Y&&_(N,{response:Y})}else _(N,{receiptReceived:!0})}}catch(x){let{extraMessage:k,extraMessageDetail:b,extraMessageErrorCode:N}=H(x),Y=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:k,details:b,errorCode:N}),Q=te(s,k,Y.failureType);ne(p,{tags:{type:"singer-error",reason:Q.reason,reasonCode:Q.reasonCode,message:k,messageDetail:b,pendingSwap:s},context:vt.isSignerError(x)?x.getErrorContext():{}}),g=!0}let T={requestId:s.requestId,txId:d,step:c.id};try{m=await q().checkStatus(T)}catch{await xe(_t),a(),ne(p,{tags:{type:"request-error",requestBody:T,pendingSwap:s}});return}if(g)return o();if(c?.status==="failed")return;let A=m?.outputAmount||(c.outputAmount?c.outputAmount:null),y=c.outputAmount||null;s.extraMessage=m?.extraMessage||s.extraMessage,s.extraMessageSeverity="info",s.extraMessageDetail="",c.status=m?.status||c.status,c.diagnosisUrl=m?.diagnosisUrl||c.diagnosisUrl||null,c.outputAmount=A||c.outputAmount,c.explorerUrl=m?.explorerUrl||c.explorerUrl,c.internalSteps=m?.steps||null;let v=m?.newTx;if(v&&(c.status="created",c.executedTransactionId=null,c.executedTransactionTime=null,ye(c,v)),y===null&&A!==null?w({event:{type:"output_revealed",outputAmount:A},swap:s,step:c}):y===null&&A===null&&w({event:{type:"check_status"},swap:s,step:c}),c.status==="success"){let x=it(s,c);s.extraMessageDetail="",s.extraMessage=x?`starting next step: ${x.swapperId}: ${x.fromBlockchain} -> ${x.toBlockchain}`:"",w({event:{type:"succeeded",inputAmount:M(s),inputAmountUsd:X(s),outputAmount:c.outputAmount??"",outputAmountUsd:_e(s)},swap:s,step:c})}else c.status==="failed"&&(s.extraMessage="Transaction failed in blockchain",s.extraMessageSeverity="error",s.extraMessageDetail=m?.extraMessage||"",s.status="failed",s.finishTime=new Date().getTime().toString(),ne(p,{tags:{type:"transaction-failed",message:s.extraMessage,messageDetails:s.extraMessageDetail,pendingSwap:s}}));t({...e(),swapDetails:s}),m?.status==="failed"?o():m?.status==="success"||m?.status==="running"&&m.newTx?(r("SCHEDULE_NEXT_STEP"),n()):(await xe(_t),a())}i(fn,"checkTransactionStatus");async function En({getStorage:e,setStorage:t,next:n,schedule:r,retry:a,failed:o,context:l}){let s=e().swapDetails,{meta:u}=l,{getTransactionDataByHash:p,setTransactionDataByHash:c}=we(),S=new Error("check approval status error"),d=f(s);if(!d){console.log("ignore check status, current step is null");return}let g=h(d);if(!d?.executedTransactionId)return;let m=d.executedTransactionId,E=null;try{let T=Me(d),A=R(s,d);T&&A&&(E=(await l.getSigners(A.walletType)).getSigner(T))}catch{}try{let{response:T,receiptReceived:A}=p(m);if(E?.wait&&!A){let y=g?.blockChain&&u.blockchains?.[g?.blockChain]?.chainId||void 0,{hash:v,response:x}=await E.wait(m,y,T);if(v!==m){d.executedTransactionId=v||d.executedTransactionId;let k=F(s,d),b;!!Object.keys(u.blockchains).length&&(b=le(d.executedTransactionId,k.network,u.blockchains)),b&&d.explorerUrl&&d.explorerUrl?.length>=1&&(d.explorerUrl[d.explorerUrl.length-1]={url:b,description:"Replaced Approve"}),m=d.executedTransactionId,v&&x&&c(v,{response:x})}else c(v,{receiptReceived:!0})}}catch(T){let{extraMessage:A,extraMessageDetail:y,extraMessageErrorCode:v}=H(T),x=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:A,details:y,errorCode:v}),k=te(s,A,x.failureType);return w({event:k,...x}),ne(S,{tags:{type:"singer-error",reason:k.reason,reasonCode:k.reasonCode,message:A,messageDetail:y,pendingSwap:s},context:vt.isSignerError(T)?T.getErrorContext():{}}),o()}let C=!1,_={requestId:s.requestId,txId:d.executedTransactionId};try{let T=await q().checkApproval(_.requestId,_.txId);if(d?.status==="failed")return;if(C=T.isApproved,!C&&(T.txStatus==="failed"||T.txStatus==="success")){let A,y;T.txStatus==="failed"?(A="Approve transaction failed",y="Smart contract approval tx failed in blockchain."):(A="Not enough approval",T.requiredApprovedAmount&&T.currentApprovedAmount?y=`Required approval: ${T.requiredApprovedAmount}, current approval: ${T.currentApprovedAmount}`:y="You still don't have enough approval for this swap.");let v=O({getStorage:e,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",errorCode:"INSUFFICIENT_APPROVE",message:A,details:y}),x=te(s,A,v.failureType);w({event:x,...v}),ne(S,{tags:{type:"approval-failed",message:s.extraMessage,messageDetails:s.extraMessageDetail,pendingSwap:s}}),o()}else C||w({event:{type:"check_status"},swap:s,step:d})}catch{C=!1,ne(S,{tags:{type:"request-error",requestBody:_,pendingSwap:s}})}C?(d.status="approved",s.extraMessage=`Spending ${d.fromSymbol} approved successfully.`,s.extraMessageDetail=null,s.extraMessageSeverity="success",d.evmApprovalTransaction=null,d.executedTransactionId=null,d.executedTransactionTime=null,d.starknetApprovalTransaction=null,d.tronApprovalTransaction=null,t({...e(),swapDetails:s}),w({event:{type:"approval_tx_succeeded"},swap:s,step:d}),r("SCHEDULE_NEXT_STEP"),n()):(await xe(Tn),a())}i(En,"checkApprovalStatus");async function ht(e){let t=e.getStorage().swapDetails,n=f(t);if(!n){console.log("ignore check status, current step is null",t.requestId);return}Ae(e),n.status==="running"?await fn(e):n.status==="waitingForApproval"&&await En(e)}i(ht,"checkStatus");import{PendingSwapNetworkStatus as Rt}from"rango-types";import{Err as he,Ok as Ge}from"ts-results";function ve(e){return e.claimedBy===e._queue?.id}i(ve,"isClaimedByCurrentQueue");function re(e,t){e.block(t),ve(e.context)&&e.context.resetClaimedBy&&e.context.resetClaimedBy()}i(re,"requestBlockQueue");async function ae(e){let{getStorage:t,context:n}=e,r=t().swapDetails,a=f(r),o=wn(e);if(o.err)return o;let l=await yn(e);if(l.err)return l;a.networkStatus===Rt.NetworkChanged&&Be(e,{message:"",details:"The network has been successfully changed.",status:Rt.NetworkChanged});let s=At(a),u=ve(n);if(s&&!u){let p={reason:"depends_on_other_queues",description:Ie,details:{}};return new he(p)}return new Ge(!0)}i(ae,"checkEnvironmentBeforeExecuteTransaction");function wn(e){let{getStorage:t,context:n}=e,{wallets:r}=n,a=t().swapDetails;if(!Xe(a,n.state).ok){let{type:l,address:s}=U(a),u=r?.blockchains?.find(S=>!S.accounts?.find(d=>d.walletType===l)),p=Fe(r)||u?Se(l):et(l,s),c={reason:"waiting_for_connecting_wallet",description:p};return new he(c)}return new Ge(!0)}i(wn,"ensureRequiredWalletIsConnected");async function yn(e){let{getStorage:t,context:n}=e,{meta:r,wallets:a,providers:o,hubProvider:l}=n,s=t().swapDetails,u=f(s),p=await Tt(s,u,a,r,o,l),{claimedBy:c}=Ee();if(!!c()&&!ve(n)&&!p){let g=Ie,m={reason:"depends_on_other_queues",details:g};return new he(m)}else if(!p){let g=F(s,u),m=ge(g.network),E={reason:"waiting_for_network_change",details:m};return new he(E)}return new Ge(!0)}i(yn,"ensureWalletIsOnCorrectNetwork");import{Err as Nt,Ok as It}from"ts-results";function oe(e){let{getStorage:t,context:n}=e,{isMobileWallet:r}=n,a=t().swapDetails,o=f(a),l=R(a,o),s=r(l?.walletType),u=h(o),p=L(o);if(!u||!u.type)return new Nt({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: tx is null!",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"});let c=!!a.hasAlreadyProceededToSign;return p?new It({nextStatus:void 0,nextStepStatus:"waitingForApproval",details:"Waiting for approve transaction to be mined and confirmed successfully",message:`Waiting for approval of ${o?.fromSymbol} coin ${s?"on your mobile phone!":""}`}):c?new Nt({message:"Transaction is expired. Please try again.",nextStepStatus:"failed",nextStatus:"failed",details:"",errorCode:"TX_EXPIRED"}):new It({message:"Executing transaction ...",nextStepStatus:"running",nextStatus:"running",details:`${s?"Check your mobile phone!":""}`})}i(oe,"produceNextStateForTransaction");function se(e,t){let{getStorage:n,setStorage:r}=e,a=n().swapDetails,o=f(a),l=L(o),s=typeof a.hasAlreadyProceededToSign=="boolean",u=O({getStorage:n,setStorage:r,nextStepStatus:t.nextStepStatus,nextStatus:t.nextStatus,message:t.message,details:t.details,errorCode:t.errorCode,hasAlreadyProceededToSign:l?void 0:s});w({event:{type:"failed",reason:t.message,reasonCode:u.failureType??P,inputAmount:M(a),inputAmountUsd:X(a)},...u})}i(se,"onNextStateError");function ie(e,t){let{getStorage:n,setStorage:r}=e,a=n().swapDetails,o=f(a),l=L(o),s=typeof a.hasAlreadyProceededToSign=="boolean",u=O({getStorage:n,setStorage:r,nextStepStatus:t.nextStepStatus,nextStatus:t.nextStatus,message:t.message,details:t.details,hasAlreadyProceededToSign:l?void 0:s});w({event:{type:"tx_execution",status:"send_tx"},...u})}i(ie,"onNextStateOk");import{isXrplTransaction as xn}from"rango-types";import{Err as Re,Ok as Pt}from"ts-results";async function ue(e){return e?xn(e)?e.data.TransactionType!=="Payment"?new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: We only support XRPL transactions with payment type",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"}):Pt(e):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: Expected XRPL transaction but it doesn't match with the structure.",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"}):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"Unexpected Error: tx is null!",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"})}i(ue,"ensureXrplTransactionIsValid");async function pe(e,t){let r=e.hubProvider(t).get("xrpl");return r?Pt(r):new Re({nextStatus:"failed",nextStepStatus:"failed",message:"XRPL is not available on your wallet.",details:void 0,errorCode:"CLIENT_UNEXPECTED_BEHAVIOUR"})}i(pe,"ensureXrplNamespaceExists");async function Ot(e,t,n){return!!(await n.namespace.accountLines(e,{peer:t.account})).some(a=>a.currency===t.currency&&a.account===t.account&&a.limit!=="0")}i(Ot,"checkTruslineAlreadyOpened");function Dt(e,t){return{TransactionType:"TrustSet",Account:e,LimitAmount:{currency:t.currency,issuer:t.account,value:t.amount}}}i(Dt,"createTrustlineTransaction");async function Ke(e){let t=await ae(e);if(t.err){re(e,t.val);return}let{failed:n,context:r,schedule:a,getStorage:o,next:l}=e,{meta:s,getSigners:u}=r,p=o().swapDetails,c=f(p),S=h(c),d=R(p,c),g=J(p,c),m=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),E=i(()=>{a("EXECUTE_XRPL_TRANSACTION"),l(),m()},"onSuccessfulFinish"),C=i(N=>{se(e,N.val),n(),m()},"handleErr"),_=oe(e);if(_.err){C(_);return}ie(e,_.val);let T=await ue(S);if(T.err){C(T);return}let A=await pe(r,d.walletType);if(A.err){C(A);return}let y=T.val.prerequisites.find(N=>N.type==="XRPL_CHANGE_TRUSTLINE");if(!y){E();return}let v=s.blockchains[T.val.blockChain]?.chainId,x=await u(d.walletType),k={currency:y.currency,account:y.issuer,amount:y.value};if(await Ot(y.wallet,k,{namespace:A.val})){E();return}else{let N=Dt(y.wallet,k),Y=x.getSigner(T.val.type);try{let Q={...T.val,data:N},ce=await Y.signAndSendTx(Q,g,v);Qe(e,ce,{isApproval:!0}),E()}catch(Q){$(e)(Q),m()}}}i(Ke,"checkXrplTrustline");import{warn as An}from"@rango-dev/logging-core";async function Ut(e){let{setStorage:t,getStorage:n,next:r,schedule:a}=e,o=n().swapDetails,l=f(o);if(!h(l)){w({event:{type:"tx_execution",status:"create_tx"},swap:o,step:l});let u={requestId:o.requestId,step:l.id,userSettings:{slippage:o.settings.slippage,infiniteApprove:o.settings.infiniteApprove},validations:{balance:o.validateBalanceOrFee,fee:o.validateBalanceOrFee,approve:!0}};try{let{transaction:p}=await Ct(q().createTransaction(u));p&&ye(l,p),t({...n(),swapDetails:o}),a("SCHEDULE_NEXT_STEP"),r()}catch(p){o.status="failed",o.finishTime=new Date().getTime().toString();let{extraMessage:c,extraMessageDetail:S}=H(p),d=O({getStorage:n,setStorage:t,nextStatus:"failed",nextStepStatus:"failed",message:c,details:S,errorCode:"FETCH_TX_FAILED"}),g=te(o,c,d.failureType);w({event:g,...d}),p instanceof Error&&An(new Error("create transaction error"),{tags:{message:p.message,requestBody:u,reason:g.reason,reasonCode:g.reasonCode,pendingSwap:o}}),e.failed()}}}i(Ut,"createTransaction");async function Ve(e){let t=await ae(e);if(t.err){re(e,t.val);return}Ae(e);let{failed:n,getStorage:r,context:a}=e,{meta:o,getSigners:l}=a,s=r().swapDetails,u=f(s),p=L(u),c=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),S=oe(e);if(S.err){se(e,S.val),n(),c();return}ie(e,S.val);let d=h(u),g=R(s,u),m=J(s,u),E=o.blockchains?.[d.blockChain]?.chainId,C;try{C=await l(g.walletType)}catch(T){$(e)(T),c();return}await C.getSigner(d.type).signAndSendTx(d,m,E).then(Ce(e,{isApproval:p}),$(e)).finally(()=>{c()})}i(Ve,"executeTransaction");async function $e(e){let t=await ae(e);if(t.err){re(e,t.val);return}let{failed:n,getStorage:r,context:a}=e,{meta:o,getSigners:l}=a,s=r().swapDetails,u=f(s),p=h(u),c=R(s,u),S=J(s,u),d=i(()=>{e.context.resetClaimedBy&&e.context.resetClaimedBy()},"onFinish"),g=i(y=>{se(e,y.val),n(),d()},"handleErr"),m=oe(e);if(m.err){g(m);return}ie(e,m.val);let E=await ue(p);if(E.err){g(E);return}let C=await pe(a,c.walletType);if(C.err){g(C);return}let _=o.blockchains[E.val.blockChain]?.chainId,A=(await l(c.walletType)).getSigner(E.val.type);try{let y=await A.signAndSendTx(E.val,S,_);Ce(e,{isApproval:E.val.data.TransactionType==="TrustSet"})(y)}catch(y){$(e)(y)}d()}i($e,"executeXrplTransaction");import{TransactionType as Cn}from"rango-types";function bt({schedule:e,next:t,failed:n,setStorage:r,getStorage:a}){let o=a().swapDetails,l=f(o),s=o.steps.find(u=>u.status==="failed");if(l&&!s){if(ft(o,l))return l.fromBlockchain===Cn.XRPL?e("CHECK_XRPL_TRUSTLINE"):e("EXECUTE_TRANSACTION"),t();if(l?.executedTransactionId)return e("CHECK_TRANSACTION_STATUS"),t();o.status="running",r({...a(),swapDetails:o}),w({event:{type:"started"},swap:o,step:l}),e("CREATE_TRANSACTION"),t()}else{o.status=s?"failed":"success",o.finishTime=new Date().getTime().toString(),r({...a(),swapDetails:o});let u=M(o),p=X(o);w({...s?{event:{type:"failed",reason:o.extraMessage??void 0,reasonCode:"CALL_OR_SEND_FAILED",inputAmount:u,inputAmountUsd:p}}:{event:{type:"succeeded",inputAmount:u,inputAmountUsd:p,outputAmount:Z(o.steps)?.outputAmount??"",outputAmountUsd:_e(o)}},swap:o,step:null}),s?n():t()}}i(bt,"scheduleNextStep");function Wt({schedule:e,next:t,getStorage:n}){let r=n().swapDetails;w({event:{type:"started"},swap:r,step:null}),e("SCHEDULE_NEXT_STEP"),t()}i(Wt,"start");var Lt={name:"swap",actions:{START:Wt,SCHEDULE_NEXT_STEP:bt,CREATE_TRANSACTION:Ut,EXECUTE_TRANSACTION:Ve,EXECUTE_XRPL_TRANSACTION:$e,CHECK_XRPL_TRUSTLINE:Ke,CHECK_TRANSACTION_STATUS:ht},run:["START"],whenTaskBlocked:(e,t)=>{e.reason.reason==="waiting_for_connecting_wallet"?Et(e,t):e.reason.reason==="waiting_for_network_change"?wt(e,t):e.reason.reason==="depends_on_other_queues"&&yt(e,t)}};import{useManager as Rn}from"@rango-dev/queue-manager-react";import{useEffect as je,useState as Nn}from"react";import{DB_NAME as kn,Persistor as _n,Status as de}from"@rango-dev/queue-manager-core";import{v4 as vn}from"uuid";var Mt="migratedToQueueManager";function Ye(){return!!window.localStorage.getItem(Mt)}i(Ye,"migrated");async function hn(){try{return(await window.indexedDB.databases()).map(e=>e.name).includes(kn)}catch{return!1}}i(hn,"hasQueueManagerOnIDB");async function Ft(){let e=window.localStorage.getItem("pendingSwaps"),t=await hn();if(!e||Ye()||t)return!0;let n=JSON.parse(e),r=[];n.forEach(l=>{if(l.status==="running"){let s=vn(),u={id:l.requestId,createdAt:Number(l.creationTime),name:"swap",status:de.RUNNING,storage:{swapDetails:l},state:{status:de.RUNNING,activeTaskIndex:0,tasks:{[s]:{blockedFor:null,status:de.RUNNING}}},tasks:[{id:s,action:"SCHEDULE_NEXT_STEP"}]};r.push(u)}else{let s=l.status==="success"?de.SUCCESS:de.FAILED,u={id:l.requestId,createdAt:Number(l.creationTime),name:"swap",status:s,storage:{swapDetails:l},state:{status:s,activeTaskIndex:0,tasks:{}},tasks:[]};r.push(u)}});let a=new _n,o=r.map(async l=>a.insertQueue(l));return await Promise.all(o),window.localStorage.setItem(Mt,"1"),!0}i(Ft,"migration");var Bt=0;function In(e){return`${e?.walletType}-${e?.network}-${e?.accounts?.toString()}`}i(In,"getLastConnectedWalletHash");function Pn(){let e=Ye(),[t,n]=Nn(e);return je(()=>{(async()=>Bt||(Bt=1,Ft().finally(()=>{n(!0)})))()},[]),{status:t}}i(Pn,"useMigration");function On(e){let{manager:t}=Rn(),{lastConnectedWallet:n,disconnectedWallet:r,evmChains:a,canSwitchNetworkTo:o,clearDisconnectedWallet:l}=e;je(()=>{n&&(xt({evmChains:a,lastConnectedWallet:n,manager:t}),He(n,t,o))},[In(n)]),je(()=>{r&&(qe(t),l())},[r])}i(On,"useQueueManager");function vo(e){return ze(e),Lt}i(vo,"makeQueueDefinition");export{Ue as EventSeverity,Te as MessageSeverity,D as PrettyError,De as RouteEventType,B as StepEventType,fe as StepExecutionBlockedEventStatus,z as StepExecutionEventStatus,Oe as WidgetEvents,jt as calculatePendingSwap,gn as cancelSwap,qe as checkWaitingForNetworkChange,W as getCurrentNamespaceOfOrNull,f as getCurrentStep,Z as getLastSuccessfulStep,R as getRelatedWallet,Pe as getRelatedWalletOrNull,U as getRequiredWallet,dn as getRunningSwaps,lt as getUsdPrice,mn as isApprovalTX,vo as makeQueueDefinition,H as prettifyErrorMessage,Sn as resetRunningSwapNotifsOnPageLoad,O as updateSwapStatus,Pn as useMigration,On as useQueueManager};
2
2
  //# sourceMappingURL=index.js.map