UNPKG

@ledgerhq/coin-multiversx

Version:
56 lines 1.96 kB
import { BigNumber } from "bignumber.js"; import { formatTransactionStatus } from "@ledgerhq/coin-framework/formatters"; import { fromTransactionCommonRaw, fromTransactionStatusRawCommon as fromTransactionStatusRaw, toTransactionCommonRaw, toTransactionStatusRawCommon as toTransactionStatusRaw, } from "@ledgerhq/coin-framework/serialization"; import { getAccountCurrency } from "@ledgerhq/coin-framework/account"; import { formatCurrencyUnit } from "@ledgerhq/coin-framework/currencies"; export const formatTransaction = ({ mode, amount, recipient, useAllAmount, subAccountId }, mainAccount) => { const account = (subAccountId && (mainAccount.subAccounts || []).find(a => a.id === subAccountId)) || mainAccount; return ` ${mode.toUpperCase()} ${useAllAmount ? "MAX" : amount.isZero() ? "" : " " + formatCurrencyUnit(getAccountCurrency(account).units[0], amount, { showCode: true, disableRounding: true, })}${recipient ? `\nTO ${recipient}` : ""}`; }; export const fromTransactionRaw = (tr) => { const common = fromTransactionCommonRaw(tr); const tx = { ...common, family: tr.family, mode: tr.mode, fees: tr.fees ? new BigNumber(tr.fees) : null, gasLimit: tr.gasLimit, }; if (tr.data) { tx.data = tr.data; } return tx; }; export const toTransactionRaw = (t) => { const common = toTransactionCommonRaw(t); const tx = { ...common, family: t.family, mode: t.mode, fees: t.fees?.toString() || null, gasLimit: t.gasLimit, }; if (t.data) { tx.data = t.data; } return tx; }; export default { formatTransaction, fromTransactionRaw, toTransactionRaw, fromTransactionStatusRaw, toTransactionStatusRaw, formatTransactionStatus, }; //# sourceMappingURL=transaction.js.map