@exodus/hardware-wallets 3.6.0 → 3.6.1

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,12 @@
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.1](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/hardware-wallets@3.6.0...@exodus/hardware-wallets@3.6.1) (2026-02-09)
7
+
8
+ ### Bug Fixes
9
+
10
+ - fix(hardware-wallets): connect ledger evm from fresh wallets (#15201)
11
+
6
12
  ## [3.6.0](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/hardware-wallets@3.5.0...@exodus/hardware-wallets@3.6.0) (2026-01-21)
7
13
 
8
14
  ### Features
package/lib/index.d.ts CHANGED
@@ -37,7 +37,7 @@ declare const hardwareWallets: () => {
37
37
  readonly id: "hardwareWallets";
38
38
  readonly type: "module";
39
39
  readonly factory: (opts: import("./module/hardware-wallets.js").Dependencies) => import("./module/hardware-wallets.js").HardwareWallets;
40
- readonly dependencies: readonly ["assetsModule", "logger", "ledgerDiscovery", "trezorDiscovery", "publicKeyStore", "hardwareWalletSigningRequestsAtom", "wallet", "walletAccountsAtom", "walletAccounts"];
40
+ readonly dependencies: readonly ["assetsModule", "logger", "ledgerDiscovery", "trezorDiscovery", "publicKeyStore", "hardwareWalletSigningRequestsAtom", "wallet", "walletAccountsAtom", "walletAccounts", "enabledAssets", "availableAssetNamesAtom"];
41
41
  readonly public: true;
42
42
  };
43
43
  }, {
@@ -21,11 +21,13 @@ export type Dependencies = {
21
21
  walletAccounts: any;
22
22
  txLogMonitors: any;
23
23
  restoreProgressTracker: any;
24
+ enabledAssets: any;
25
+ availableAssetNamesAtom: Atom<string[]>;
24
26
  };
25
27
  export declare class HardwareWallets implements HardwareSignerProvider {
26
28
  #private;
27
29
  readonly events: Emitter<string, any>;
28
- constructor({ assetsModule, ledgerDiscovery, trezorDiscovery, logger, hardwareWalletSigningRequestsAtom, publicKeyStore, wallet, walletAccountsAtom, walletAccounts, }: Dependencies);
30
+ constructor({ assetsModule, ledgerDiscovery, trezorDiscovery, logger, hardwareWalletSigningRequestsAtom, publicKeyStore, wallet, walletAccountsAtom, walletAccounts, enabledAssets, availableAssetNamesAtom, }: Dependencies);
29
31
  retrySigningRequest: (id: string) => Promise<void>;
30
32
  cancelSigningRequest: (id: string, fromUI: boolean) => Promise<void>;
31
33
  signTransaction: ({ baseAssetName, unsignedTx, walletAccount, multisigData, }: SignTransactionParams) => Promise<any>;
@@ -55,7 +57,7 @@ declare const hardwareWalletsModuleDefinition: {
55
57
  readonly id: "hardwareWallets";
56
58
  readonly type: "module";
57
59
  readonly factory: (opts: Dependencies) => HardwareWallets;
58
- readonly dependencies: readonly ["assetsModule", "logger", "ledgerDiscovery", "trezorDiscovery", "publicKeyStore", "hardwareWalletSigningRequestsAtom", "wallet", "walletAccountsAtom", "walletAccounts"];
60
+ readonly dependencies: readonly ["assetsModule", "logger", "ledgerDiscovery", "trezorDiscovery", "publicKeyStore", "hardwareWalletSigningRequestsAtom", "wallet", "walletAccountsAtom", "walletAccounts", "enabledAssets", "availableAssetNamesAtom"];
59
61
  readonly public: true;
60
62
  };
61
63
  export default hardwareWalletsModuleDefinition;
@@ -16,6 +16,8 @@ export class HardwareWallets {
16
16
  #wallet;
17
17
  #walletAccountsAtom;
18
18
  #walletAccounts;
19
+ #enabledAssets;
20
+ #availableAssetNamesAtom;
19
21
  #syncedKeysMap = new Map();
20
22
  #signingRequest;
21
23
  #isRetrying = false;
@@ -29,7 +31,7 @@ export class HardwareWallets {
29
31
  }
30
32
  return device;
31
33
  };
32
- constructor({ assetsModule, ledgerDiscovery, trezorDiscovery, logger, hardwareWalletSigningRequestsAtom, publicKeyStore, wallet, walletAccountsAtom, walletAccounts, }) {
34
+ constructor({ assetsModule, ledgerDiscovery, trezorDiscovery, logger, hardwareWalletSigningRequestsAtom, publicKeyStore, wallet, walletAccountsAtom, walletAccounts, enabledAssets, availableAssetNamesAtom, }) {
33
35
  this.#assetsModule = assetsModule;
34
36
  this.#ledgerDiscovery = ledgerDiscovery;
35
37
  this.#trezorDiscovery = trezorDiscovery;
@@ -39,6 +41,8 @@ export class HardwareWallets {
39
41
  this.#wallet = wallet;
40
42
  this.#walletAccountsAtom = walletAccountsAtom;
41
43
  this.#walletAccounts = walletAccounts;
44
+ this.#enabledAssets = enabledAssets;
45
+ this.#availableAssetNamesAtom = availableAssetNamesAtom;
42
46
  }
43
47
  #listTrezorDevicesOrEmpty = async () => {
44
48
  try {
@@ -417,6 +421,9 @@ export class HardwareWallets {
417
421
  const { xpub, publicKey } = keys;
418
422
  await this.#publicKeyStore.add({ walletAccount, keyIdentifier, xpub, publicKey });
419
423
  }
424
+ const availableAssetNames = await this.#availableAssetNamesAtom.get();
425
+ const assetNamesToEnable = [...assetNames].filter((assetName) => availableAssetNames.includes(assetName));
426
+ await this.#enabledAssets.enable(assetNamesToEnable);
420
427
  this.events.emit('syncAssets', { assetNames });
421
428
  };
422
429
  create = async ({ syncedKeysId, isMultisig }) => {
@@ -473,6 +480,8 @@ const hardwareWalletsModuleDefinition = {
473
480
  'wallet',
474
481
  'walletAccountsAtom',
475
482
  'walletAccounts',
483
+ 'enabledAssets',
484
+ 'availableAssetNamesAtom',
476
485
  ],
477
486
  public: true,
478
487
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exodus/hardware-wallets",
3
- "version": "3.6.0",
3
+ "version": "3.6.1",
4
4
  "description": "An Exodus SDK feature that provides a high level abstraction for interacting with hardware wallet devices",
5
5
  "author": "Exodus Movement, Inc.",
6
6
  "repository": {
@@ -53,5 +53,5 @@
53
53
  "access": "public",
54
54
  "provenance": false
55
55
  },
56
- "gitHead": "43e7fa9467acd5e681d99473eb54d9e790130e04"
56
+ "gitHead": "e0cdf475edecde771229c25e2e0b1eb61ad52030"
57
57
  }