@ledgerhq/coin-aptos
Version:
Ledger Aptos Coin integration
51 lines • 2.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.toTransactionRaw = exports.fromTransactionRaw = exports.formatTransaction = void 0;
const bignumber_js_1 = require("bignumber.js");
const formatters_1 = require("@ledgerhq/coin-framework/formatters");
const serialization_1 = require("@ledgerhq/coin-framework/serialization");
const index_1 = require("@ledgerhq/coin-framework/currencies/index");
const formatTransaction = ({ mode, amount, fees, recipient, useAllAmount }, account) => {
return `
${mode.toUpperCase()} ${useAllAmount
? "MAX"
: amount.isZero()
? ""
: " " + (0, index_1.formatCurrencyUnit)(account.currency.units[0], amount)}
TO ${recipient}
with fees=${fees ? (0, index_1.formatCurrencyUnit)(account.currency.units[0], fees) : "?"}`;
};
exports.formatTransaction = formatTransaction;
const fromTransactionRaw = (t) => {
const common = (0, serialization_1.fromTransactionCommonRaw)(t);
return {
...common,
family: t.family,
mode: t.mode,
options: JSON.parse(t.options),
...(t.fees && { fees: new bignumber_js_1.BigNumber(t.fees) }),
...(t.errors && { errors: JSON.parse(t.errors) }),
};
};
exports.fromTransactionRaw = fromTransactionRaw;
const toTransactionRaw = (t) => {
const common = (0, serialization_1.toTransactionCommonRaw)(t);
return {
...common,
family: t.family,
mode: t.mode,
options: JSON.stringify(t.options),
...(t.fees && { fees: t.fees.toString() }),
...(t.errors && { errors: JSON.stringify(t.errors) }),
};
};
exports.toTransactionRaw = toTransactionRaw;
exports.default = {
formatTransaction: exports.formatTransaction,
fromTransactionRaw: exports.fromTransactionRaw,
toTransactionRaw: exports.toTransactionRaw,
fromTransactionStatusRaw: serialization_1.fromTransactionStatusRawCommon,
toTransactionStatusRaw: serialization_1.toTransactionStatusRawCommon,
formatTransactionStatus: formatters_1.formatTransactionStatus,
};
//# sourceMappingURL=transaction.js.map