solana-web3-on-steroids 1.0.2 → 1.0.5
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/README.md +43 -0
- package/dist/client/SteroidClient.d.ts +1 -1
- package/dist/client/SteroidClient.js +5 -25
- package/dist/client/SteroidClient.js.map +1 -1
- package/dist/connection/SteroidConnection.d.ts +1 -2
- package/dist/connection/SteroidConnection.js +27 -43
- package/dist/connection/SteroidConnection.js.map +1 -1
- package/dist/transaction/SteroidTransaction.d.ts +1 -16
- package/dist/transaction/SteroidTransaction.js +61 -101
- package/dist/transaction/SteroidTransaction.js.map +1 -1
- package/dist/types/SteroidWalletTypes.d.ts +0 -5
- package/dist/types/SteroidWalletTypes.js +0 -9
- package/dist/types/SteroidWalletTypes.js.map +1 -1
- package/dist/utils/idUtils.d.ts +10 -0
- package/dist/utils/idUtils.js +15 -0
- package/dist/utils/idUtils.js.map +1 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.js +8 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +13 -0
- package/dist/utils/logger.js +47 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/mathUtils.d.ts +13 -0
- package/dist/utils/mathUtils.js +18 -0
- package/dist/utils/mathUtils.js.map +1 -0
- package/dist/utils/solanaUtils.d.ts +21 -0
- package/dist/utils/solanaUtils.js +50 -0
- package/dist/utils/solanaUtils.js.map +1 -0
- package/dist/utils/stateUtils.d.ts +13 -0
- package/dist/utils/stateUtils.js +19 -0
- package/dist/utils/stateUtils.js.map +1 -0
- package/dist/utils/timeUtils.d.ts +5 -0
- package/dist/utils/timeUtils.js +8 -0
- package/dist/utils/timeUtils.js.map +1 -0
- package/dist/utils/walletUtils.d.ts +11 -0
- package/dist/utils/walletUtils.js +47 -0
- package/dist/utils/walletUtils.js.map +1 -0
- package/dist/wallet/SteroidWallet.d.ts +1 -4
- package/dist/wallet/SteroidWallet.js +18 -58
- package/dist/wallet/SteroidWallet.js.map +1 -1
- package/docs/assets/architecture.png +0 -0
- package/package.json +6 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State and Map management utilities.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Clears entries from a Map that are older than a specified duration.
|
|
6
|
+
* Assumes the Map values have a 'startTime' property.
|
|
7
|
+
*
|
|
8
|
+
* @param map - The Map to clean up
|
|
9
|
+
* @param maxAgeMs - Maximum allowed age in milliseconds
|
|
10
|
+
*/
|
|
11
|
+
export function clearExpiredEntries(map, maxAgeMs) {
|
|
12
|
+
const now = Date.now();
|
|
13
|
+
for (const [id, entry] of map.entries()) {
|
|
14
|
+
if (now - entry.startTime > maxAgeMs) {
|
|
15
|
+
map.delete(id);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=stateUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stateUtils.js","sourceRoot":"","sources":["../../src/utils/stateUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAmB,EACnB,QAAgB;IAEhB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,QAAQ,EAAE,CAAC;YACrC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeUtils.js","sourceRoot":"","sources":["../../src/utils/timeUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { WalletErrorType } from '../types/SteroidWalletTypes.js';
|
|
2
|
+
/**
|
|
3
|
+
* Normalizes various wallet/adapter errors into a consistent format.
|
|
4
|
+
*
|
|
5
|
+
* @param error - The raw error caught from a wallet operation
|
|
6
|
+
* @returns An object containing the normalized error type and message
|
|
7
|
+
*/
|
|
8
|
+
export declare function normalizeWalletError(error: any): {
|
|
9
|
+
type: WalletErrorType;
|
|
10
|
+
message: string;
|
|
11
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { WalletErrorType } from '../types/SteroidWalletTypes.js';
|
|
2
|
+
/**
|
|
3
|
+
* Normalizes various wallet/adapter errors into a consistent format.
|
|
4
|
+
*
|
|
5
|
+
* @param error - The raw error caught from a wallet operation
|
|
6
|
+
* @returns An object containing the normalized error type and message
|
|
7
|
+
*/
|
|
8
|
+
export function normalizeWalletError(error) {
|
|
9
|
+
const message = error.message?.toLowerCase() || '';
|
|
10
|
+
const code = error.code || error.name || '';
|
|
11
|
+
// User rejection patterns
|
|
12
|
+
if (message.includes('user rejected') ||
|
|
13
|
+
message.includes('user denied') ||
|
|
14
|
+
message.includes('user cancelled') ||
|
|
15
|
+
message.includes('rejected by user') ||
|
|
16
|
+
code === 'USER_REJECTED' ||
|
|
17
|
+
code === 4001) {
|
|
18
|
+
return {
|
|
19
|
+
type: WalletErrorType.USER_REJECTED,
|
|
20
|
+
message: 'User rejected the request'
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
// Connection issues
|
|
24
|
+
if (message.includes('not connected') ||
|
|
25
|
+
message.includes('wallet not found') ||
|
|
26
|
+
message.includes('no wallet')) {
|
|
27
|
+
return {
|
|
28
|
+
type: WalletErrorType.NOT_CONNECTED,
|
|
29
|
+
message: 'Wallet is not connected'
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
// Signing failures
|
|
33
|
+
if (message.includes('signing failed') ||
|
|
34
|
+
message.includes('signature failed') ||
|
|
35
|
+
message.includes('failed to sign')) {
|
|
36
|
+
return {
|
|
37
|
+
type: WalletErrorType.SIGNING_FAILED,
|
|
38
|
+
message: `Signing failed: ${error.message}`
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
// Default
|
|
42
|
+
return {
|
|
43
|
+
type: WalletErrorType.UNKNOWN,
|
|
44
|
+
message: error.message || 'Unknown wallet error'
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=walletUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walletUtils.js","sourceRoot":"","sources":["../../src/utils/walletUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAU;IAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IAE5C,0BAA0B;IAC1B,IACE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;QACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACpC,IAAI,KAAK,eAAe;QACxB,IAAI,KAAK,IAAI,EACb,CAAC;QACD,OAAO;YACL,IAAI,EAAE,eAAe,CAAC,aAAa;YACnC,OAAO,EAAE,2BAA2B;SACrC,CAAC;IACJ,CAAC;IAED,oBAAoB;IACpB,IACE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;QACjC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC7B,CAAC;QACD,OAAO;YACL,IAAI,EAAE,eAAe,CAAC,aAAa;YACnC,OAAO,EAAE,yBAAyB;SACnC,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,IACE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAClC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,eAAe,CAAC,cAAc;YACpC,OAAO,EAAE,mBAAmB,KAAK,CAAC,OAAO,EAAE;SAC5C,CAAC;IACJ,CAAC;IAED,UAAU;IACV,OAAO;QACL,IAAI,EAAE,eAAe,CAAC,OAAO;QAC7B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,sBAAsB;KACjD,CAAC;AACJ,CAAC"}
|
|
@@ -18,6 +18,7 @@ export declare class SteroidWallet {
|
|
|
18
18
|
private connection;
|
|
19
19
|
private txEngine;
|
|
20
20
|
private config;
|
|
21
|
+
private logger;
|
|
21
22
|
private networkValidated;
|
|
22
23
|
private genesisHash?;
|
|
23
24
|
constructor(wallet: WalletInterface, connection: SteroidConnection, config?: SteroidWalletConfig);
|
|
@@ -62,10 +63,6 @@ export declare class SteroidWallet {
|
|
|
62
63
|
* Normalizes different wallet errors into a consistent format.
|
|
63
64
|
*/
|
|
64
65
|
private normalizeError;
|
|
65
|
-
/**
|
|
66
|
-
* Type guard for legacy transactions.
|
|
67
|
-
*/
|
|
68
|
-
private isLegacyTransaction;
|
|
69
66
|
private log;
|
|
70
67
|
/**
|
|
71
68
|
* Get network information.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SteroidTransaction } from '../transaction/SteroidTransaction.js';
|
|
2
2
|
import { WalletErrorType } from '../types/SteroidWalletTypes.js';
|
|
3
|
+
import { isLegacyTransaction, Logger, normalizeWalletError } from '../utils/index.js';
|
|
3
4
|
export class WalletError extends Error {
|
|
4
5
|
type;
|
|
5
6
|
originalError;
|
|
@@ -22,6 +23,7 @@ export class SteroidWallet {
|
|
|
22
23
|
connection;
|
|
23
24
|
txEngine;
|
|
24
25
|
config;
|
|
26
|
+
logger;
|
|
25
27
|
networkValidated = false;
|
|
26
28
|
genesisHash;
|
|
27
29
|
constructor(wallet, connection, config = {}) {
|
|
@@ -35,6 +37,7 @@ export class SteroidWallet {
|
|
|
35
37
|
autoRefreshBlockhash: config.autoRefreshBlockhash ?? true,
|
|
36
38
|
maxBlockhashAge: config.maxBlockhashAge ?? 60,
|
|
37
39
|
};
|
|
40
|
+
this.logger = new Logger('SteroidWallet', this.config.enableLogging);
|
|
38
41
|
}
|
|
39
42
|
/**
|
|
40
43
|
* Get the wallet's public key.
|
|
@@ -51,7 +54,7 @@ export class SteroidWallet {
|
|
|
51
54
|
await this.guardState();
|
|
52
55
|
try {
|
|
53
56
|
// Refresh blockhash if needed
|
|
54
|
-
if (this.config.autoRefreshBlockhash &&
|
|
57
|
+
if (this.config.autoRefreshBlockhash && isLegacyTransaction(transaction)) {
|
|
55
58
|
await this.ensureFreshBlockhash(transaction);
|
|
56
59
|
}
|
|
57
60
|
// Sign transaction
|
|
@@ -74,9 +77,9 @@ export class SteroidWallet {
|
|
|
74
77
|
async signTransaction(transaction) {
|
|
75
78
|
await this.guardState();
|
|
76
79
|
try {
|
|
77
|
-
this.
|
|
80
|
+
this.logger.info('Requesting signature from wallet...');
|
|
78
81
|
const signed = await this.wallet.signTransaction(transaction);
|
|
79
|
-
this.
|
|
82
|
+
this.logger.info('Transaction signed successfully');
|
|
80
83
|
return signed;
|
|
81
84
|
}
|
|
82
85
|
catch (error) {
|
|
@@ -92,9 +95,9 @@ export class SteroidWallet {
|
|
|
92
95
|
return [];
|
|
93
96
|
}
|
|
94
97
|
try {
|
|
95
|
-
this.
|
|
98
|
+
this.logger.info(`Requesting signatures for ${transactions.length} transactions...`);
|
|
96
99
|
const signed = await this.wallet.signAllTransactions(transactions);
|
|
97
|
-
this.
|
|
100
|
+
this.logger.info(`Successfully signed ${signed.length} transactions`);
|
|
98
101
|
return signed;
|
|
99
102
|
}
|
|
100
103
|
catch (error) {
|
|
@@ -111,9 +114,9 @@ export class SteroidWallet {
|
|
|
111
114
|
throw new WalletError(WalletErrorType.UNSUPPORTED_OPERATION, 'Wallet does not support message signing');
|
|
112
115
|
}
|
|
113
116
|
try {
|
|
114
|
-
this.
|
|
117
|
+
this.logger.info('Requesting message signature from wallet...');
|
|
115
118
|
const signature = await signMessage.call(this.wallet, message);
|
|
116
|
-
this.
|
|
119
|
+
this.logger.info('Message signed successfully');
|
|
117
120
|
return signature;
|
|
118
121
|
}
|
|
119
122
|
catch (error) {
|
|
@@ -141,13 +144,13 @@ export class SteroidWallet {
|
|
|
141
144
|
// Get genesis hash to uniquely identify the network
|
|
142
145
|
const genesisHash = await this.connection.getGenesisHash();
|
|
143
146
|
this.genesisHash = genesisHash;
|
|
144
|
-
this.
|
|
147
|
+
this.logger.info(`Network validation - Genesis hash: ${genesisHash.slice(0, 16)}...`);
|
|
145
148
|
// If expected genesis hash is configured, verify it matches
|
|
146
149
|
if (this.config.expectedGenesisHash) {
|
|
147
150
|
if (genesisHash !== this.config.expectedGenesisHash) {
|
|
148
151
|
throw new WalletError(WalletErrorType.NETWORK_MISMATCH, `Network mismatch: Expected ${this.config.expectedGenesisHash.slice(0, 16)}..., got ${genesisHash.slice(0, 16)}...`);
|
|
149
152
|
}
|
|
150
|
-
this.
|
|
153
|
+
this.logger.info('Network validation passed - Genesis hash matches expected value');
|
|
151
154
|
}
|
|
152
155
|
this.networkValidated = true;
|
|
153
156
|
}
|
|
@@ -155,7 +158,7 @@ export class SteroidWallet {
|
|
|
155
158
|
if (error instanceof WalletError) {
|
|
156
159
|
throw error;
|
|
157
160
|
}
|
|
158
|
-
this.
|
|
161
|
+
this.logger.warn('Network validation failed:', error.message);
|
|
159
162
|
// Don't throw - some wallets/networks might not support genesis hash
|
|
160
163
|
// Just log and continue
|
|
161
164
|
}
|
|
@@ -169,13 +172,13 @@ export class SteroidWallet {
|
|
|
169
172
|
const { blockhash, lastValidBlockHeight } = await this.connection.getLatestBlockhash('confirmed');
|
|
170
173
|
transaction.recentBlockhash = blockhash;
|
|
171
174
|
transaction.lastValidBlockHeight = lastValidBlockHeight;
|
|
172
|
-
this.
|
|
175
|
+
this.logger.info('Set fresh blockhash on transaction');
|
|
173
176
|
return;
|
|
174
177
|
}
|
|
175
178
|
// Check if existing blockhash might be stale
|
|
176
179
|
// Note: This is a best-effort check - we can't know the exact age
|
|
177
180
|
// The transaction layer will refresh if needed during retry
|
|
178
|
-
this.
|
|
181
|
+
this.logger.info('Transaction already has blockhash, will validate during send');
|
|
179
182
|
}
|
|
180
183
|
/**
|
|
181
184
|
* Safely sign a transaction with proper error handling.
|
|
@@ -195,54 +198,11 @@ export class SteroidWallet {
|
|
|
195
198
|
if (error instanceof WalletError) {
|
|
196
199
|
return error;
|
|
197
200
|
}
|
|
198
|
-
const message = error
|
|
199
|
-
|
|
200
|
-
// User rejection patterns
|
|
201
|
-
if (message.includes('user rejected') ||
|
|
202
|
-
message.includes('user denied') ||
|
|
203
|
-
message.includes('user cancelled') ||
|
|
204
|
-
message.includes('rejected by user') ||
|
|
205
|
-
code === 'USER_REJECTED' ||
|
|
206
|
-
code === 4001 // EIP-1193 user rejection
|
|
207
|
-
) {
|
|
208
|
-
return new WalletError(WalletErrorType.USER_REJECTED, 'User rejected the request', error);
|
|
209
|
-
}
|
|
210
|
-
// Connection issues
|
|
211
|
-
if (message.includes('not connected') ||
|
|
212
|
-
message.includes('wallet not found') ||
|
|
213
|
-
message.includes('no wallet')) {
|
|
214
|
-
return new WalletError(WalletErrorType.NOT_CONNECTED, 'Wallet is not connected', error);
|
|
215
|
-
}
|
|
216
|
-
// Signing failures
|
|
217
|
-
if (message.includes('signing failed') ||
|
|
218
|
-
message.includes('signature failed') ||
|
|
219
|
-
message.includes('failed to sign')) {
|
|
220
|
-
return new WalletError(WalletErrorType.SIGNING_FAILED, `Signing failed: ${error.message}`, error);
|
|
221
|
-
}
|
|
222
|
-
// Default to unknown with original error preserved
|
|
223
|
-
return new WalletError(WalletErrorType.UNKNOWN, error.message || 'Unknown wallet error', error);
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* Type guard for legacy transactions.
|
|
227
|
-
*/
|
|
228
|
-
isLegacyTransaction(transaction) {
|
|
229
|
-
return 'recentBlockhash' in transaction;
|
|
201
|
+
const { type, message } = normalizeWalletError(error);
|
|
202
|
+
return new WalletError(type, message, error);
|
|
230
203
|
}
|
|
231
204
|
log(level, ...args) {
|
|
232
|
-
|
|
233
|
-
return;
|
|
234
|
-
const prefix = '[SteroidWallet]';
|
|
235
|
-
switch (level) {
|
|
236
|
-
case 'info':
|
|
237
|
-
console.log(prefix, ...args);
|
|
238
|
-
break;
|
|
239
|
-
case 'warn':
|
|
240
|
-
console.warn(prefix, ...args);
|
|
241
|
-
break;
|
|
242
|
-
case 'error':
|
|
243
|
-
console.error(prefix, ...args);
|
|
244
|
-
break;
|
|
245
|
-
}
|
|
205
|
+
this.logger.log(level, ...args);
|
|
246
206
|
}
|
|
247
207
|
/**
|
|
248
208
|
* Get network information.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SteroidWallet.js","sourceRoot":"","sources":["../../src/wallet/SteroidWallet.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAEL,eAAe,EAGhB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"SteroidWallet.js","sourceRoot":"","sources":["../../src/wallet/SteroidWallet.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "solana-web3-on-steroids",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "A systems-grade resilience layer for Solana web3.js",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -15,8 +15,13 @@
|
|
|
15
15
|
"transaction",
|
|
16
16
|
"rpc"
|
|
17
17
|
],
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "git+https://github.com/max-de-bug/solana_web3.js_on_steroids.git"
|
|
21
|
+
},
|
|
18
22
|
"files": [
|
|
19
23
|
"dist",
|
|
24
|
+
"docs",
|
|
20
25
|
"LICENSE",
|
|
21
26
|
"README.md"
|
|
22
27
|
],
|