@rnssolution/color-ledger
v0.1.3
Published
provide simple Ledger tooling for the Color Ledger App with user friendly errors
Readme
Color Ledger App wrapper
This library helps interfacing with Color Ledger App. It provides a developer friendly interface and user friendly error messages.
Install
yarn add @rnssolution/color-ledgerUsage
Sign using the Ledger
import Ledger from "@rnssolution/color-ledger"
const signMessage = ... message to sign, generate messages with "@lunie/cosmos-js"
const ledger = await Ledger().connect()
const signature = await ledger.sign(signMessage)Using with cosmos-js
import Ledger from "@rnssolution/color-ledger"
import Cosmos from "@lunie/cosmos-js"
const privateKey = Buffer.from(...)
const publicKey = Buffer.from(...)
// init cosmos sender
const cosmos = Cosmos(STARGATE_URL, ADDRESS)
// create message
const msg = cosmos
.MsgSend({toAddress: 'color1abcd09876', amounts: [{ denom: 'color', amount: 10 }})
// create a signer from this local js signer library
const ledgerSigner = async (signMessage) => {
const ledger = await Ledger().connect()
const publicKey = await ledger.getPubKey()
const signature = await ledger.sign(signMessage)
return {
signature,
publicKey
}
}
// send the transaction
const { included }= await msg.send({ gas: 200000 }, ledgerSigner)
// await tx to be included in a block
await included()