@mysten/ledgerjs-hw-app-sui
TypeScript icon, indicating that this package has built-in type declarations

0.3.1 • Public • Published

Ledger Github, Ledger Developer Portal, Ledger Developer Discord

ledgerjs-hw-app-sui

Ledger Hardware Wallet JavaScript bindings for Sui, based on LedgerJS.

Using LedgerJS for Sui

Here is a sample app for Node:

const Transport = require('@ledgerhq/hw-transport').default;
const Sui = require('@mysten/ledgerjs-hw-app-sui').default;

const getPublicKey = async () => {
	const sui = new Sui(await Transport.create());
	return await sui.getPublicKey("44'/784'/0'/0'/0'");
};

const signTransaction = async () => {
	const sui = new Sui(await Transport.create());
	return await sui.signTransaction("44'/784'/0'/0'/0'", '<transaction contents>');
};

const getVersion = async () => {
	const sui = new Sui(await Transport.create());
	return await sui.getVersion();
};

const doAll = async () => {
	console.log(await getPublicKey());
	console.log(await signTransaction());
	console.log(await getVersion());
};

doAll().catch((err) => console.log(err));

API

Table of Contents

Parameters

  • transport Transport<any>
  • scrambleKey string (optional, default "Sui")

Examples

import Sui from 'ledgerjs-hw-app-sui';

const transport = await Transport.create();
const sui = new Sui(transport);

getPublicKey

Gets the Sui address for a given BIP-32 path.

Parameters

  • path string a path in BIP-32 format
  • displayOnDevice boolean whether or not to display the address on the Ledger device.

Examples

const publicKey = await sui.getPublicKey("44'/784'/0'/0'/0'");

Returns Promise<string> an object with a public key.

signTransaction

Sign a transaction with a given BIP-32 path.

Parameters

  • path string a path in BIP-32 format

Examples

const publicKey = await sui.signTransaction("44'/784'/0'/0'/0'", '<transaction contents>');

Returns Promise<object> an object with text field containing a signature.

getVersion

Get the version of the application installed on the hardware device.

Examples

console.log(await sui.getVersion());

for version 0.1.0, it produces something like

{
  major: 0
  minor: 1
  patch: 0
}

Returns Promise<{object}> an object with major, minor, and patch of the version.

Package Sidebar

Install

npm i @mysten/ledgerjs-hw-app-sui

Weekly Downloads

413

Version

0.3.1

License

Apache-2.0

Unpacked Size

127 kB

Total Files

15

Last publish

Collaborators

  • m_liolios
  • jkmysten
  • ricknies
  • jordangens
  • ebmifa
  • damirka
  • chris-mysten