@sidhujag/sysweb3-keyring 1.0.522 → 1.0.524

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.
@@ -1 +1 @@
1
- {"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sidhujag/sysweb3-keyring",
3
- "version": "1.0.522",
3
+ "version": "1.0.524",
4
4
  "description": "Keyring Manager for UTXO and Web3 Wallets",
5
5
  "main": "cjs/index.js",
6
6
  "types": "types/index.d.ts",
@@ -31,6 +31,7 @@
31
31
  "@ledgerhq/hw-app-eth": "^6.45.12",
32
32
  "@ledgerhq/hw-transport-webhid": "^6.30.4",
33
33
  "@ledgerhq/logs": "^6.10.1",
34
+ "@metamask/eth-sig-util": "^8.2.0",
34
35
  "@sidhujag/sysweb3-core": "^1.0.27",
35
36
  "@sidhujag/sysweb3-network": "^1.0.105",
36
37
  "@sidhujag/sysweb3-utils": "^1.1.254",
@@ -46,7 +47,6 @@
46
47
  "crypto-js": "^4.1.1",
47
48
  "dotenv": "^16.4.5",
48
49
  "eth-json-rpc-filters": "^4.2.2",
49
- "@metamask/eth-sig-util": "^8.2.0",
50
50
  "ethereumjs-util": "^7.1.5",
51
51
  "ledger-bitcoin": "^0.2.3",
52
52
  "satoshi-bitcoin": "^1.0.5"
@@ -106,5 +106,9 @@ export declare class HardwareWalletManager extends EventEmitter {
106
106
  * Retry an operation with exponential backoff
107
107
  */
108
108
  retryOperation<T>(operation: () => Promise<T>, operationName: string, customRetryConfig?: Partial<RetryConfig>): Promise<T>;
109
+ /**
110
+ * Detects common user-cancellation errors to avoid pointless retries
111
+ */
112
+ private isUserCancellationError;
109
113
  }
110
114
  export {};
@@ -108,6 +108,13 @@ export declare class KeyringManager implements IKeyringManager {
108
108
  node?: undefined;
109
109
  network?: undefined;
110
110
  };
111
+ validateWif(wif: string, targetNetwork?: INetwork): {
112
+ isValid: boolean;
113
+ message?: undefined;
114
+ } | {
115
+ isValid: boolean;
116
+ message: any;
117
+ };
111
118
  /**
112
119
  * PRIVATE METHODS
113
120
  */
@@ -159,16 +166,6 @@ export declare class KeyringManager implements IKeyringManager {
159
166
  * OPTIMIZED: No RPC call needed - uses network config directly
160
167
  */
161
168
  private createOnDemandUTXOSigner;
162
- /**
163
- * Creates a fresh UTXO signer for imported accounts from stored zprv
164
- * OPTIMIZED: No RPC call needed - uses network config directly
165
- */
166
- private createOnDemandUTXOSignerFromImported;
167
- /**
168
- * Common method to create on-demand signer for active account
169
- * Handles account type determination and delegates to appropriate method
170
- */
171
- private createOnDemandSignerForActiveAccount;
172
169
  private isZprv;
173
170
  initializeSession: (seedPhrase: string, password: string) => Promise<void>;
174
171
  createFirstAccount: (label?: string) => Promise<IKeyringAccountState>;
@@ -10,6 +10,7 @@ export declare class LedgerKeyring {
10
10
  utxo: IUTXOMethods;
11
11
  transport: Transport | null;
12
12
  private hardwareWalletManager;
13
+ private walletHmacCache;
13
14
  constructor();
14
15
  /**
15
16
  * Ensure Ledger is connected with automatic retry
@@ -31,6 +32,8 @@ export declare class LedgerKeyring {
31
32
  private getEvmAddressAndPubKey;
32
33
  private signTypedData;
33
34
  private getMasterFingerprint;
35
+ private buildWalletCacheKey;
36
+ private getOrRegisterHmac;
34
37
  private setHdPath;
35
38
  /**
36
39
  * Convert PSBT to Ledger format with retry logic
package/types/types.d.ts CHANGED
@@ -120,6 +120,10 @@ export interface IKeyringManager {
120
120
  importTrezorAccount: (label?: string) => Promise<IKeyringAccountState>;
121
121
  utf8Error: boolean;
122
122
  validateZprv: (zprv: string, targetNetwork?: INetwork) => IValidateZprvResponse;
123
+ validateWif: (wif: string, targetNetwork?: INetwork) => {
124
+ isValid: boolean;
125
+ message?: string;
126
+ };
123
127
  importAccount: (privKey: string, label?: string) => Promise<IKeyringAccountState>;
124
128
  getNewChangeAddress: () => Promise<string>;
125
129
  getChangeAddress: (id: number) => Promise<string>;
@@ -33,3 +33,8 @@ export declare function getAccountDerivationPath(coinShortcut: string, slip44: n
33
33
  * Example: m/84'/57'/0'/0/0 for first address of first Syscoin account
34
34
  */
35
35
  export declare function getAddressDerivationPath(coinShortcut: string, slip44: number, accountIndex?: number, isChangeAddress?: boolean, addressIndex?: number): string;
36
+ /**
37
+ * Convert an extended key's version bytes to a target version (e.g., xpub->zpub or tpub->vpub)
38
+ * - Pass targetVersionHex as a 4-byte hex string (e.g., '04b24746' for zpub, '045f1cf6' for vpub)
39
+ */
40
+ export declare function convertExtendedKeyVersion(extendedKey: string, targetVersionHex: string): string;