@ledgerhq/live-common
Version:
Common ground for the Ledger Live apps
20 lines (18 loc) • 935 B
text/typescript
import type { CommonDeviceTransactionField } from "@ledgerhq/ledger-wallet-framework/transaction/common";
import perFamily from "../generated/deviceTransactionConfig";
import type { ExtraDeviceTransactionField } from "../generated/deviceTransactionConfig";
import type { Transaction, TransactionStatus } from "../generated/types";
import { getMainAccount } from "../account";
import type { Account, AccountLike } from "@ledgerhq/types-live";
export type DeviceTransactionField = CommonDeviceTransactionField | ExtraDeviceTransactionField;
export async function getDeviceTransactionConfig(arg: {
account: AccountLike;
parentAccount: Account | null | undefined;
transaction: Transaction;
status: TransactionStatus;
}): Promise<Array<DeviceTransactionField>> {
const mainAccount = getMainAccount(arg.account, arg.parentAccount);
const f = perFamily[mainAccount.currency.family];
if (!f) return [];
return await f(arg);
}