@bytezhang/hardware-ledger-connector-webhid 0.0.30 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/LedgerWebHidConnector.ts"],"sourcesContent":["import type { IConnector } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\n\nimport {\n LedgerWebHidConnector,\n} from './LedgerWebHidConnector';\nimport type { LedgerWebHidConnectorOptions } from './LedgerWebHidConnector';\n\nexport { LedgerWebHidConnector };\nexport type { LedgerWebHidConnectorOptions };\n\n/**\n * Create a LedgerWebHidConnector.\n *\n * @param dmk - Optional pre-built DMK instance. If omitted, the connector\n * will lazily create one using `@ledgerhq/device-management-kit`\n * and `@ledgerhq/device-transport-kit-web-hid`.\n */\nexport function createLedgerWebHidConnector(dmk?: IDmk): IConnector {\n return new LedgerWebHidConnector({ dmk });\n}\n","import type { DeviceDescriptor } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\nimport { LedgerConnectorBase } from '@bytezhang/ledger-adapter';\n\n// ---------------------------------------------------------------------------\n// Utilities\n// ---------------------------------------------------------------------------\n\n/**\n * Extract the stable 4-digit HEX identifier from a Ledger BLE device name.\n * e.g., \"Nano X 123A\" -> \"123A\", \"Ledger Nano X AB12\" -> \"AB12\"\n * Returns undefined if no valid HEX suffix found.\n */\nfunction extractBleHexId(name?: string): string | undefined {\n if (!name) return undefined;\n const match = name.match(/\\b([0-9A-Fa-f]{4})$/);\n return match ? match[1].toUpperCase() : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// LedgerWebHidConnector\n// ---------------------------------------------------------------------------\n\nexport interface LedgerWebHidConnectorOptions {\n /**\n * Pre-built DMK instance. If not provided, a DMK will be created\n * lazily on first use via `@ledgerhq/device-management-kit` and\n * `@ledgerhq/device-transport-kit-web-hid`.\n */\n dmk?: IDmk;\n}\n\n/**\n * IConnector implementation for Ledger hardware wallets via WebHID.\n *\n * Extends LedgerConnectorBase with the WebHID transport factory.\n * Overrides connectId resolution to handle BLE devices that may appear\n * via a WebHID+BLE combo transport.\n */\nexport class LedgerWebHidConnector extends LedgerConnectorBase {\n constructor(options?: LedgerWebHidConnectorOptions) {\n super(\n async () => {\n const { webHidTransportFactory } = await import(\n '@ledgerhq/device-transport-kit-web-hid'\n );\n return webHidTransportFactory;\n },\n { connectionType: 'usb', dmk: options?.dmk },\n );\n }\n\n /**\n * Override connectId resolution for BLE devices discovered via WebHID+BLE combo.\n * For USB devices, the DMK path (ephemeral UUID) is used as-is.\n */\n protected override _resolveConnectId(descriptor: DeviceDescriptor): string {\n if (descriptor.transport === 'BLE') {\n return extractBleHexId(descriptor.name) || descriptor.path;\n }\n return descriptor.path;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,4BAAoC;AAWpC,SAAS,gBAAgB,MAAmC;AAC1D,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,QAAQ,KAAK,MAAM,qBAAqB;AAC9C,SAAO,QAAQ,MAAM,CAAC,EAAE,YAAY,IAAI;AAC1C;AAsBO,IAAM,wBAAN,cAAoC,0CAAoB;AAAA,EAC7D,YAAY,SAAwC;AAClD;AAAA,MACE,YAAY;AACV,cAAM,EAAE,uBAAuB,IAAI,MAAM,OACvC,wCACF;AACA,eAAO;AAAA,MACT;AAAA,MACA,EAAE,gBAAgB,OAAO,KAAK,SAAS,IAAI;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMmB,kBAAkB,YAAsC;AACzE,QAAI,WAAW,cAAc,OAAO;AAClC,aAAO,gBAAgB,WAAW,IAAI,KAAK,WAAW;AAAA,IACxD;AACA,WAAO,WAAW;AAAA,EACpB;AACF;;;AD5CO,SAAS,4BAA4B,KAAwB;AAClE,SAAO,IAAI,sBAAsB,EAAE,IAAI,CAAC;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../src/LedgerWebHidConnector.ts"],"sourcesContent":["import type { IConnector } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\n\nimport { LedgerWebHidConnector } from './LedgerWebHidConnector';\nimport type { LedgerWebHidConnectorOptions } from './LedgerWebHidConnector';\n\nexport { LedgerWebHidConnector };\nexport type { LedgerWebHidConnectorOptions };\n\n/**\n * Create a LedgerWebHidConnector.\n *\n * @param dmk - Optional pre-built DMK instance. If omitted, the connector\n * will lazily create one using `@ledgerhq/device-management-kit`\n * and `@ledgerhq/device-transport-kit-web-hid`.\n */\nexport function createLedgerWebHidConnector(dmk?: IDmk): IConnector {\n return new LedgerWebHidConnector({ dmk });\n}\n","import type { DeviceDescriptor } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\nimport { LedgerConnectorBase } from '@bytezhang/ledger-adapter';\n\n// ---------------------------------------------------------------------------\n// Utilities\n// ---------------------------------------------------------------------------\n\n/**\n * Extract the stable 4-digit HEX identifier from a Ledger BLE device name.\n * e.g., \"Nano X 123A\" -> \"123A\", \"Ledger Nano X AB12\" -> \"AB12\"\n * Returns undefined if no valid HEX suffix found.\n */\nfunction extractBleHexId(name?: string): string | undefined {\n if (!name) return undefined;\n const match = name.match(/\\b([0-9A-Fa-f]{4})$/);\n return match ? match[1].toUpperCase() : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// LedgerWebHidConnector\n// ---------------------------------------------------------------------------\n\nexport interface LedgerWebHidConnectorOptions {\n /**\n * Pre-built DMK instance. If not provided, a DMK will be created\n * lazily on first use via `@ledgerhq/device-management-kit` and\n * `@ledgerhq/device-transport-kit-web-hid`.\n */\n dmk?: IDmk;\n}\n\n/**\n * IConnector implementation for Ledger hardware wallets via WebHID.\n *\n * Extends LedgerConnectorBase with the WebHID transport factory.\n * Overrides connectId resolution to handle BLE devices that may appear\n * via a WebHID+BLE combo transport.\n */\nexport class LedgerWebHidConnector extends LedgerConnectorBase {\n constructor(options?: LedgerWebHidConnectorOptions) {\n super(\n async () => {\n const { webHidTransportFactory } = await import('@ledgerhq/device-transport-kit-web-hid');\n return webHidTransportFactory;\n },\n { connectionType: 'usb', dmk: options?.dmk }\n );\n }\n\n /**\n * Override connectId resolution for BLE devices discovered via WebHID+BLE combo.\n * For USB devices, the DMK path (ephemeral UUID) is used as-is.\n */\n protected override _resolveConnectId(descriptor: DeviceDescriptor): string {\n if (descriptor.transport === 'BLE') {\n return extractBleHexId(descriptor.name) || descriptor.path;\n }\n return descriptor.path;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,4BAAoC;AAWpC,SAAS,gBAAgB,MAAmC;AAC1D,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,QAAQ,KAAK,MAAM,qBAAqB;AAC9C,SAAO,QAAQ,MAAM,CAAC,EAAE,YAAY,IAAI;AAC1C;AAsBO,IAAM,wBAAN,cAAoC,0CAAoB;AAAA,EAC7D,YAAY,SAAwC;AAClD;AAAA,MACE,YAAY;AACV,cAAM,EAAE,uBAAuB,IAAI,MAAM,OAAO,wCAAwC;AACxF,eAAO;AAAA,MACT;AAAA,MACA,EAAE,gBAAgB,OAAO,KAAK,SAAS,IAAI;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMmB,kBAAkB,YAAsC;AACzE,QAAI,WAAW,cAAc,OAAO;AAClC,aAAO,gBAAgB,WAAW,IAAI,KAAK,WAAW;AAAA,IACxD;AACA,WAAO,WAAW;AAAA,EACpB;AACF;;;AD5CO,SAAS,4BAA4B,KAAwB;AAClE,SAAO,IAAI,sBAAsB,EAAE,IAAI,CAAC;AAC1C;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/LedgerWebHidConnector.ts","../src/index.ts"],"sourcesContent":["import type { DeviceDescriptor } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\nimport { LedgerConnectorBase } from '@bytezhang/ledger-adapter';\n\n// ---------------------------------------------------------------------------\n// Utilities\n// ---------------------------------------------------------------------------\n\n/**\n * Extract the stable 4-digit HEX identifier from a Ledger BLE device name.\n * e.g., \"Nano X 123A\" -> \"123A\", \"Ledger Nano X AB12\" -> \"AB12\"\n * Returns undefined if no valid HEX suffix found.\n */\nfunction extractBleHexId(name?: string): string | undefined {\n if (!name) return undefined;\n const match = name.match(/\\b([0-9A-Fa-f]{4})$/);\n return match ? match[1].toUpperCase() : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// LedgerWebHidConnector\n// ---------------------------------------------------------------------------\n\nexport interface LedgerWebHidConnectorOptions {\n /**\n * Pre-built DMK instance. If not provided, a DMK will be created\n * lazily on first use via `@ledgerhq/device-management-kit` and\n * `@ledgerhq/device-transport-kit-web-hid`.\n */\n dmk?: IDmk;\n}\n\n/**\n * IConnector implementation for Ledger hardware wallets via WebHID.\n *\n * Extends LedgerConnectorBase with the WebHID transport factory.\n * Overrides connectId resolution to handle BLE devices that may appear\n * via a WebHID+BLE combo transport.\n */\nexport class LedgerWebHidConnector extends LedgerConnectorBase {\n constructor(options?: LedgerWebHidConnectorOptions) {\n super(\n async () => {\n const { webHidTransportFactory } = await import(\n '@ledgerhq/device-transport-kit-web-hid'\n );\n return webHidTransportFactory;\n },\n { connectionType: 'usb', dmk: options?.dmk },\n );\n }\n\n /**\n * Override connectId resolution for BLE devices discovered via WebHID+BLE combo.\n * For USB devices, the DMK path (ephemeral UUID) is used as-is.\n */\n protected override _resolveConnectId(descriptor: DeviceDescriptor): string {\n if (descriptor.transport === 'BLE') {\n return extractBleHexId(descriptor.name) || descriptor.path;\n }\n return descriptor.path;\n }\n}\n","import type { IConnector } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\n\nimport {\n LedgerWebHidConnector,\n} from './LedgerWebHidConnector';\nimport type { LedgerWebHidConnectorOptions } from './LedgerWebHidConnector';\n\nexport { LedgerWebHidConnector };\nexport type { LedgerWebHidConnectorOptions };\n\n/**\n * Create a LedgerWebHidConnector.\n *\n * @param dmk - Optional pre-built DMK instance. If omitted, the connector\n * will lazily create one using `@ledgerhq/device-management-kit`\n * and `@ledgerhq/device-transport-kit-web-hid`.\n */\nexport function createLedgerWebHidConnector(dmk?: IDmk): IConnector {\n return new LedgerWebHidConnector({ dmk });\n}\n"],"mappings":";AAEA,SAAS,2BAA2B;AAWpC,SAAS,gBAAgB,MAAmC;AAC1D,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,QAAQ,KAAK,MAAM,qBAAqB;AAC9C,SAAO,QAAQ,MAAM,CAAC,EAAE,YAAY,IAAI;AAC1C;AAsBO,IAAM,wBAAN,cAAoC,oBAAoB;AAAA,EAC7D,YAAY,SAAwC;AAClD;AAAA,MACE,YAAY;AACV,cAAM,EAAE,uBAAuB,IAAI,MAAM,OACvC,wCACF;AACA,eAAO;AAAA,MACT;AAAA,MACA,EAAE,gBAAgB,OAAO,KAAK,SAAS,IAAI;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMmB,kBAAkB,YAAsC;AACzE,QAAI,WAAW,cAAc,OAAO;AAClC,aAAO,gBAAgB,WAAW,IAAI,KAAK,WAAW;AAAA,IACxD;AACA,WAAO,WAAW;AAAA,EACpB;AACF;;;AC5CO,SAAS,4BAA4B,KAAwB;AAClE,SAAO,IAAI,sBAAsB,EAAE,IAAI,CAAC;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../src/LedgerWebHidConnector.ts","../src/index.ts"],"sourcesContent":["import type { DeviceDescriptor } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\nimport { LedgerConnectorBase } from '@bytezhang/ledger-adapter';\n\n// ---------------------------------------------------------------------------\n// Utilities\n// ---------------------------------------------------------------------------\n\n/**\n * Extract the stable 4-digit HEX identifier from a Ledger BLE device name.\n * e.g., \"Nano X 123A\" -> \"123A\", \"Ledger Nano X AB12\" -> \"AB12\"\n * Returns undefined if no valid HEX suffix found.\n */\nfunction extractBleHexId(name?: string): string | undefined {\n if (!name) return undefined;\n const match = name.match(/\\b([0-9A-Fa-f]{4})$/);\n return match ? match[1].toUpperCase() : undefined;\n}\n\n// ---------------------------------------------------------------------------\n// LedgerWebHidConnector\n// ---------------------------------------------------------------------------\n\nexport interface LedgerWebHidConnectorOptions {\n /**\n * Pre-built DMK instance. If not provided, a DMK will be created\n * lazily on first use via `@ledgerhq/device-management-kit` and\n * `@ledgerhq/device-transport-kit-web-hid`.\n */\n dmk?: IDmk;\n}\n\n/**\n * IConnector implementation for Ledger hardware wallets via WebHID.\n *\n * Extends LedgerConnectorBase with the WebHID transport factory.\n * Overrides connectId resolution to handle BLE devices that may appear\n * via a WebHID+BLE combo transport.\n */\nexport class LedgerWebHidConnector extends LedgerConnectorBase {\n constructor(options?: LedgerWebHidConnectorOptions) {\n super(\n async () => {\n const { webHidTransportFactory } = await import('@ledgerhq/device-transport-kit-web-hid');\n return webHidTransportFactory;\n },\n { connectionType: 'usb', dmk: options?.dmk }\n );\n }\n\n /**\n * Override connectId resolution for BLE devices discovered via WebHID+BLE combo.\n * For USB devices, the DMK path (ephemeral UUID) is used as-is.\n */\n protected override _resolveConnectId(descriptor: DeviceDescriptor): string {\n if (descriptor.transport === 'BLE') {\n return extractBleHexId(descriptor.name) || descriptor.path;\n }\n return descriptor.path;\n }\n}\n","import type { IConnector } from '@bytezhang/hardware-wallet-core';\nimport type { IDmk } from '@bytezhang/ledger-adapter';\n\nimport { LedgerWebHidConnector } from './LedgerWebHidConnector';\nimport type { LedgerWebHidConnectorOptions } from './LedgerWebHidConnector';\n\nexport { LedgerWebHidConnector };\nexport type { LedgerWebHidConnectorOptions };\n\n/**\n * Create a LedgerWebHidConnector.\n *\n * @param dmk - Optional pre-built DMK instance. If omitted, the connector\n * will lazily create one using `@ledgerhq/device-management-kit`\n * and `@ledgerhq/device-transport-kit-web-hid`.\n */\nexport function createLedgerWebHidConnector(dmk?: IDmk): IConnector {\n return new LedgerWebHidConnector({ dmk });\n}\n"],"mappings":";AAEA,SAAS,2BAA2B;AAWpC,SAAS,gBAAgB,MAAmC;AAC1D,MAAI,CAAC,KAAM,QAAO;AAClB,QAAM,QAAQ,KAAK,MAAM,qBAAqB;AAC9C,SAAO,QAAQ,MAAM,CAAC,EAAE,YAAY,IAAI;AAC1C;AAsBO,IAAM,wBAAN,cAAoC,oBAAoB;AAAA,EAC7D,YAAY,SAAwC;AAClD;AAAA,MACE,YAAY;AACV,cAAM,EAAE,uBAAuB,IAAI,MAAM,OAAO,wCAAwC;AACxF,eAAO;AAAA,MACT;AAAA,MACA,EAAE,gBAAgB,OAAO,KAAK,SAAS,IAAI;AAAA,IAC7C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMmB,kBAAkB,YAAsC;AACzE,QAAI,WAAW,cAAc,OAAO;AAClC,aAAO,gBAAgB,WAAW,IAAI,KAAK,WAAW;AAAA,IACxD;AACA,WAAO,WAAW;AAAA,EACpB;AACF;;;AC5CO,SAAS,4BAA4B,KAAwB;AAClE,SAAO,IAAI,sBAAsB,EAAE,IAAI,CAAC;AAC1C;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bytezhang/hardware-ledger-connector-webhid",
3
- "version": "0.0.30",
3
+ "version": "0.0.31",
4
4
  "description": "IConnector implementation for Ledger hardware wallets via WebHID (DMK)",
5
5
  "author": "OneKey",
6
6
  "license": "MIT",
@@ -44,8 +44,8 @@
44
44
  "connector"
45
45
  ],
46
46
  "dependencies": {
47
- "@bytezhang/hardware-wallet-core": "0.0.30",
48
- "@bytezhang/ledger-adapter": "0.0.30",
47
+ "@bytezhang/hardware-wallet-core": "0.0.31",
48
+ "@bytezhang/ledger-adapter": "0.0.31",
49
49
  "@ledgerhq/device-management-kit": "^1.1.0",
50
50
  "@ledgerhq/device-signer-kit-ethereum": "^1.9.0",
51
51
  "@ledgerhq/device-signer-kit-bitcoin": "^1.0.0",