UNPKG

send-crypto

Version:

A minimal JavaScript library / wallet for sending crypto assets

36 lines 3.2 kB
// tslint:disable no-submodule-imports import filecoin_signer from "@zondax/filecoin-signing-tools/js"; import { Network as FilNetwork } from "@glif/filecoin-address"; export const SingleKeyProvider = (privateKey) => { // here we close over the private variables, so they aren't accessible to the outside world const PRIVATE_KEY = privateKey; const { private_hexstring } = filecoin_signer.keyRecover(PRIVATE_KEY); return { getAccounts: async (_nStart, _nEnd, network = FilNetwork.MAIN) => { return [ filecoin_signer.keyRecover(PRIVATE_KEY, network === FilNetwork.TEST).address, ]; }, sign: async (_from, filecoinMessage) => { const { signature } = filecoin_signer.transactionSign({ to: filecoinMessage.To, from: filecoinMessage.From, nonce: filecoinMessage.Nonce, value: filecoinMessage.Value, gaslimit: filecoinMessage.GasLimit, gasfeecap: filecoinMessage.GasFeeCap, gaspremium: filecoinMessage.GasPremium, method: filecoinMessage.Method, params: filecoinMessage.Params || "", }, Buffer.from(private_hexstring, "hex").toString("base64")); return { Message: filecoinMessage, Signature: { Type: 0, Data: signature.data, }, }; }, }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaGFuZGxlcnMvRklML3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxPQUFPLGVBQWUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRy9ELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQzdCLFVBQXNCLEVBQ0wsRUFBRTtJQUNuQiwyRkFBMkY7SUFDM0YsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQy9CLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEUsT0FBTztRQUNILFdBQVcsRUFBRSxLQUFLLEVBQ2QsT0FBZSxFQUNmLEtBQWEsRUFDYixVQUFrQixVQUFVLENBQUMsSUFBSSxFQUNuQyxFQUFFO1lBQ0EsT0FBTztnQkFDSCxlQUFlLENBQUMsVUFBVSxDQUN0QixXQUFXLEVBQ1gsT0FBTyxLQUFLLFVBQVUsQ0FBQyxJQUFJLENBQzlCLENBQUMsT0FBTzthQUNaLENBQUM7UUFDTixDQUFDO1FBRUQsSUFBSSxFQUFFLEtBQUssRUFDUCxLQUFhLEVBQ2IsZUFBNkIsRUFDRixFQUFFO1lBQzdCLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxlQUFlLENBQUMsZUFBZSxDQUNqRDtnQkFDSSxFQUFFLEVBQUUsZUFBZSxDQUFDLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtnQkFDMUIsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFLO2dCQUM1QixLQUFLLEVBQUUsZUFBZSxDQUFDLEtBQUs7Z0JBQzVCLFFBQVEsRUFBRSxlQUFlLENBQUMsUUFBUTtnQkFDbEMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxTQUFTO2dCQUNwQyxVQUFVLEVBQUUsZUFBZSxDQUFDLFVBQVU7Z0JBQ3RDLE1BQU0sRUFBRSxlQUFlLENBQUMsTUFBTTtnQkFDOUIsTUFBTSxFQUFFLGVBQWUsQ0FBQyxNQUFNLElBQUksRUFBRTthQUN2QyxFQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUMzRCxDQUFDO1lBQ0YsT0FBTztnQkFDSCxPQUFPLEVBQUUsZUFBZTtnQkFDeEIsU0FBUyxFQUFFO29CQUNQLElBQUksRUFBRSxDQUFDO29CQUNQLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSTtpQkFDdkI7YUFDSixDQUFDO1FBQ04sQ0FBQztLQUNKLENBQUM7QUFDTixDQUFDLENBQUMifQ==