UNPKG

@sofaws/dapp-core

Version:

A library to hold the main logic for a dapp on the Elrond Network

3 lines (2 loc) 3.35 kB
import{a as m}from"./chunk-VYLAA4GB.js";import{a as A}from"./chunk-I2W3NKUI.js";import{a as D}from"./chunk-RPFNXGPS.js";import{a as y}from"./chunk-JQPRRRIR.js";import{a as L}from"./chunk-GYPWYUOA.js";import{a as h}from"./chunk-K4IPFVAS.js";import{a as T}from"./chunk-W6LEZGEL.js";import{a as C}from"./chunk-CL3O3GT7.js";import{b as i}from"./chunk-I2NWMXXW.js";import{a as N}from"./chunk-V4XSYEH7.js";import{a as k}from"./chunk-7I7NVYZT.js";import{m as b}from"./chunk-HBP5N4FR.js";b();import t from"react";import{Address as K}from"@elrondnetwork/erdjs/out";import{faExclamationTriangle as O,faTimes as Q}from"@fortawesome/free-solid-svg-icons";import{FontAwesomeIcon as U}from"@fortawesome/react-fontawesome";var ft=({onSignTransaction:B,handleClose:I,onPrev:W,title:x,waitingForDevice:d,currentTransaction:e,error:a,allTransactions:g,isLastTransaction:M,currentStep:u,className:w})=>{let r=C();if(!e)return null;let E=e.transaction.getData().toString(),{network:v}=T(),{tokenId:n,nonce:p,amount:G,type:P,multiTxData:l,receiver:V}=e.transactionTokenInfo,f=Boolean(n&&k({tokenId:n,erdLabel:r})),S=u===0,F=J=>{J.preventDefault(),S?I():W()},$=P&&l&&!E.endsWith(l),s="Sign & Continue";s=d?"Check your Ledger":s,s=M&&!d?"Sign & Submit":s,s=$?"Continue":s;let z=`${n}-${p}`,{tokenDecimals:H,tokenAvatar:Z}=h({tokenId:p&&p.length>0?z:n}),j=N({input:f?G:e.transaction.getValue().toString(),decimals:f?H:Number(v.decimals),digits:Number(v.digits),showLastNonZeroDecimal:!1,addCommas:!0}),c=e.receiverScamInfo,q=g.length>1,o=D(c);return t.createElement(L,{icon:a?Q:null,iconClass:o.icon,iconBgClass:a?i.bgDanger:i.bgWarning,iconSize:"3x",className:w,title:x||"Confirm on Ledger",description:t.createElement(t.Fragment,null,e.transaction&&t.createElement(t.Fragment,null,q&&t.createElement(y,{totalSteps:g.length,currentStep:u+1,className:i.mb4}),t.createElement("div",{className:o.formGroup,"data-testid":"transactionTitle"},t.createElement("div",{className:o.formLabel},"To "),l?new K(V).bech32():e.transaction.getReceiver().toString(),c&&t.createElement("div",{className:o.scamReport},t.createElement("span",null,t.createElement(U,{icon:O,className:o.scamReportIcon}),t.createElement("small",null,c)))),t.createElement("div",{className:o.contentWrapper},t.createElement("div",{className:o.tokenWrapper},t.createElement("div",{className:o.tokenLabel},"Token"),t.createElement("div",{className:o.tokenValue},t.createElement(m.Icon,{tokenAvatar:Z,token:n||r}),t.createElement("div",{className:i.mr1}),t.createElement(m.Label,{token:n||r}))),t.createElement("div",null,t.createElement("div",{className:o.tokenAmountLabel},"Amount"),t.createElement("div",{className:o.tokenAmountValue},t.createElement("div",{className:i.mr1},j),t.createElement(m.Symbol,{token:n||r})))),t.createElement("div",{className:o.dataFormGroup},e.transaction.getData()&&t.createElement(A,{isScCall:!n,data:e.transaction.getData().toString(),highlight:l})),a&&t.createElement("p",{className:o.errorMessage},a))),action:t.createElement("div",{className:o.buttonsWrapper},t.createElement("button",{id:"closeButton","data-testid":"closeButton",onClick:F,className:o.cancelButton},S?"Cancel":"Back"),t.createElement("button",{type:"button",className:o.signButton,id:"signBtn","data-testid":"signBtn",onClick:B,disabled:d},s))})};export{ft as a}; //# sourceMappingURL=chunk-Q6DSKAWZ.js.map