@zondax/ledger-polkadot
TypeScript icon, indicating that this package has built-in type declarations

0.16.0 • Public • Published

ledger-polkadot (JS Integration)

zondax_light

License npm version

This package provides a basic client library to communicate with Polkadot App running in a Ledger Nano S/S+/X or Stax device.

Available commands

This package exports a PolkadotApp class that receives any Ledger Transport and has the following functions, that execute commands in the device. All of them are typed.

They return the following basic structure + any other stuff relevant in that specific command.

interface ResponseBase {
  errorMessage: string;
  returnCode: number;
}

Errors can be checked using the returnCode field. You should check if it's equal to ERROR_CODE.NoError.

import { ERROR_CODE } from "@zondax/ledger-polkadot";

// we got the result from any method of the class
if (result.returnCode !== ERROR_CODE.NoError) {
  // handle with care
}

The following commands are available:

  • appInfo: Get information from the device and application. This method is standard in all Ledger Apps.
  • getVersion: Get app version and targetId.
  • getAddress: Get address and pubkey. It takes the following arguments:
    • path: string: BIP44 path with length 5. Example: "m/44'/354'/0'/1/0.
      • Note: it needs to start with "m/44'/354', otherwise it'll be rejected.
    • ss58prefix: number: ss58 prefix to encode the address with
  • sign: Sign a transaction. It takes the following arguments:
    • path: string: BIP44 path with length 5. Example: "m/44'/354'/0'/1/0.
      • Note: it needs to start with "m/44'/354', otherwise it'll be rejected.
    • blob: Buffer: SCALE-encoded transaction.
    • metadata: Buffer: SCALE-encoded ShortMetadata according to spec.
  • signRaw: Sign arbitrary bytes (not a transaction). It gets the following arguments:
    • path: string: BIP44 path with length 5. Example: "m/44'/354'/0'/1/0.
      • Note: it needs to start with "m/44'/354', otherwise it'll be rejected.
    • blob: Buffer: Bytes to sign, prefixed by <Bytes> and suffixed by </Bytes>.

Who we are?

We are Zondax, a company pioneering blockchain services. If you want to know more about us, please visit us at zondax.ch

Dependencies (0)

    Dev Dependencies (12)

    Package Sidebar

    Install

    npm i @zondax/ledger-polkadot

    Weekly Downloads

    65

    Version

    0.16.0

    License

    Apache-2.0

    Unpacked Size

    36.9 kB

    Total Files

    11

    Last publish

    Collaborators

    • ftheirs
    • jleni