@deserialize/multi-vm-wallet 1.0.3 → 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/dist/constant.d.ts +2 -0
- package/dist/constant.js +55 -0
- package/dist/constant.js.map +1 -0
- package/dist/evm/evm.d.ts +12 -1
- package/dist/evm/evm.js +15 -1
- package/dist/evm/evm.js.map +1 -1
- package/dist/evm/utils.d.ts +15 -7
- package/dist/evm/utils.js +24 -1
- package/dist/evm/utils.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/old.d.ts +0 -0
- package/dist/old.js +885 -0
- package/dist/old.js.map +1 -0
- package/dist/svm/svm.d.ts +3 -1
- package/dist/svm/svm.js +36 -19
- package/dist/svm/svm.js.map +1 -1
- package/dist/svm/transactionSender.js +6 -2
- package/dist/svm/transactionSender.js.map +1 -1
- package/dist/svm/utils.d.ts +1 -0
- package/dist/svm/utils.js +177 -21
- package/dist/svm/utils.js.map +1 -1
- package/dist/test.d.ts +2 -0
- package/dist/test.js +42 -0
- package/dist/test.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.js.map +1 -1
- package/dist/vm.d.ts +13 -1
- package/dist/vm.js +40 -0
- package/dist/vm.js.map +1 -1
- package/package.json +4 -1
- package/utils/constant.ts +55 -0
- package/utils/evm/evm.ts +55 -23
- package/utils/evm/utils.ts +29 -1
- package/utils/index.ts +2 -1
- package/utils/old.ts +1005 -0
- package/utils/svm/svm.ts +41 -23
- package/utils/svm/transactionSender.ts +7 -2
- package/utils/svm/utils.ts +222 -30
- package/utils/test.ts +49 -0
- package/utils/types.ts +2 -0
- package/utils/vm.ts +52 -2
package/dist/svm/utils.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
//we will write all the svm utils function here
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.validateJupiterTokens = exports.getJupiterTokenList = exports.baseUnitsToUiAmount = exports.uiAmountToBaseUnits = exports.executeJupiterSwap = exports.buildJupiterSwapTransaction = exports.getJupiterQuote = exports.signAndSendTransaction = exports.getTransferTokenTransaction = exports.getTransferTokenInx = exports.getTransferNativeTransaction = exports.getTransferNativeInx = exports.getTokenAccountAccount = exports.getTokenBalance = exports.getSvmNativeBalance = exports.getProgramIdOfToken = exports.getSureAssociatedTokenAddressAndAccount = exports.createAtaAndIx = exports.createV0Transaction = void 0;
|
|
4
|
+
exports.validateJupiterTokens = exports.getJupiterTokenList = exports.baseUnitsToUiAmount = exports.uiAmountToBaseUnits = exports.executeJupiterSwap = exports.buildJupiterSwapTransaction = exports.getJupiterQuote = exports.signAndSendTransaction = exports.getTransferTokenTransaction = exports.getTransferTokenInx = exports.getTokenInfo = exports.getTransferNativeTransaction = exports.getTransferNativeInx = exports.getTokenAccountAccount = exports.getTokenBalance = exports.getSvmNativeBalance = exports.getProgramIdOfToken = exports.getSureAssociatedTokenAddressAndAccount = exports.createAtaAndIx = exports.createV0Transaction = void 0;
|
|
5
5
|
const spl_token_1 = require("@solana/spl-token");
|
|
6
6
|
const web3_js_1 = require("@solana/web3.js");
|
|
7
7
|
const transactionSender_1 = require("./transactionSender");
|
|
8
8
|
const bn_js_1 = require("bn.js");
|
|
9
9
|
const JUPITER_BASE_URL = 'https://lite-api.jup.ag';
|
|
10
10
|
const createV0Transaction = async (connection, inX, signers, payerPubKey, blockHash) => {
|
|
11
|
+
console.log('createV0Transaction: Starting transaction creation');
|
|
12
|
+
console.log('Instructions count:', inX.length);
|
|
13
|
+
console.log('Signers count:', signers.length);
|
|
14
|
+
console.log('Payer public key:', payerPubKey.toString());
|
|
11
15
|
const blockhash = blockHash || (await connection.getLatestBlockhash()).blockhash;
|
|
16
|
+
console.log('Using blockhash:', blockhash);
|
|
12
17
|
const message = new web3_js_1.TransactionMessage({
|
|
13
18
|
payerKey: payerPubKey,
|
|
14
19
|
instructions: inX,
|
|
@@ -17,18 +22,30 @@ const createV0Transaction = async (connection, inX, signers, payerPubKey, blockH
|
|
|
17
22
|
const transaction = new web3_js_1.VersionedTransaction(message);
|
|
18
23
|
transaction.message.staticAccountKeys;
|
|
19
24
|
if (signers.length < 1) {
|
|
25
|
+
console.log('Signing transaction with signers');
|
|
20
26
|
transaction.sign(signers);
|
|
21
27
|
}
|
|
28
|
+
console.log('createV0Transaction: Transaction created successfully');
|
|
22
29
|
return transaction;
|
|
23
30
|
};
|
|
24
31
|
exports.createV0Transaction = createV0Transaction;
|
|
25
32
|
const createAtaAndIx = async (token, ownerPublicKey, tokenProgramId, connection) => {
|
|
33
|
+
console.log('createAtaAndIx: Starting ATA creation');
|
|
34
|
+
console.log('Token:', token.toString());
|
|
35
|
+
console.log('Owner:', ownerPublicKey.toString());
|
|
36
|
+
console.log('Token Program ID:', tokenProgramId.toString());
|
|
26
37
|
let AtaTokenIx;
|
|
27
38
|
const associatedToken = (0, spl_token_1.getAssociatedTokenAddressSync)(token, ownerPublicKey, false, tokenProgramId);
|
|
39
|
+
console.log('Associated token address:', associatedToken.toString());
|
|
28
40
|
const accountExist = await connection.getAccountInfo(associatedToken);
|
|
29
41
|
if (!accountExist) {
|
|
42
|
+
console.log('Account does not exist, creating ATA instruction');
|
|
30
43
|
AtaTokenIx = (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(ownerPublicKey, associatedToken, ownerPublicKey, token, tokenProgramId);
|
|
31
44
|
}
|
|
45
|
+
else {
|
|
46
|
+
console.log('Account already exists, no ATA instruction needed');
|
|
47
|
+
}
|
|
48
|
+
console.log('createAtaAndIx: Completed');
|
|
32
49
|
return {
|
|
33
50
|
AtaTokenIx,
|
|
34
51
|
associatedToken,
|
|
@@ -36,6 +53,9 @@ const createAtaAndIx = async (token, ownerPublicKey, tokenProgramId, connection)
|
|
|
36
53
|
};
|
|
37
54
|
exports.createAtaAndIx = createAtaAndIx;
|
|
38
55
|
const getSureAssociatedTokenAddressAndAccount = async (connection, token, owner) => {
|
|
56
|
+
console.log('getSureAssociatedTokenAddressAndAccount: Starting');
|
|
57
|
+
console.log('Token:', token.toString());
|
|
58
|
+
console.log('Owner:', owner.toString());
|
|
39
59
|
let ATA;
|
|
40
60
|
let programId;
|
|
41
61
|
let tokenAccount;
|
|
@@ -43,14 +63,21 @@ const getSureAssociatedTokenAddressAndAccount = async (connection, token, owner)
|
|
|
43
63
|
programId = token.equals(spl_token_1.NATIVE_MINT)
|
|
44
64
|
? spl_token_1.TOKEN_PROGRAM_ID
|
|
45
65
|
: spl_token_1.TOKEN_2022_PROGRAM_ID;
|
|
66
|
+
console.log('Trying with program ID:', programId.toString());
|
|
46
67
|
ATA = (0, spl_token_1.getAssociatedTokenAddressSync)(token, owner, true, programId);
|
|
68
|
+
console.log('ATA address:', ATA.toString());
|
|
47
69
|
tokenAccount = await (0, spl_token_1.getAccount)(connection, ATA, "confirmed", programId);
|
|
70
|
+
console.log('Token account found with TOKEN_2022_PROGRAM_ID');
|
|
48
71
|
return { ATA, programId, tokenAccount };
|
|
49
72
|
}
|
|
50
73
|
catch (error) {
|
|
74
|
+
console.log('Failed with TOKEN_2022_PROGRAM_ID, trying TOKEN_PROGRAM_ID');
|
|
75
|
+
console.log('Error:', error);
|
|
51
76
|
programId = spl_token_1.TOKEN_PROGRAM_ID;
|
|
52
77
|
ATA = (0, spl_token_1.getAssociatedTokenAddressSync)(token, owner, true, programId);
|
|
78
|
+
console.log('New ATA address:', ATA.toString());
|
|
53
79
|
tokenAccount = await (0, spl_token_1.getAccount)(connection, ATA, "confirmed", programId);
|
|
80
|
+
console.log('Token account found with TOKEN_PROGRAM_ID');
|
|
54
81
|
return { ATA, programId, tokenAccount };
|
|
55
82
|
}
|
|
56
83
|
};
|
|
@@ -68,6 +95,7 @@ const getProgramIdOfToken = async (owner, token, connection) => {
|
|
|
68
95
|
return spl_token_1.TOKEN_PROGRAM_ID;
|
|
69
96
|
}
|
|
70
97
|
catch (error) {
|
|
98
|
+
console.log('Failed with TOKEN_PROGRAM_ID, returning TOKEN_2022_PROGRAM_ID');
|
|
71
99
|
return spl_token_1.TOKEN_2022_PROGRAM_ID;
|
|
72
100
|
}
|
|
73
101
|
};
|
|
@@ -83,17 +111,20 @@ const getTokenBalance = async (address, token, connection) => {
|
|
|
83
111
|
// Get the balance from the token account
|
|
84
112
|
const tokenAccount = await (0, exports.getTokenAccountAccount)(token, address, connection);
|
|
85
113
|
if (!tokenAccount) {
|
|
86
|
-
console.
|
|
114
|
+
console.log("Token account not found");
|
|
87
115
|
return 0;
|
|
88
116
|
}
|
|
117
|
+
console.log('Token account found:', tokenAccount.address.toString());
|
|
89
118
|
const tokenBalance = await connection.getTokenAccountBalance(tokenAccount.address);
|
|
90
119
|
if (!tokenBalance) {
|
|
91
|
-
console.
|
|
120
|
+
console.log("Token balance not found");
|
|
92
121
|
return 0;
|
|
93
122
|
}
|
|
123
|
+
console.log('Token balance:', tokenBalance.value);
|
|
94
124
|
return tokenBalance.value;
|
|
95
125
|
}
|
|
96
126
|
catch (error) {
|
|
127
|
+
console.log('Error in getTokenBalance:', error);
|
|
97
128
|
return 0;
|
|
98
129
|
}
|
|
99
130
|
};
|
|
@@ -104,12 +135,14 @@ const getTokenAccountAccount = async (token, address, connection) => {
|
|
|
104
135
|
const associatedTokenAccount = await (0, spl_token_1.getAssociatedTokenAddress)(token, // The token mint address
|
|
105
136
|
address // The user's public key
|
|
106
137
|
);
|
|
138
|
+
console.log('Associated token account:', associatedTokenAccount.toString());
|
|
107
139
|
// Fetch the token account information
|
|
108
140
|
const tokenAccount = await (0, spl_token_1.getAccount)(connection, associatedTokenAccount);
|
|
141
|
+
console.log('Token account retrieved successfully');
|
|
109
142
|
return tokenAccount;
|
|
110
143
|
}
|
|
111
144
|
catch (error) {
|
|
112
|
-
console.
|
|
145
|
+
console.log("Not token account for this");
|
|
113
146
|
return null;
|
|
114
147
|
}
|
|
115
148
|
};
|
|
@@ -123,46 +156,94 @@ const getTransferNativeInx = async (from, to, amount) => {
|
|
|
123
156
|
};
|
|
124
157
|
exports.getTransferNativeInx = getTransferNativeInx;
|
|
125
158
|
const getTransferNativeTransaction = async (from, to, amount, connection) => {
|
|
159
|
+
console.log('getTransferNativeTransaction: Starting');
|
|
126
160
|
const instruction = await (0, exports.getTransferNativeInx)(from.publicKey, to, amount);
|
|
127
161
|
const transaction = await (0, exports.createV0Transaction)(connection, [instruction], [from], from.publicKey);
|
|
162
|
+
console.log('getTransferNativeTransaction: Completed');
|
|
128
163
|
return transaction;
|
|
129
164
|
};
|
|
130
165
|
exports.getTransferNativeTransaction = getTransferNativeTransaction;
|
|
166
|
+
const getTokenInfo = async (tokenAddress, connection) => {
|
|
167
|
+
let mint;
|
|
168
|
+
try {
|
|
169
|
+
mint = await (0, spl_token_1.getMint)(connection, tokenAddress, "confirmed", spl_token_1.TOKEN_PROGRAM_ID);
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
console.log('error: ', error);
|
|
173
|
+
mint = await (0, spl_token_1.getMint)(connection, tokenAddress, "confirmed", spl_token_1.TOKEN_2022_PROGRAM_ID);
|
|
174
|
+
}
|
|
175
|
+
return {
|
|
176
|
+
address: tokenAddress.toString(),
|
|
177
|
+
decimals: mint.decimals,
|
|
178
|
+
name: "",
|
|
179
|
+
symbol: ""
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
exports.getTokenInfo = getTokenInfo;
|
|
131
183
|
const getTransferTokenInx = async (from, to, token, amount, connection) => {
|
|
132
184
|
const inx = [];
|
|
133
185
|
const tokenToSend = new web3_js_1.PublicKey(token.address);
|
|
186
|
+
console.log('Token to send:', tokenToSend.toString());
|
|
134
187
|
const { ATA: source, programId, tokenAccount } = await (0, exports.getSureAssociatedTokenAddressAndAccount)(connection, from, tokenToSend);
|
|
188
|
+
console.log('Source ATA:', source.toString());
|
|
135
189
|
const { associatedToken: destination, AtaTokenIx } = await (0, exports.createAtaAndIx)(tokenToSend, to, programId, connection);
|
|
190
|
+
console.log('Destination ATA:', destination.toString());
|
|
136
191
|
if (!tokenAccount) {
|
|
192
|
+
console.log('Token account not found, throwing error');
|
|
137
193
|
throw new Error("Token account not found");
|
|
138
194
|
}
|
|
139
195
|
if (AtaTokenIx) {
|
|
196
|
+
console.log('Adding ATA creation instruction');
|
|
140
197
|
inx.push(AtaTokenIx);
|
|
141
198
|
}
|
|
199
|
+
console.log('Creating transfer instruction');
|
|
142
200
|
const tInx = (0, spl_token_1.createTransferCheckedInstruction)(source, tokenToSend, destination, from, amount, token.decimals, undefined, programId);
|
|
143
201
|
inx.push(tInx);
|
|
202
|
+
console.log('getTransferTokenInx: Completed with', inx.length, 'instructions');
|
|
144
203
|
return inx;
|
|
145
204
|
};
|
|
146
205
|
exports.getTransferTokenInx = getTransferTokenInx;
|
|
147
206
|
const getTransferTokenTransaction = async (from, to, token, amount, connection) => {
|
|
207
|
+
console.log('getTransferTokenTransaction: Starting');
|
|
148
208
|
const instruction = await (0, exports.getTransferTokenInx)(from.publicKey, to, token, amount, connection);
|
|
149
209
|
const transaction = await (0, exports.createV0Transaction)(connection, instruction, [from], from.publicKey);
|
|
210
|
+
console.log('getTransferTokenTransaction: Completed');
|
|
150
211
|
return transaction;
|
|
151
212
|
};
|
|
152
213
|
exports.getTransferTokenTransaction = getTransferTokenTransaction;
|
|
153
214
|
const signAndSendTransaction = async (transaction, connection, signers) => {
|
|
215
|
+
console.log('signAndSendTransaction: Starting');
|
|
216
|
+
console.log('Signers count:', signers.length);
|
|
154
217
|
transaction.sign(signers);
|
|
218
|
+
console.log('Transaction signed');
|
|
155
219
|
const blockhash = await connection.getLatestBlockhash();
|
|
156
|
-
|
|
220
|
+
console.log('Got latest blockhash:', blockhash.blockhash);
|
|
221
|
+
console.log('Sending transaction...');
|
|
222
|
+
const res = await (0, transactionSender_1.transactionSenderAndConfirmationWaiter)({
|
|
223
|
+
connection,
|
|
224
|
+
serializedTransaction: Buffer.from(transaction.serialize()),
|
|
225
|
+
blockhashWithExpiryBlockHeight: {
|
|
226
|
+
blockhash: blockhash.blockhash,
|
|
227
|
+
lastValidBlockHeight: blockhash.lastValidBlockHeight
|
|
228
|
+
}
|
|
229
|
+
});
|
|
157
230
|
if (!res) {
|
|
231
|
+
console.log('Transaction failed to send or confirm');
|
|
158
232
|
throw new Error("Transaction failed to send or confirm");
|
|
159
233
|
}
|
|
160
|
-
|
|
234
|
+
const signature = res.transaction.signatures[0];
|
|
235
|
+
console.log('Transaction successful, signature:', signature);
|
|
236
|
+
return signature;
|
|
161
237
|
};
|
|
162
238
|
exports.signAndSendTransaction = signAndSendTransaction;
|
|
163
239
|
//swap
|
|
164
240
|
//you will. use jupiter for this
|
|
165
241
|
const getJupiterQuote = async (inputMint, outputMint, amount, slippageBps = 50) => {
|
|
242
|
+
// console.log('getJupiterQuote: Starting');
|
|
243
|
+
// console.log('Input mint:', inputMint);
|
|
244
|
+
// console.log('Output mint:', outputMint);
|
|
245
|
+
// console.log('Amount:', amount);
|
|
246
|
+
// console.log('Slippage BPS:', slippageBps);
|
|
166
247
|
const params = new URLSearchParams({
|
|
167
248
|
inputMint,
|
|
168
249
|
outputMint,
|
|
@@ -171,15 +252,37 @@ const getJupiterQuote = async (inputMint, outputMint, amount, slippageBps = 50)
|
|
|
171
252
|
onlyDirectRoutes: 'false',
|
|
172
253
|
asLegacyTransaction: 'false'
|
|
173
254
|
});
|
|
174
|
-
const
|
|
255
|
+
const url = `${JUPITER_BASE_URL}/swap/v1/quote?${params}`;
|
|
256
|
+
console.log('Request URL:', url);
|
|
257
|
+
const response = await fetch(url);
|
|
258
|
+
console.log('Response status:', response.status);
|
|
259
|
+
console.log('Response status text:', response.statusText);
|
|
175
260
|
if (!response.ok) {
|
|
176
|
-
|
|
177
|
-
|
|
261
|
+
console.log('Jupiter quote request failed');
|
|
262
|
+
console.log('Status:', response.status);
|
|
263
|
+
console.log('Status Text:', response.statusText);
|
|
264
|
+
console.log('URL:', url);
|
|
265
|
+
try {
|
|
266
|
+
const error = await response.json();
|
|
267
|
+
console.log('Error details:', error);
|
|
268
|
+
}
|
|
269
|
+
catch {
|
|
270
|
+
const textError = await response.text();
|
|
271
|
+
console.log('Error text:', textError);
|
|
272
|
+
}
|
|
273
|
+
throw new Error(`Jupiter quote failed: ${response.statusText}`);
|
|
178
274
|
}
|
|
179
|
-
|
|
275
|
+
const result = await response.json();
|
|
276
|
+
console.log('Jupiter quote successful');
|
|
277
|
+
console.log('Quote result:', result);
|
|
278
|
+
return result;
|
|
180
279
|
};
|
|
181
280
|
exports.getJupiterQuote = getJupiterQuote;
|
|
182
281
|
const buildJupiterSwapTransaction = async (quote, userPublicKey, prioritizationFeeLamports) => {
|
|
282
|
+
console.log('buildJupiterSwapTransaction: Starting');
|
|
283
|
+
console.log('User public key:', userPublicKey);
|
|
284
|
+
const priorityFee = prioritizationFeeLamports || 5000;
|
|
285
|
+
console.log('Prioritization fee:', priorityFee);
|
|
183
286
|
const body = {
|
|
184
287
|
quoteResponse: quote,
|
|
185
288
|
userPublicKey,
|
|
@@ -188,13 +291,14 @@ const buildJupiterSwapTransaction = async (quote, userPublicKey, prioritizationF
|
|
|
188
291
|
feeAccount: undefined,
|
|
189
292
|
trackingAccount: undefined,
|
|
190
293
|
computeUnitPriceMicroLamports: undefined,
|
|
191
|
-
prioritizationFeeLamports:
|
|
294
|
+
prioritizationFeeLamports: priorityFee,
|
|
192
295
|
asLegacyTransaction: false,
|
|
193
296
|
useTokenLedger: false,
|
|
194
297
|
destinationTokenAccount: undefined,
|
|
195
298
|
dynamicComputeUnitLimit: true,
|
|
196
299
|
skipUserAccountsRpcCalls: false
|
|
197
300
|
};
|
|
301
|
+
console.log('Request body:', body);
|
|
198
302
|
const response = await fetch(`${JUPITER_BASE_URL}/swap/v1/swap`, {
|
|
199
303
|
method: 'POST',
|
|
200
304
|
headers: {
|
|
@@ -202,14 +306,35 @@ const buildJupiterSwapTransaction = async (quote, userPublicKey, prioritizationF
|
|
|
202
306
|
},
|
|
203
307
|
body: JSON.stringify(body),
|
|
204
308
|
});
|
|
309
|
+
console.log('Swap transaction build response status:', response.status);
|
|
205
310
|
if (!response.ok) {
|
|
206
|
-
|
|
207
|
-
|
|
311
|
+
console.log('Jupiter swap transaction build failed');
|
|
312
|
+
console.log('Status:', response.status);
|
|
313
|
+
console.log('Status text:', response.statusText);
|
|
314
|
+
try {
|
|
315
|
+
const error = await response.json();
|
|
316
|
+
console.log('Swap build error details:', error);
|
|
317
|
+
throw new Error(`Jupiter swap transaction build failed: ${error.message || response.statusText}`);
|
|
318
|
+
}
|
|
319
|
+
catch (parseError) {
|
|
320
|
+
console.log('Failed to parse error response:', parseError);
|
|
321
|
+
throw new Error(`Jupiter swap transaction build failed: ${response.statusText}`);
|
|
322
|
+
}
|
|
208
323
|
}
|
|
209
|
-
|
|
324
|
+
const result = await response.json();
|
|
325
|
+
console.log('Jupiter swap transaction built successfully');
|
|
326
|
+
return result;
|
|
210
327
|
};
|
|
211
328
|
exports.buildJupiterSwapTransaction = buildJupiterSwapTransaction;
|
|
212
329
|
const executeJupiterSwap = async (swapParams, connection, payer) => {
|
|
330
|
+
console.log('executeJupiterSwap: Starting');
|
|
331
|
+
console.log('Swap params:', {
|
|
332
|
+
fromToken: swapParams.fromToken.toString(),
|
|
333
|
+
toToken: swapParams.toToken.toString(),
|
|
334
|
+
amount: swapParams.amount,
|
|
335
|
+
slippageBps: swapParams.slippageBps,
|
|
336
|
+
userPublicKey: swapParams.userPublicKey.toString()
|
|
337
|
+
});
|
|
213
338
|
try {
|
|
214
339
|
console.log('Getting Jupiter quote...');
|
|
215
340
|
const quote = await (0, exports.getJupiterQuote)(swapParams.fromToken.toString(), swapParams.toToken.toString(), swapParams.amount, swapParams.slippageBps);
|
|
@@ -222,11 +347,15 @@ const executeJupiterSwap = async (swapParams, connection, payer) => {
|
|
|
222
347
|
const swapResponse = await (0, exports.buildJupiterSwapTransaction)(quote, swapParams.userPublicKey.toString());
|
|
223
348
|
console.log('Deserializing transaction...');
|
|
224
349
|
const swapTransactionBuf = Buffer.from(swapResponse.swapTransaction, 'base64');
|
|
350
|
+
console.log('Transaction buffer length:', swapTransactionBuf.length);
|
|
225
351
|
const transaction = web3_js_1.VersionedTransaction.deserialize(swapTransactionBuf);
|
|
352
|
+
console.log('Transaction deserialized successfully');
|
|
226
353
|
console.log('Signing transaction...');
|
|
227
354
|
transaction.sign([payer]);
|
|
355
|
+
console.log('Transaction signed');
|
|
228
356
|
console.log('Sending transaction...');
|
|
229
357
|
const blockhash = await connection.getLatestBlockhash();
|
|
358
|
+
console.log('Got latest blockhash for confirmation');
|
|
230
359
|
const signature = await (0, transactionSender_1.transactionSenderAndConfirmationWaiter)({
|
|
231
360
|
connection,
|
|
232
361
|
serializedTransaction: Buffer.from(transaction.serialize()),
|
|
@@ -235,23 +364,29 @@ const executeJupiterSwap = async (swapParams, connection, payer) => {
|
|
|
235
364
|
lastValidBlockHeight: blockhash.lastValidBlockHeight
|
|
236
365
|
}
|
|
237
366
|
});
|
|
367
|
+
// console.log('signature: ', signature);
|
|
238
368
|
if (!signature) {
|
|
369
|
+
console.log('Transaction failed to confirm');
|
|
239
370
|
return {
|
|
240
371
|
success: false,
|
|
241
372
|
error: 'Transaction failed to confirm'
|
|
242
373
|
};
|
|
243
374
|
}
|
|
244
|
-
|
|
375
|
+
const txSignature = signature.transaction.signatures[0];
|
|
376
|
+
console.log('Swap successful! Signature:', txSignature);
|
|
245
377
|
return {
|
|
246
378
|
success: true,
|
|
247
|
-
hash:
|
|
379
|
+
hash: txSignature,
|
|
248
380
|
inputAmount: quote.inAmount,
|
|
249
381
|
outputAmount: quote.outAmount,
|
|
250
382
|
priceImpact: quote.priceImpactPct
|
|
251
383
|
};
|
|
252
384
|
}
|
|
253
385
|
catch (error) {
|
|
254
|
-
console.
|
|
386
|
+
console.log('Jupiter swap failed with error:', error);
|
|
387
|
+
console.log('Error type:', typeof error);
|
|
388
|
+
console.log('Error message:', error instanceof Error ? error.message : 'Unknown error');
|
|
389
|
+
console.log('Error stack:', error instanceof Error ? error.stack : 'No stack trace');
|
|
255
390
|
return {
|
|
256
391
|
success: false,
|
|
257
392
|
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
@@ -260,44 +395,65 @@ const executeJupiterSwap = async (swapParams, connection, payer) => {
|
|
|
260
395
|
};
|
|
261
396
|
exports.executeJupiterSwap = executeJupiterSwap;
|
|
262
397
|
const uiAmountToBaseUnits = (uiAmount, decimals) => {
|
|
263
|
-
|
|
398
|
+
console.log('uiAmountToBaseUnits: Converting', uiAmount, 'with', decimals, 'decimals');
|
|
399
|
+
const result = Math.floor(uiAmount * Math.pow(10, decimals));
|
|
400
|
+
console.log('Converted to base units:', result);
|
|
401
|
+
return result;
|
|
264
402
|
};
|
|
265
403
|
exports.uiAmountToBaseUnits = uiAmountToBaseUnits;
|
|
266
404
|
const baseUnitsToUiAmount = (baseAmount, decimals) => {
|
|
267
|
-
|
|
405
|
+
console.log('baseUnitsToUiAmount: Converting', baseAmount, 'with', decimals, 'decimals');
|
|
406
|
+
const result = Number(baseAmount) / Math.pow(10, decimals);
|
|
407
|
+
console.log('Converted to UI amount:', result);
|
|
408
|
+
return result;
|
|
268
409
|
};
|
|
269
410
|
exports.baseUnitsToUiAmount = baseUnitsToUiAmount;
|
|
270
411
|
const getJupiterTokenList = async () => {
|
|
412
|
+
console.log('getJupiterTokenList: Fetching token list');
|
|
271
413
|
try {
|
|
272
414
|
const response = await fetch(`${JUPITER_BASE_URL}/tokens/v1/mints/tradable`);
|
|
415
|
+
console.log('Token list response status:', response.status);
|
|
273
416
|
if (!response.ok) {
|
|
417
|
+
console.log('Failed to fetch token list:', response.statusText);
|
|
274
418
|
throw new Error(`Failed to fetch token list: ${response.statusText}`);
|
|
275
419
|
}
|
|
276
|
-
|
|
420
|
+
const result = await response.json();
|
|
421
|
+
console.log('Token list fetched, count:', result.length);
|
|
422
|
+
return result;
|
|
277
423
|
}
|
|
278
424
|
catch (error) {
|
|
279
|
-
console.
|
|
425
|
+
console.log('Failed to fetch Jupiter token list:', error);
|
|
280
426
|
return [];
|
|
281
427
|
}
|
|
282
428
|
};
|
|
283
429
|
exports.getJupiterTokenList = getJupiterTokenList;
|
|
284
430
|
const validateJupiterTokens = async (inputMint, outputMint) => {
|
|
431
|
+
console.log('validateJupiterTokens: Starting validation');
|
|
432
|
+
console.log('Input mint:', inputMint);
|
|
433
|
+
console.log('Output mint:', outputMint);
|
|
285
434
|
try {
|
|
286
435
|
const tokenList = await (0, exports.getJupiterTokenList)();
|
|
287
436
|
const inputSupported = tokenList.includes(inputMint);
|
|
288
437
|
const outputSupported = tokenList.includes(outputMint);
|
|
438
|
+
console.log('Input token supported:', inputSupported);
|
|
439
|
+
console.log('Output token supported:', outputSupported);
|
|
289
440
|
if (!inputSupported && !outputSupported) {
|
|
441
|
+
console.log('Both tokens not supported');
|
|
290
442
|
return { valid: false, message: 'Both input and output tokens are not supported' };
|
|
291
443
|
}
|
|
292
444
|
if (!inputSupported) {
|
|
445
|
+
console.log('Input token not supported');
|
|
293
446
|
return { valid: false, message: 'Input token is not supported' };
|
|
294
447
|
}
|
|
295
448
|
if (!outputSupported) {
|
|
449
|
+
console.log('Output token not supported');
|
|
296
450
|
return { valid: false, message: 'Output token is not supported' };
|
|
297
451
|
}
|
|
452
|
+
console.log('Both tokens are supported');
|
|
298
453
|
return { valid: true };
|
|
299
454
|
}
|
|
300
455
|
catch (error) {
|
|
456
|
+
console.log('Token validation failed:', error);
|
|
301
457
|
return { valid: false, message: 'Failed to validate tokens' };
|
|
302
458
|
}
|
|
303
459
|
};
|
package/dist/svm/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../utils/svm/utils.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAE/C,iDAA6P;AAC7P,6CAAoK;AAEpK,2DAA6E;AAC7E,iCAA2B;AAE3B,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAuD5C,MAAM,mBAAmB,GAAG,KAAK,EACpC,UAAsB,EACtB,GAA6B,EAC7B,OAAkB,EAClB,WAAsB,EACtB,SAAkB,EACpB,EAAE;IACA,MAAM,SAAS,GACX,SAAS,IAAI,CAAC,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAC,SAAS,CAAC;IACnE,MAAM,OAAO,GAAG,IAAI,4BAAkB,CAAC;QACnC,QAAQ,EAAE,WAAW;QACrB,YAAY,EAAE,GAAG;QACjB,eAAe,EAAE,SAAS;KAC7B,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAExB,MAAM,WAAW,GAAG,IAAI,8BAAoB,CAAC,OAAO,CAAC,CAAC;IACtD,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC;IACtC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,WAAW,CAAC;AACvB,CAAC,CAAC;AAtBW,QAAA,mBAAmB,uBAsB9B;AAEK,MAAM,cAAc,GAAG,KAAK,EAC/B,KAAgB,EAChB,cAAyB,EACzB,cAAyB,EACzB,UAAsB,EACxB,EAAE;IACA,IAAI,UAAU,CAAC;IACf,MAAM,eAAe,GAAG,IAAA,yCAA6B,EACjD,KAAK,EACL,cAAc,EACd,KAAK,EACL,cAAc,CACjB,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IACtE,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,UAAU,GAAG,IAAA,6DAAiD,EAC1D,cAAc,EACd,eAAe,EACf,cAAc,EACd,KAAK,EACL,cAAc,CACjB,CAAC;IACN,CAAC;IACD,OAAO;QACH,UAAU;QACV,eAAe;KAClB,CAAC;AACN,CAAC,CAAC;AA5BW,QAAA,cAAc,kBA4BzB;AACK,MAAM,uCAAuC,GAAG,KAAK,EACxD,UAAsB,EACtB,KAAgB,EAChB,KAAgB,EAClB,EAAE;IACA,IAAI,GAAc,CAAC;IACnB,IAAI,SAAoB,CAAC;IACzB,IAAI,YAAqB,CAAC;IAC1B,IAAI,CAAC;QACD,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,uBAAW,CAAC;YACjC,CAAC,CAAC,4BAAgB;YAClB,CAAC,CAAC,iCAAqB,CAAC;QAC5B,GAAG,GAAG,IAAA,yCAA6B,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACnE,YAAY,GAAG,MAAM,IAAA,sBAAU,EAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACzE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,SAAS,GAAG,4BAAgB,CAAC;QAC7B,GAAG,GAAG,IAAA,yCAA6B,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACnE,YAAY,GAAG,MAAM,IAAA,sBAAU,EAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACzE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAC5C,CAAC;AACL,CAAC,CAAC;AArBW,QAAA,uCAAuC,2CAqBlD;AAEK,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAgB,EAAE,KAAgB,EAAE,UAAsB,EAAE,EAAE;IACpG,IAAI,KAAK,CAAC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC;QAC5B,OAAO,4BAAgB,CAAC;IAC5B,CAAC;IACD,IAAI,GAAc,CAAC;IACnB,IAAI,SAAS,GAAc,4BAAgB,CAAA;IAC3C,IAAI,YAAqB,CAAC;IAC1B,IAAI,CAAC;QACD,GAAG,GAAG,IAAA,yCAA6B,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACnE,YAAY,GAAG,MAAM,IAAA,sBAAU,EAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACzE,OAAO,4BAAgB,CAAA;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,iCAAqB,CAAC;IAEjC,CAAC;AAIL,CAAC,CAAA;AAlBY,QAAA,mBAAmB,uBAkB/B;AACD,oBAAoB;AAEb,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAkB,EAAE,UAAsB,EAAG,EAAE;IACrF,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,EAAE,OAAO,EAAE,IAAI,UAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,OAAO,GAAG,0BAAgB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAC3F,CAAC,CAAC;AAHW,QAAA,mBAAmB,uBAG9B;AAEK,MAAM,eAAe,GAAG,KAAK,EAAE,OAAkB,EAAE,KAAgB,EAAE,UAAsB,EAAE,EAAE;IAElG,IAAI,CAAC;QACD,yCAAyC;QACzC,MAAM,YAAY,GAAG,MAAM,IAAA,8BAAsB,EAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9E,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACzC,OAAO,CAAC,CAAC;QACb,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,sBAAsB,CACxD,YAAY,CAAC,OAAO,CACvB,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACzC,OAAO,CAAC,CAAC;QACb,CAAC;QAED,OAAO,YAAY,CAAC,KAAK,CAAC;IAE9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,CAAC;IACb,CAAC;AACL,CAAC,CAAA;AAvBY,QAAA,eAAe,mBAuB3B;AAEM,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAgB,EAAE,OAAkB,EAAE,UAAsB,EAA2B,EAAE;IAClI,IAAI,CAAC;QAED,2EAA2E;QAC3E,MAAM,sBAAsB,GAAG,MAAM,IAAA,qCAAyB,EAC1D,KAAK,EAAE,yBAAyB;QAChC,OAAO,CAAC,wBAAwB;SACnC,CAAC;QACF,sCAAsC;QACtC,MAAM,YAAY,GAAG,MAAM,IAAA,sBAAU,EACjC,UAAU,EACV,sBAAsB,CACzB,CAAC;QAEF,OAAO,YAAY,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC,CAAC;AAnBW,QAAA,sBAAsB,0BAmBjC;AAEK,MAAM,oBAAoB,GAAG,KAAK,EAAE,IAAe,EAAE,EAAa,EAAE,MAAc,EAAmC,EAAE;IAC1H,OAAO,uBAAa,CAAC,QAAQ,CAAC;QAC1B,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,MAAM,GAAG,0BAAgB,EAAE,0BAA0B;KAClE,CAAC,CAAA;AACN,CAAC,CAAA;AANY,QAAA,oBAAoB,wBAMhC;AAEM,MAAM,4BAA4B,GAAG,KAAK,EAAE,IAAa,EAAE,EAAa,EAAE,MAAc,EAAE,UAAsB,EAAE,EAAE;IACvH,MAAM,WAAW,GAAG,MAAM,IAAA,4BAAoB,EAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAmB,EAAC,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjG,OAAO,WAAW,CAAC;AACvB,CAAC,CAAA;AAJY,QAAA,4BAA4B,gCAIxC;AAEM,MAAM,mBAAmB,GAAG,KAAK,EAAE,IAAe,EAAE,EAAa,EAAE,KAAgB,EAAE,MAAc,EAAE,UAAsB,EAAqC,EAAE;IACrK,MAAM,GAAG,GAA6B,EAAE,CAAA;IAExC,MAAM,WAAW,GAAG,IAAI,mBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,MAAM,IAAA,+CAAuC,EAAC,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAC9H,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,sBAAc,EAAC,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAElH,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,4CAAgC,EAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;IACnI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEf,OAAO,GAAG,CAAC;AAEf,CAAC,CAAA;AAlBY,QAAA,mBAAmB,uBAkB/B;AACM,MAAM,2BAA2B,GAAG,KAAK,EAAE,IAAa,EAAE,EAAa,EAAE,KAAgB,EAAE,MAAc,EAAE,UAAsB,EAAiC,EAAE;IACvK,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAmB,EAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7F,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAmB,EAAC,UAAU,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/F,OAAO,WAAW,CAAC;AACvB,CAAC,CAAA;AAJY,QAAA,2BAA2B,+BAIvC;AACM,MAAM,sBAAsB,GAAG,KAAK,EAAE,WAAiC,EAAE,UAAsB,EAAE,OAAkB,EAAE,EAAE;IAC1H,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACzB,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAA;IACvD,MAAM,GAAG,GAAG,MAAM,IAAA,0DAAsC,EAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,EAAE,8BAA8B,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,oBAAoB,EAAE,SAAS,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAA;IAC/P,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAEzC,CAAC,CAAA;AATY,QAAA,sBAAsB,0BASlC;AAID,MAAM;AACN,gCAAgC;AAEzB,MAAM,eAAe,GAAG,KAAK,EAChC,SAAiB,EACjB,UAAkB,EAClB,MAAc,EACd,cAAsB,EAAE,EACK,EAAE;IAC/B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QAC/B,SAAS;QACT,UAAU;QACV,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;QACzB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;QACnC,gBAAgB,EAAE,OAAO;QACzB,mBAAmB,EAAE,OAAO;KAC/B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,gBAAgB,kBAAkB,MAAM,EAAE,CAAC,CAAC;IAE5E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC;AAvBW,QAAA,eAAe,mBAuB1B;AAEK,MAAM,2BAA2B,GAAG,KAAK,EAC5C,KAA2B,EAC3B,aAAqB,EACrB,yBAAkC,EACN,EAAE;IAC9B,MAAM,IAAI,GAAG;QACT,aAAa,EAAE,KAAK;QACpB,aAAa;QACb,gBAAgB,EAAE,IAAI;QACtB,iBAAiB,EAAE,IAAI;QACvB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,SAAS;QAC1B,6BAA6B,EAAE,SAAS;QACxC,yBAAyB,EAAE,yBAAyB,IAAI,IAAI;QAC5D,mBAAmB,EAAE,KAAK;QAC1B,cAAc,EAAE,KAAK;QACrB,uBAAuB,EAAE,SAAS;QAClC,uBAAuB,EAAE,IAAI;QAC7B,wBAAwB,EAAE,KAAK;KAClC,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,gBAAgB,eAAe,EAAE;QAC7D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACL,cAAc,EAAE,kBAAkB;SACrC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC7B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACtG,CAAC;IAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC;AAnCW,QAAA,2BAA2B,+BAmCtC;AAEK,MAAM,kBAAkB,GAAG,KAAK,EACnC,UAAsB,EACtB,UAAsB,EACtB,KAAc,EACK,EAAE;IACrB,IAAI,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,IAAA,uBAAe,EAC/B,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,EAC/B,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,EAC7B,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,WAAW,CACzB,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAC3B,WAAW,EAAE,KAAK,CAAC,QAAQ;YAC3B,YAAY,EAAE,KAAK,CAAC,SAAS;YAC7B,WAAW,EAAE,KAAK,CAAC,cAAc;SACpC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,IAAA,mCAA2B,EAClD,KAAK,EACL,UAAU,CAAC,aAAa,CAAC,QAAQ,EAAE,CACtC,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,8BAAoB,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAEzE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAE1B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC;QACxD,MAAM,SAAS,GAAG,MAAM,IAAA,0DAAsC,EAAC;YAC3D,UAAU;YACV,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC3D,8BAA8B,EAAE;gBAC5B,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,oBAAoB,EAAE,SAAS,CAAC,oBAAoB;aACvD;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,+BAA+B;aACzC,CAAC;QACN,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhF,OAAO;YACH,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;YACzC,WAAW,EAAE,KAAK,CAAC,QAAQ;YAC3B,YAAY,EAAE,KAAK,CAAC,SAAS;YAC7B,WAAW,EAAE,KAAK,CAAC,cAAc;SACpC,CAAC;IAEN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAC7C,OAAO;YACH,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;SAC3E,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AApEW,QAAA,kBAAkB,sBAoE7B;AAEK,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAE,QAAgB,EAAU,EAAE;IAC9E,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAEK,MAAM,mBAAmB,GAAG,CAAC,UAA2B,EAAE,QAAgB,EAAU,EAAE;IACzF,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAEK,MAAM,mBAAmB,GAAG,KAAK,IAAoB,EAAE;IAC1D,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,gBAAgB,2BAA2B,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC,CAAC;AAXW,QAAA,mBAAmB,uBAW9B;AAEK,MAAM,qBAAqB,GAAG,KAAK,EACtC,SAAiB,EACjB,UAAkB,EAC2B,EAAE;IAC/C,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAmB,GAAE,CAAC;QAC9C,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEvD,IAAI,CAAC,cAAc,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;QACtE,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;IAClE,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,qBAAqB,yBAuBhC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../utils/svm/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/test.d.ts
ADDED
package/dist/test.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.testUserKeyPair = void 0;
|
|
7
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
8
|
+
const bs58_1 = __importDefault(require("bs58"));
|
|
9
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
10
|
+
const bip32_1 = require("./bip32");
|
|
11
|
+
const svm_1 = require("./svm");
|
|
12
|
+
const vm_1 = require("./vm");
|
|
13
|
+
const mnemonic = (0, bip32_1.GenerateNewMnemonic)();
|
|
14
|
+
console.log('mnemonic: ', mnemonic);
|
|
15
|
+
const seed = vm_1.VM.mnemonicToSeed(mnemonic);
|
|
16
|
+
const pKey = "4QxETeX9pndiF1XNghUiDTnZnHq3cfjmuPLBJysrgocsLq1yb8w96aPWALa8ZnRZWmDU4wM8Tg8d1ZRVVByj7uXE";
|
|
17
|
+
exports.testUserKeyPair = web3_js_1.Keypair.fromSecretKey(bs58_1.default.decode(pKey));
|
|
18
|
+
const vm = new svm_1.SVMVM(seed);
|
|
19
|
+
// const vmFromMnemonic = SVMVM.fromMnemonic(mnemonic)
|
|
20
|
+
// const keyFromMnemonic = vmFromMnemonic.generatePrivateKey(0)
|
|
21
|
+
// console.log('keyFromMnemonic: ', keyFromMnemonic.privateKey.publicKey);
|
|
22
|
+
const key = vm.generatePrivateKey(0);
|
|
23
|
+
console.log('key: ', key.privateKey.publicKey);
|
|
24
|
+
const chainConfig = {
|
|
25
|
+
chainId: "solana-mainnet",
|
|
26
|
+
name: "Solana",
|
|
27
|
+
rpcUrl: "https://solana-mainnet.g.alchemy.com/v2/vB5mKztdJeFdz9RkW99Qf",
|
|
28
|
+
explorerUrl: "https://explorer.solana.com",
|
|
29
|
+
nativeToken: { name: "Solana", symbol: "SOL", decimals: 9 },
|
|
30
|
+
confirmationNo: 1,
|
|
31
|
+
};
|
|
32
|
+
const wallet = new svm_1.SVMChainWallet(chainConfig, exports.testUserKeyPair, key.index);
|
|
33
|
+
const toBuy = new web3_js_1.PublicKey("9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump");
|
|
34
|
+
wallet.swap({
|
|
35
|
+
name: spl_token_1.NATIVE_MINT.toBase58(),
|
|
36
|
+
address: spl_token_1.NATIVE_MINT.toBase58(),
|
|
37
|
+
symbol: spl_token_1.NATIVE_MINT.toBase58(),
|
|
38
|
+
decimals: 9
|
|
39
|
+
}, toBuy, 0.005).then(res => console.log(res));
|
|
40
|
+
// console.log('wal: ', wal.address);
|
|
41
|
+
// wal.getNativeBalance().then(e => console.log(e))
|
|
42
|
+
//# sourceMappingURL=test.js.map
|
package/dist/test.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../utils/test.ts"],"names":[],"mappings":";;;;;;AAEA,6CAAqD;AACrD,gDAA0B;AAC1B,iDAAgD;AAChD,mCAA8C;AAC9C,+BAA8C;AAC9C,6BAA0B;AAE1B,MAAM,QAAQ,GAAG,IAAA,2BAAmB,GAAE,CAAA;AAGtC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AAEpC,MAAM,IAAI,GAAG,OAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;AACxC,MAAM,IAAI,GAAG,0FAA0F,CAAA;AAE1F,QAAA,eAAe,GAAG,iBAAO,CAAC,aAAa,CAAC,cAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1E,MAAM,EAAE,GAAG,IAAI,WAAK,CAAC,IAAI,CAAC,CAAA;AAC1B,sDAAsD;AACtD,+DAA+D;AAC/D,0EAA0E;AAC1E,MAAM,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAA;AACpC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAsB;IACnC,OAAO,EAAE,gBAAgB;IACzB,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,+DAA+D;IACvE,WAAW,EAAE,6BAA6B;IAC1C,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE;IAC3D,cAAc,EAAE,CAAC;CAEpB,CAAA;AAGD,MAAM,MAAM,GAAG,IAAI,oBAAc,CAAC,WAAW,EAAE,uBAAe,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;AAC1E,MAAM,KAAK,GAAG,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAA;AAC3E,MAAM,CAAC,IAAI,CAAC;IACR,IAAI,EAAE,uBAAW,CAAC,QAAQ,EAAE;IAC5B,OAAO,EAAE,uBAAW,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,uBAAW,CAAC,QAAQ,EAAE;IAC9B,QAAQ,EAAE,CAAC;CACd,EAAE,KAAK,EAAE,KAAK,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAG/C,qCAAqC;AACrC,mDAAmD"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../utils/types.ts"],"names":[],"mappings":";;;AACA,+BAA8B;AAC9B,+BAA8B;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../utils/types.ts"],"names":[],"mappings":";;;AACA,+BAA8B;AAC9B,+BAA8B;AA+CjB,QAAA,YAAY,GAAG;IACxB,KAAK,EAAE,WAAK;IACZ,KAAK,EAAE,WAAK;CACN,CAAC"}
|
package/dist/vm.d.ts
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
|
-
import { vmTypes } from "./types";
|
|
1
|
+
import { TokenInfo, vmTypes } from "./types";
|
|
2
2
|
export declare abstract class VM<AddressType, PrivateKeyType, ConnectionType> {
|
|
3
3
|
protected seed: string;
|
|
4
4
|
type: vmTypes;
|
|
5
5
|
constructor(seed: string, vm: vmTypes);
|
|
6
6
|
static mnemonicToSeed: (mnemonic: string) => string;
|
|
7
|
+
static generateSalt(): string;
|
|
8
|
+
static deriveKey(password: string, salt: string, iterations?: number, keySize?: number): string;
|
|
9
|
+
static encryptSeedPhrase(seedPhrase: string, password: string): {
|
|
10
|
+
encrypted: string;
|
|
11
|
+
salt: string;
|
|
12
|
+
};
|
|
13
|
+
static decryptSeedPhrase(encryptedSeedPhrase: string, password: string, salt: string): string | null;
|
|
14
|
+
generateSalt: typeof VM.generateSalt;
|
|
15
|
+
deriveKey: typeof VM.deriveKey;
|
|
16
|
+
encryptSeedPhrase: typeof VM.encryptSeedPhrase;
|
|
17
|
+
decryptSeedPhrase: typeof VM.decryptSeedPhrase;
|
|
7
18
|
abstract derivationPath: string;
|
|
8
19
|
abstract generatePrivateKey(index: number, mnemonic?: string, derivationPath?: string): {
|
|
9
20
|
privateKey: PrivateKeyType;
|
|
10
21
|
index: number;
|
|
11
22
|
};
|
|
23
|
+
abstract getTokenInfo(tokenAddress: AddressType, connection: ConnectionType): Promise<TokenInfo>;
|
|
12
24
|
}
|