@exodus/hw-ledger 3.4.3 → 3.6.0

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/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.6.0](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/hw-ledger@3.5.0...@exodus/hw-ledger@3.6.0) (2025-07-18)
7
+
8
+ ### Features
9
+
10
+ - feat: bump bs58check to v3 (#13274)
11
+
12
+ ## [3.5.0](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/hw-ledger@3.4.3...@exodus/hw-ledger@3.5.0) (2025-05-30)
13
+
14
+ ### Features
15
+
16
+ - feat: switch hw-ledger from metamask/eth-sig-util to our fixed impl (#12750)
17
+
6
18
  ## [3.4.3](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/hw-ledger@3.4.2...@exodus/hw-ledger@3.4.3) (2025-03-05)
7
19
 
8
20
  ### Bug Fixes
@@ -23,7 +23,7 @@ type Params = {
23
23
  export declare const walletPolicyAtomDefinition: {
24
24
  readonly id: "walletPolicyAtom";
25
25
  readonly type: "atom";
26
- readonly factory: ({ storage }: Params) => import("@exodus/atoms").Atom<Record<string, Buffer> | {}>;
26
+ readonly factory: ({ storage }: Params) => import("@exodus/atoms").Atom<Record<string, Buffer<ArrayBufferLike>> | {}>;
27
27
  readonly dependencies: readonly ["storage"];
28
28
  readonly public: true;
29
29
  };
package/lib/index.d.ts CHANGED
@@ -23,7 +23,7 @@ declare const hardwareWalletLedger: ({ bluetoothScannerTimeout, }?: Partial<HwLe
23
23
  readonly type: "atom";
24
24
  readonly factory: ({ storage }: {
25
25
  storage: import("adapters/storage-interface").Storage<Record<string, Buffer>>;
26
- }) => import("libraries/atoms/lib").Atom<Record<string, Buffer> | {}>;
26
+ }) => import("libraries/atoms/lib").Atom<Record<string, Buffer<ArrayBufferLike>> | {}>;
27
27
  readonly dependencies: readonly ["storage"];
28
28
  readonly public: true;
29
29
  };
@@ -1,7 +1,7 @@
1
1
  import * as secp256k1 from '@exodus/crypto/secp256k1';
2
2
  import * as ethers from '@exodus/ethersproject-transactions';
3
3
  import AppEth, { ledgerService } from '@exodus/ledgerhq-hw-app-eth';
4
- import { TypedDataUtils, SignTypedDataVersion } from '@metamask/eth-sig-util';
4
+ import { TypedDataUtils, SignTypedDataVersion } from '@exodus/ethereumjs/eth-sig-util';
5
5
  import assert from 'minimalistic-assert';
6
6
  import { buildFauxXPUB } from './utils';
7
7
  import { RequiresBlindSigningError } from '../errors';
@@ -21,11 +21,11 @@ function hashEIP712Message(typedData) {
21
21
  };
22
22
  }
23
23
  function isEIP712Message(message) {
24
- return (typeof message === 'object' &&
25
- 'types' in message &&
26
- 'primaryType' in message &&
27
- 'domain' in message &&
28
- 'message' in message);
24
+ if (typeof message !== 'object')
25
+ return false;
26
+ const ownKeys = ['types', 'primaryType', 'domain', 'message'];
27
+ const candidateKeys = Object.keys(message);
28
+ return (candidateKeys.length === ownKeys.length && candidateKeys.every((key) => ownKeys.includes(key)));
29
29
  }
30
30
  async function createHandler(transport) {
31
31
  const app = new AppEth(transport);
@@ -17,7 +17,7 @@ export declare class LedgerDevice implements HardwareWalletDevice {
17
17
  listUseableAssetNames: () => Promise<string[]>;
18
18
  getAddress: (params: GetAddressParams) => Promise<string>;
19
19
  getXPub: (params: GetXPubParams) => Promise<string>;
20
- getPublicKey: (params: GetPublicKeyParams) => Promise<Readonly<Uint8Array>>;
20
+ getPublicKey: (params: GetPublicKeyParams) => Promise<Readonly<Uint8Array<ArrayBufferLike>>>;
21
21
  signTransaction: (params: SignTransactionParams) => Promise<import("@exodus/hw-common").Signatures>;
22
- signMessage: (params: SignMessageParams) => Promise<Readonly<Uint8Array>>;
22
+ signMessage: (params: SignMessageParams) => Promise<Readonly<Uint8Array<ArrayBufferLike>>>;
23
23
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exodus/hw-ledger",
3
- "version": "3.4.3",
3
+ "version": "3.6.0",
4
4
  "description": "The ledger module",
5
5
  "author": "Exodus Movement, Inc.",
6
6
  "repository": {
@@ -19,12 +19,12 @@
19
19
  "./CHANGELOG.md"
20
20
  ],
21
21
  "scripts": {
22
- "build": "run -T tsc --build tsconfig.build.json",
23
- "build:watch": "run -T tsc --build tsconfig.build.json && run -T tsc --build -w tsconfig.build.json",
22
+ "build": "run -T tsc -p tsconfig.build.json",
23
+ "build:watch": "run -T tsc -w -p tsconfig.build.json",
24
24
  "clean": "run -T tsc --build --clean",
25
- "test": "RUN_TESTS=unit run -T exodus-test --jest --esbuild",
25
+ "test": "run -T exodus-test --jest --esbuild",
26
26
  "zemu:install": "docker pull zondax/builder-zemu:speculos-ef9610662dc90a1eeddba7c991e3ef7c53c4e258",
27
- "test:integration": "yarn zemu:install && RUN_TESTS=integration run -T exodus-test --jest --esbuild",
27
+ "test:integration": "yarn zemu:install && RUN_TESTS=integration run test",
28
28
  "lint": "run -T eslint .",
29
29
  "lint:fix": "yarn lint --fix",
30
30
  "prepublishOnly": "yarn run -T build --scope @exodus/hw-ledger"
@@ -34,25 +34,24 @@
34
34
  "@exodus/bip322-js": "^2.0.0",
35
35
  "@exodus/bitcoinjs": "^1.1.0",
36
36
  "@exodus/crypto": "^1.0.0-rc.14",
37
+ "@exodus/ethereumjs": "^1.5.0",
37
38
  "@exodus/ethersproject-transactions": "^5.4.2-exodus.0",
38
39
  "@exodus/hw-common": "^3.1.0",
39
- "@exodus/ledger-bitcoin": "^0.2.3-exodus.3",
40
+ "@exodus/ledger-bitcoin": "^0.2.3-exodus.6",
40
41
  "@exodus/ledgerhq-devices": "^8.1.0-exodus.3",
41
42
  "@exodus/ledgerhq-hw-app-eth": "^6.33.7-exodus.8",
42
43
  "@exodus/redux-dependency-injection": "^4.0.0",
43
44
  "@ledgerhq/hw-app-solana": "^7.0.10",
44
45
  "@ledgerhq/hw-app-trx": "^6.29.4",
45
46
  "@ledgerhq/hw-transport": "^6.28.5",
46
- "@metamask/eth-sig-util": "^4.0.1",
47
47
  "bs58": "^4.0.0",
48
- "bs58check": "^2.1.2",
48
+ "bs58check": "^3.0.1",
49
49
  "minimalistic-assert": "^1.0.1",
50
50
  "semver": "^7.3.5"
51
51
  },
52
52
  "devDependencies": {
53
- "@exodus/bip32": "^4.0.2",
53
+ "@exodus/bip32": "^4.1.0",
54
54
  "@exodus/dependency-types": "^2.1.1",
55
- "@ledgerhq/hw-transport-node-hid": "^6.27.17",
56
55
  "@solana/web3.js": "^1.78.0",
57
56
  "@types/bs58": "^4.0.1",
58
57
  "@types/bs58check": "^2.1.0",
@@ -62,11 +61,10 @@
62
61
  "bitcoinjs-lib": "^6.1.3",
63
62
  "ecpair": "^2.1.0",
64
63
  "p-defer": "^4.0.1",
65
- "redux": "^4.2.1",
66
- "tiny-secp256k1": "^2.2.3"
64
+ "redux": "^4.2.1"
67
65
  },
68
66
  "publishConfig": {
69
67
  "access": "public"
70
68
  },
71
- "gitHead": "b61af952787a6542f0629986b784d2e19c2df662"
69
+ "gitHead": "d633626e2234250851c7935c8790b64280c5d682"
72
70
  }