@sofaws/dapp-core
Version:
A library to hold the main logic for a dapp on the Elrond Network
3 lines (2 loc) • 1.11 kB
JavaScript
import{a as m}from"./chunk-GYB57BD3.js";import{a as d,b as S}from"./chunk-N7MHQ6JT.js";import{a as y}from"./chunk-OI3JNSRI.js";import{m as f}from"./chunk-HBP5N4FR.js";f();y();S();import T from"bignumber.js";function $(s){let o=[],i=0;try{if((s==null?void 0:s.startsWith("MultiESDTNFTTransfer"))&&(s==null?void 0:s.includes("@"))){let[,c,p,...e]=s==null?void 0:s.split("@");if(c){let a=new T(p,16).toNumber(),n=0;for(let r=0;r<a;r++){let t={type:"nftTransaction",data:"",receiver:c};for(let l=0;l<3;l++){switch(l){case 0:t.token=d(e[n]),t.data=e[n];break;case 1:{let u=e[n]&&e[n].length?e[n]:"";u?t.nonce=u:t.type="esdtTransaction",t.data=`${t.data}@${e[n]}`;break}case 2:t.amount=new T(e[n],16).toString(10),t.data=`${t.data}@${e[n]}`;break;default:break}i=n+1,n++}o[r]=t}let g=o.length!==a,h=o.some(r=>m(r.data,"@").length!==2),x=o.some(r=>r.data.startsWith("@"));if(g||h||x)return[];if(e[i]){let r=e[i];for(let t=i+1;t<e.length;t++)r+="@"+e[t];o[a]={type:"scCall",data:r,receiver:c}}}}}catch(c){return console.error("failed parsing tx",c),o}return o}export{$ as a};
//# sourceMappingURL=chunk-LUYY6BUT.js.map