0.3.1 • Published 3 months ago

@mysten/ledgerjs-hw-app-sui v0.3.1

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
3 months ago

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.

0.3.1

3 months ago

0.3.0

4 months ago

0.2.0

1 year ago

0.1.0

1 year ago