UNPKG

@ledgerhq/coin-stacks

Version:
112 lines 4.24 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.acceptTokenTransfer = exports.acceptTransaction = void 0; const specs_1 = require("@ledgerhq/coin-framework/bot/specs"); const token_1 = require("../bridge/utils/token"); const formatCurrencyUnit_1 = require("@ledgerhq/coin-framework/lib/currencies/formatCurrencyUnit"); const state_1 = require("@ledgerhq/cryptoassets/state"); const invariant_1 = __importDefault(require("invariant")); exports.acceptTransaction = (0, specs_1.deviceActionFlow)({ steps: [ { title: "Please", button: specs_1.SpeculosButton.RIGHT, expectedValue: () => "review", }, { title: "Origin", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ account }) => account.freshAddress, }, { title: "Nonce", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => (transaction.nonce ? transaction.nonce.toFixed() : "0"), }, { title: "Fee (uSTX)", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => (transaction.fee ? transaction.fee.toFixed() : "0"), }, { title: "Amount uSTX", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ status }) => status.amount.toFixed(), }, { title: "To", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => transaction.recipient, }, { title: "Memo", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => transaction.memo || "", }, { title: "APPROVE", button: specs_1.SpeculosButton.BOTH, }, ], }); exports.acceptTokenTransfer = (0, specs_1.deviceActionFlow)({ steps: [ { title: "Please", button: specs_1.SpeculosButton.RIGHT, expectedValue: () => "review", }, { title: "Origin", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ account }) => account.freshAddress, }, { title: "Nonce", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => (transaction.nonce ? transaction.nonce.toFixed() : "0"), }, { title: "Fee (uSTX)", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => (transaction.fee ? transaction.fee.toFixed() : "0"), }, { title: "Amount", button: specs_1.SpeculosButton.RIGHT, expectedValue: async ({ transaction, status, account }) => { const subAccount = (0, token_1.getSubAccount)(account, transaction); (0, invariant_1.default)(subAccount, "subAccount not found"); const token = await (0, state_1.getCryptoAssetsStore)().findTokenById(subAccount.token.id); if (!token) { throw new Error("Token not found"); } const formattedAmount = (0, formatCurrencyUnit_1.formatCurrencyUnit)(token.units[0], status.amount); return `${formattedAmount} (${token.ticker})`; }, }, { title: "From", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ account }) => account.freshAddress, }, { title: "To", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => transaction.recipient, }, { title: "Memo", button: specs_1.SpeculosButton.RIGHT, expectedValue: ({ transaction }) => (transaction.memo ? "Complex memo value" : "None"), }, { title: "APPROVE", button: specs_1.SpeculosButton.BOTH, }, ], }); //# sourceMappingURL=bot-deviceActions.js.map