You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When you use the LedgerSigner, you must also include the intended
transport, which provides a generic interface for the communication
channel to the Ledger Hardware Device.
Below are examples and notes on installing the necessary transports:
# Install the extension pacakge
/home/ricmoo> npm install @ethers-ext/signer-ledger
# Depending on your environment, install any of the# relevant Transport(s) below:# For use of a USB-based device in node# - You must include "dom" in your TypeScript libs# - On MacOD, only the current user may access the USB
/home/ricmoo> npm install @ledgerhq/hw-transport-node-hid
# For use of a BLE-based device in node
/home/ricmoo> npm install @ledgerhq/hw-transport-node-ble
# For use of USB-based device in a browser using the WebUSB API
/home/ricmoo> npm install @ledgerhq/hw-transport-webusb
# For use of USB-based device in a browser using the WebHID API
/home/ricmoo> npm install @ledgerhq/hw-transport-webhid
# For use of BLE-based device in a browser using the Web Bluetooth API
/home/ricmoo> npm install @ledgerhq/hw-transport-web-ble
# For testing purposes, a virtual device for mocking
/home/ricmoo> npm install @ledgerhq/hw-transport-mocker
Usage
new LedgerSigner(transport, provider?, path?) => Signer
Create a new LedgerSigner connected to a Ledger Hardware Wallet
via transport and optionally connected to the blockchain using
provider. The default path is the path for Account #0, otherwise
the logic for the LedgerSigner.getPath is used.
import{LedgerSigner}from"@ethers-ext/signer-ledger";// Import your relevant transport; see the above "Installing"// section for the package name; for example, we'll use node-hidimportHIDTransportfrom"@ledgerhq/hw-transport-node-hid";constsigner=newLedgerSigner(HIDTransport,provider);
signer.getSigner(pathOrAccount?) => LedgerSigner
Returns a new Signer with the same transport and provider, but
with using the pathOrAccount.
LedgerSigner.getPath(pathOrAccount?) => string
Returns the HD path for pathOrAccount. If none is provided, the
default path (account #0) is returned, if a number is provided,
the HD path for that account is returned, otherwise a valid HD path
is expected (starting with m/).
Notes
Some platforms, such as MetaMask use a different derivation path for accounts. For those, you can use the Ethers getIndexedAccount function.
License
MIT License.
About
Ethers extension for LedgerSigner for Ledger Hardware Wallet support.