This page is an extract from the repository
Sections in this article
- FAQ: “DOM Exception” is triggered when creating the transport
- How to use this transport?
- Support status
- Install the package
FAQ: “DOM Exception” is triggered when creating the transport
The transport functions
listen() must be called in the context of a user interaction (like a “click” event), otherwise it fails with DOM Exception. This is by WebHID design. You also must run on HTTPS.
How to use this transport?
Please check hw-transport-webusb documentation because it is very similar paradigm.
WebHID is currently only supported on Google Chrome / Chromium DEV.
Install the package
yarn add @ledgerhq/hw-transport-webhid
WebHID Transport implementation
import TransportWebHID from "@ledgerhq/hw-transport-webhid"; ... TransportWebHID.create().then(transport => ...)
Release the transport device
Exchange with the device using APDU protocol.
Check if WebHID transport is supported.
List the WebHID devices that was previously authorized by the user.
Actively listen to WebHID 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!
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