Allows to communicate with Ledger Hardware Wallets.
[Web] (WebHID) – WebHID check browser support.
The transport functions create()
and listen()
must be called in the context of an user interaction (like a "click" event), otherwise it fails with DOM Exception. This is by WebUSB design. You also must run on HTTPS.
Please check @ledgerhq/hw-transport-webusb
documentation because it is very similar paradigm.
WebUSB is currently only supported on Google Chrome / Chromium DEV version and by explicitly enabling chrome://flags/#enable-experimental-web-platform-features
Extends Transport
WebHID Transport implementation
device
HIDDevice
import TransportWebHID from "@ledgerhq/hw-transport-webhid";
...
TransportWebHID.create().then(transport => ...)
Release the transport device
Returns Promise<void>
Exchange with the device using APDU protocol.
apdu
Buffer
Returns Promise<Buffer> a promise of apdu response
Check if WebUSB transport is supported.
List the WebUSB devices that was previously authorized by the user.
Actively listen to WebUSB devices and emit ONE device that was either accepted before, if not it will trigger the native permission UI.
Important: it must be called in the context of a UI click!
observer
Observer<DescriptorEvent<HIDDevice>>
Returns Subscription
Similar to create() except it will always display the device permission (even if some devices are already accepted).
Similar to create() except it will never display the device permission (it returns a Promise<?Transport>, null if it fails to find a device).
Create a Ledger transport with a HIDDevice
device
HIDDevice