@ledgerhq/coin-casper
Version:
Ledger Casper integration
14 lines • 781 B
JavaScript
import { Transaction as CasperTransaction, PublicKey } from "casper-js-sdk";
import { patchOperationWithHash } from "@ledgerhq/coin-framework/operation";
import { broadcastTx } from "../api";
import invariant from "invariant";
export const broadcast = async ({ account, signedOperation: { signature, operation, rawData }, }) => {
invariant(rawData, "casper: rawData is required");
const tx = CasperTransaction.fromJSON(rawData.tx);
tx.setSignature(Buffer.from(signature, "hex"), PublicKey.fromHex(account.freshAddress));
const hash = await broadcastTx(tx);
invariant(hash, "casper: failed to broadcast transaction and get transaction hash");
const result = patchOperationWithHash(operation, hash);
return result;
};
//# sourceMappingURL=broadcast.js.map