rubic-sdk 5.50.5-alpha.solana.28 → 5.50.5-alpha.solana.29
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/lib/core/blockchain/web3-private-service/web3-private/solana-web3-private/solana-web3-private.js +11 -23
- package/lib/core/blockchain/web3-private-service/web3-private/solana-web3-private/solana-web3-private.js.map +1 -1
- package/lib/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.d.ts +2 -1
- package/lib/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.js +7 -4
- package/lib/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.js.map +1 -1
- package/package.json +1 -1
@@ -1,11 +1,7 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
-
};
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
3
|
exports.SolanaWeb3Private = void 0;
|
7
4
|
const web3_js_1 = require("@solana/web3.js");
|
8
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
9
5
|
const utils_1 = require("ethers/lib/utils");
|
10
6
|
const blockchain_name_1 = require("../../../models/blockchain-name");
|
11
7
|
const evm_web3_private_1 = require("../evm-web3-private/evm-web3-private");
|
@@ -27,30 +23,22 @@ class SolanaWeb3Private extends web3_private_1.Web3Private {
|
|
27
23
|
const { blockhash } = await web3Public.getRecentBlockhash();
|
28
24
|
const avgGas = await injector_1.Injector.web3PublicService
|
29
25
|
.getWeb3Public('SOLANA')
|
30
|
-
.
|
31
|
-
.catch(() => new bignumber_js_1.default(0));
|
26
|
+
.getLastComputeUnits();
|
32
27
|
// tx.message.recentBlockhash = blockhash;
|
33
|
-
|
34
|
-
|
28
|
+
// Create the priority fee instructions
|
29
|
+
const computeUnitLimit = avgGas.multipliedBy(1.2).toNumber();
|
30
|
+
const computePriceIx = web3_js_1.ComputeBudgetProgram.setComputeUnitPrice({
|
31
|
+
microLamports: 1
|
35
32
|
});
|
33
|
+
const computeLimitIx = web3_js_1.ComputeBudgetProgram.setComputeUnitLimit({
|
34
|
+
units: computeUnitLimit
|
35
|
+
});
|
36
|
+
// ComputeBudgetProgram.setComputeUnitLimit({});
|
37
|
+
// ComputeBudgetProgram.setComputeUnitPrice({});
|
36
38
|
txMessage.recentBlockhash = blockhash;
|
37
|
-
txMessage.instructions.push(
|
39
|
+
txMessage.instructions.push(computePriceIx, computeLimitIx);
|
38
40
|
const msgWithGas = txMessage.compileToV0Message();
|
39
41
|
const txWithGas = new web3_js_1.VersionedTransaction(msgWithGas);
|
40
|
-
// const dummyInstruction = new TransactionInstruction({
|
41
|
-
// keys: [],
|
42
|
-
// programId: new PublicKey('11111111111111111111111111111111'), // Replace with your program ID
|
43
|
-
// data: decodedData // Replace with your instruction data
|
44
|
-
// });
|
45
|
-
// const instructions = [priorityFeeInstruction, dummyInstruction];
|
46
|
-
// tx.message.compiledInstructions = [priorityFeeInstruction];
|
47
|
-
// const transaction = new Transaction().add(
|
48
|
-
// SystemProgram.transfer({
|
49
|
-
// fromPubkey: from.publicKey,
|
50
|
-
// toPubkey: to.publicKey,
|
51
|
-
// lamports: web3.LAMPORTS_PER_SOL / 100 //0.01 SOL
|
52
|
-
// })
|
53
|
-
// );
|
54
42
|
const { signature } = await this.solanaWeb3.signAndSendTransaction(txWithGas);
|
55
43
|
options.onTransactionHash?.(signature);
|
56
44
|
return signature;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"solana-web3-private.js","sourceRoot":"","sources":["../../../../../../src/core/blockchain/web3-private-service/web3-private/solana-web3-private/solana-web3-private.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"solana-web3-private.js","sourceRoot":"","sources":["../../../../../../src/core/blockchain/web3-private-service/web3-private/solana-web3-private/solana-web3-private.ts"],"names":[],"mappings":";;;AAAA,6CAAiG;AACjG,4CAA0C;AAC1C,gFAA6F;AAC7F,8HAAyH;AAGzH,qGAAiG;AACjG,sHAAiH;AACjH,yDAAsD;AAGtD,MAAa,iBAAkB,SAAQ,0BAAW;IAGvC,KAAK,CAAC,iBAAiB;QAC1B,OAAO,iCAAe,CAAC,MAAM,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,UAAoC,EAAE;QAC/D,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,mBAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,iCAAe,CAAC,MAAM,CAAC,CAAC;YACpF,MAAM,WAAW,GAAG,OAAO,CAAC,IAAK,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC9C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;gBAC5C,CAAC,CAAC,cAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAK,CAAC,CAAC;YAEnC,MAAM,EAAE,GAAG,8BAAoB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,SAAS,GAAG,4BAAkB,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAE3D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,mBAAQ,CAAC,iBAAiB;iBAC1C,aAAa,CAAC,QAAQ,CAAC;iBACvB,mBAAmB,EAAE,CAAC;YAC3B,0CAA0C;YAE1C,uCAAuC;YACvC,MAAM,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC7D,MAAM,cAAc,GAAG,8BAAoB,CAAC,mBAAmB,CAAC;gBAC5D,aAAa,EAAE,CAAC;aACnB,CAAC,CAAC;YACH,MAAM,cAAc,GAAG,8BAAoB,CAAC,mBAAmB,CAAC;gBAC5D,KAAK,EAAE,gBAAgB;aAC1B,CAAC,CAAC;YACH,gDAAgD;YAChD,gDAAgD;YAChD,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC;YACtC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAE5D,MAAM,UAAU,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,IAAI,8BAAoB,CAAC,UAAU,CAAC,CAAC;YAEvD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YAC9E,OAAO,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,CAAC;YAEvC,OAAO,SAAS,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;YAChD,MAAM,iCAAc,CAAC,UAAU,CAAC,GAAgB,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED,YAA6B,UAAsB;QAC/C,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QADrB,eAAU,GAAV,UAAU,CAAY;QAhDhC,aAAQ,GAAG,iCAAc,CAAC;IAkD7C,CAAC;CACJ;AApDD,8CAoDC"}
|
@@ -13,8 +13,9 @@ import { AbiItem } from 'web3-utils';
|
|
13
13
|
*/
|
14
14
|
export declare class SolanaWeb3Public extends Web3Public {
|
15
15
|
private readonly connection;
|
16
|
+
private readonly MAX_TRANSFER_COST;
|
16
17
|
constructor(connection: Connection);
|
17
|
-
|
18
|
+
getLastComputeUnits(): Promise<BigNumber>;
|
18
19
|
getBlockNumber(): Promise<number>;
|
19
20
|
multicallContractsMethods<Output extends Web3PrimitiveType>(_contractAbi: AbiItem[], _contractsData: {
|
20
21
|
contractAddress: string;
|
package/lib/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.js
CHANGED
@@ -23,17 +23,20 @@ class SolanaWeb3Public extends web3_public_1.Web3Public {
|
|
23
23
|
constructor(connection) {
|
24
24
|
super(blockchain_name_1.BLOCKCHAIN_NAME.SOLANA);
|
25
25
|
this.connection = connection;
|
26
|
+
this.MAX_TRANSFER_COST = 10000;
|
26
27
|
}
|
27
|
-
|
28
|
+
/* like gasLimit in evm */
|
29
|
+
async getLastComputeUnits() {
|
28
30
|
const latestSlot = await this.connection.getSlot();
|
29
31
|
const block = await this.connection.getParsedBlock(latestSlot, {
|
30
32
|
transactionDetails: 'full',
|
31
33
|
maxSupportedTransactionVersion: 0
|
32
34
|
});
|
33
|
-
console.log('%cLAST_BLOCK ===> ', 'color: pink; fonr-size: 20px;', block);
|
34
35
|
const txCountInLastBlock = block.transactions.length;
|
35
|
-
const
|
36
|
-
const
|
36
|
+
const onlyDeFiSwaps = block.transactions.filter(tx => Number(tx.meta?.computeUnitsConsumed) > this.MAX_TRANSFER_COST);
|
37
|
+
const totalGasForSwaps = onlyDeFiSwaps.reduce((acc, tx) => acc + Number(tx.meta?.computeUnitsConsumed), 0);
|
38
|
+
const avgGas = new bignumber_js_1.default(totalGasForSwaps).dividedBy(txCountInLastBlock);
|
39
|
+
console.log('%cLAST_BLOCK ===> ', 'color: pink; font-size: 20px;', { block, avgGas });
|
37
40
|
return avgGas;
|
38
41
|
}
|
39
42
|
getBlockNumber() {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"solana-web3-public.js","sourceRoot":"","sources":["../../../../../../src/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.ts"],"names":[],"mappings":";;;;;;AAAA,iDAI2B;AAC3B,6CAAwF;AACxF,gEAAqC;AACrC,+BAA0E;AAC1E,6EAA6E;AAC7E,gHAA6G;AAC7G,gFAA6E;AAM7E,oGAG8E;AAC9E,iGAA6F;AAC7F,sHAAiH;AAGjH,4EAAuE;
|
1
|
+
{"version":3,"file":"solana-web3-public.js","sourceRoot":"","sources":["../../../../../../src/core/blockchain/web3-public-service/web3-public/solana-web3-public/solana-web3-public.ts"],"names":[],"mappings":"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"}
|