@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.
- package/cjs/hardware-wallet-manager.js +42 -0
- package/cjs/hardware-wallet-manager.js.map +1 -1
- package/cjs/keyring-manager.js +170 -85
- package/cjs/keyring-manager.js.map +1 -1
- package/cjs/ledger/bitcoin_client/lib/appClient.js +1 -0
- package/cjs/ledger/bitcoin_client/lib/appClient.js.map +1 -1
- package/cjs/ledger/index.js +162 -9
- package/cjs/ledger/index.js.map +1 -1
- package/cjs/transactions/ethereum.js +38 -0
- package/cjs/transactions/ethereum.js.map +1 -1
- package/cjs/transactions/syscoin.js +27 -8
- package/cjs/transactions/syscoin.js.map +1 -1
- package/cjs/types.js.map +1 -1
- package/cjs/utils/derivation-paths.js +20 -0
- package/cjs/utils/derivation-paths.js.map +1 -1
- package/package.json +2 -2
- package/types/hardware-wallet-manager.d.ts +4 -0
- package/types/keyring-manager.d.ts +7 -10
- package/types/ledger/index.d.ts +3 -0
- package/types/types.d.ts +4 -0
- package/types/utils/derivation-paths.d.ts +5 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":";;AAOA,kCA6BC;AAKD,8BAGC;AAKD,oCAGC;AAKD,oCAEC;AAKD,wCAUC;AAMD,4DAOC;AAMD,4DAiBC;
|
|
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.
|
|
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>;
|
package/types/ledger/index.d.ts
CHANGED
|
@@ -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;
|