@hawksightco/hawk-sdk 1.2.67 → 1.2.68
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/src/classes/Transactions.d.ts.map +1 -1
- package/dist/src/classes/Transactions.js +16 -2
- package/dist/src/ixGenerator/RaydiumIxGenerator.d.ts +2 -2
- package/dist/src/ixGenerator/RaydiumIxGenerator.d.ts.map +1 -1
- package/dist/src/ixGenerator/RaydiumIxGenerator.js +13 -13
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transactions.d.ts","sourceRoot":"","sources":["../../../src/classes/Transactions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAoBxC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,eAAe,EACf,+BAA+B,EAC/B,kCAAkC,EAClC,cAAc,EACd,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAGR,WAAW,EACX,6BAA6B,EAC7B,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,2BAA2B,EAC3B,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAEpB,gBAAgB,EAChB,+BAA+B,EAChC,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Transactions.d.ts","sourceRoot":"","sources":["../../../src/classes/Transactions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAoBxC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,eAAe,EACf,+BAA+B,EAC/B,kCAAkC,EAClC,cAAc,EACd,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAGR,WAAW,EACX,6BAA6B,EAC7B,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,2BAA2B,EAC3B,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAEpB,gBAAgB,EAChB,+BAA+B,EAChC,MAAM,UAAU,CAAC;AA4BlB,OAAO,EAEL,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,UAAU,CAAC;AAKlB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAcxD,qBAAa,YAAY;IACvB;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAe;IAEtC;;OAEG;IACI,EAAE,EAAE,iBAAiB,CAAC;IAE7B;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,YAAY;IAOlC;;;;;;OAMG;IACH,eAAe,CACb,UAAU,EAAE,IAAI,CAAC,SAAS,EAC1B,IAAI,GAAE,IAAI,CAAC,SAAqB,GAC/B,IAAI,CAAC,SAAS;IAIjB;;;;;;;OAOG;IACG,QAAQ,CAAC,EACb,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAwD/D;;;;;;OAMG;IACG,8BAA8B,CAAC,EACnC,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,6BAA6B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAmDpF;;;;;;;OAOG;IACG,+BAA+B,CAAC,EACpC,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,+BAA+B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAqCtF;;;;;;;OAOG;IACG,kCAAkC,CAAC,EACvC,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,kCAAkC,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAmCzF;;;;;;;OAOG;IACG,0BAA0B,CAAC,EAC/B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAwBjF;;;;;;;OAOG;IACG,cAAc,CAAC,EACnB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAgDrE;;;;;;;OAOG;IACG,eAAe,CAAC,EACpB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAgEtE;;;;;;;OAOG;IACG,kBAAkB,CAAC,EACvB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAqEtE;;;;;;;OAOG;IACG,YAAY,CAAC,EACjB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAkCnE;;;;;;;OAOG;IACG,eAAe,CACnB,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,eAAe,CAAC,EACpD,KAAK,EAAE,IAAI,CAAC,SAAS,EACrB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,gBAAgB,CAAC;IA6C5B;;;;;;;OAOG;IACG,oBAAoB,CAAC,EACzB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4BnE;;;;;;OAMG;IACG,iBAAiB,CAAC,EACtB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4DxE;;;;;;OAMG;IACG,kBAAkB,CAAC,EACvB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAwCnE,oBAAoB,CAAC,EACzB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,eAAe,CAAC;IAoEzB,iBAAiB,CAAC,EACtB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,eAAe,CAAC;IAmDzB,qBAAqB,CAAC,EAC1B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,gBAAgB,CAAC;IAkF1B,sBAAsB,CAAC,EAC3B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,iBAAiB,CAAC;IA0F3B,gBAAgB,CAAC,EACrB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,gBAAgB,CAAC;IA0C1B,iBAAiB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,YAAY,CAAC;IA8CnE,sBAAsB,CAAC,EAC3B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,2BAA2B,CAAC;IA+M3C,OAAO,CAAC,0BAA0B;IAiClC;;;;;;;OAOG;IACG,gBAAgB,CAAC,EACrB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAyDvE;;;;;;;OAOG;IACG,iBAAiB,CAAC,EACtB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA2DxE;;;;;;;OAOG;IACG,WAAW,CAAC,EAChB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAuKlE;;;;;;;OAOG;IACG,cAAc,CAAC,EACnB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAiKlE;;;;;;;OAOG;IACG,aAAa,CAAC,EAClB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA0LpE;;;;;;;OAOG;IACG,YAAY,CAAC,EACjB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA0GnE;;;;;;;OAOG;IACG,eAAe,CAAC,EACpB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAmOnE;;;;;;;OAOG;IACG,gBAAgB,CAAC,EACrB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA8IvE;;;;;;OAMG;IACG,mBAAmB,CAAC,EACxB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA4G1E;;;;;;;OAOG;IACG,+BAA+B,CAAC,EACpC,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,+BAA+B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAyGtF;;;;;;OAMG;IACG,oBAAoB,CAAC,EACzB,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAuB3E;;;;;;OAMG;IACG,wBAAwB,CAAC,EAC7B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAwE/E;;;;;;OAMG;IACG,wBAAwB,CAAC,EAC7B,UAAU,EACV,MAAM,GACP,EAAE,WAAW,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;CA+DhF;AAED,eAAO,MAAM,KAAK,cAA6B,CAAC"}
|
|
@@ -2132,6 +2132,12 @@ class Transactions {
|
|
|
2132
2132
|
*/
|
|
2133
2133
|
raydiumOpenPosition(_a) {
|
|
2134
2134
|
return __awaiter(this, arguments, void 0, function* ({ connection, params, }) {
|
|
2135
|
+
// // Load the Raydium SDK
|
|
2136
|
+
// await load(connection)
|
|
2137
|
+
// // Get the Raydium SDK instance
|
|
2138
|
+
// const sdk = raydium();
|
|
2139
|
+
// const poolKeys = await sdk.clmm.getClmmPoolKeys(params.poolState.toString());
|
|
2140
|
+
// console.log("poolKeys", poolKeys);
|
|
2135
2141
|
const fetch = yield this.ix.raydium.raydiumFetch({
|
|
2136
2142
|
poolState: params.poolState,
|
|
2137
2143
|
});
|
|
@@ -2149,7 +2155,7 @@ class Transactions {
|
|
|
2149
2155
|
toPubkey: userPdaLamport,
|
|
2150
2156
|
lamports,
|
|
2151
2157
|
});
|
|
2152
|
-
const { liquidity, amount0Max: amountX, amount1Max: amountY, } = yield (0, RaydiumIxGenerator_1.getLiquidityFromAmounts)(connection, params.poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage);
|
|
2158
|
+
const { liquidity, amount0Max: amountX, amount1Max: amountY, } = yield (0, RaydiumIxGenerator_1.getLiquidityFromAmounts)(connection, params.poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage, true);
|
|
2153
2159
|
const wrapIxs = (0, functions_1.wrapSolIfMintIsWsol)(params.userWallet, params.userWallet, [
|
|
2154
2160
|
{ mint: tokenMint0, amount: amountX },
|
|
2155
2161
|
{ mint: tokenMint1, amount: amountY },
|
|
@@ -2239,6 +2245,13 @@ class Transactions {
|
|
|
2239
2245
|
const mint = v;
|
|
2240
2246
|
return (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(payer, associatedToken, nftOwner, mint);
|
|
2241
2247
|
});
|
|
2248
|
+
// NOTE: Temporary fix, to be removed once main-iyf PR is merged
|
|
2249
|
+
const initUserAtaIxs = mints.map(v => {
|
|
2250
|
+
const payer = params.userWallet;
|
|
2251
|
+
const associatedToken = (0, functions_1.generateAta)(payer, v);
|
|
2252
|
+
const mint = v;
|
|
2253
|
+
return (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(payer, associatedToken, payer, mint);
|
|
2254
|
+
});
|
|
2242
2255
|
const unwrapSolIx = (0, functions_1.unwrapSolIfMintIsWsol)(params.userWallet, [
|
|
2243
2256
|
fetch.poolStateInfo.tokenMint0,
|
|
2244
2257
|
fetch.poolStateInfo.tokenMint1
|
|
@@ -2273,6 +2286,7 @@ class Transactions {
|
|
|
2273
2286
|
else {
|
|
2274
2287
|
const mainInstructions = [
|
|
2275
2288
|
...initAtaIxs,
|
|
2289
|
+
...initUserAtaIxs,
|
|
2276
2290
|
raydiumDecreaseLiquidityIxViaHawksight,
|
|
2277
2291
|
raydiumClosePositionIxViaHawksight,
|
|
2278
2292
|
withdrawLamportsFromPdaIx,
|
|
@@ -2331,7 +2345,7 @@ class Transactions {
|
|
|
2331
2345
|
});
|
|
2332
2346
|
const tokenMint0 = fetch.poolStateInfo.tokenMint0;
|
|
2333
2347
|
const tokenMint1 = fetch.poolStateInfo.tokenMint1;
|
|
2334
|
-
const { liquidity, amount0Max: amountX, amount1Max: amountY, } = yield (0, RaydiumIxGenerator_1.getLiquidityFromAmounts)(connection, fetch.positionInfo.poolId, params.amountX, params.amountY, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage);
|
|
2348
|
+
const { liquidity, amount0Max: amountX, amount1Max: amountY, } = yield (0, RaydiumIxGenerator_1.getLiquidityFromAmounts)(connection, fetch.positionInfo.poolId, params.amountX, params.amountY, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage, true);
|
|
2335
2349
|
const wrapIxs = (0, functions_1.wrapSolIfMintIsWsol)(params.userWallet, params.userWallet, [
|
|
2336
2350
|
{ mint: tokenMint0, amount: amountX },
|
|
2337
2351
|
{ mint: tokenMint1, amount: amountY },
|
|
@@ -113,12 +113,12 @@ export declare class RaydiumIxGenerator {
|
|
|
113
113
|
*/
|
|
114
114
|
raydiumSweepDust({ connection, params, fetch }: TxgenParams<RaydiumSweepDust, RaydiumFetch>): Promise<web3.TransactionInstruction>;
|
|
115
115
|
}
|
|
116
|
-
export declare function getLiquidityFromAmounts(connection: web3.Connection, poolId: web3.PublicKey, amountA: BN, amountB: BN, tickLower: number, tickUpper: number, slippage: number): Promise<{
|
|
116
|
+
export declare function getLiquidityFromAmounts(connection: web3.Connection, poolId: web3.PublicKey, amountA: BN, amountB: BN, tickLower: number, tickUpper: number, slippage: number, add: boolean): Promise<{
|
|
117
117
|
liquidity: BN;
|
|
118
118
|
amount0Max: BN;
|
|
119
119
|
amount1Max: BN;
|
|
120
120
|
}>;
|
|
121
|
-
export declare function getAmountsFromLiquidity(connection: web3.Connection, poolId: web3.PublicKey, liquidity: BN, tickLower: number, tickUpper: number, slippage: number): Promise<{
|
|
121
|
+
export declare function getAmountsFromLiquidity(connection: web3.Connection, poolId: web3.PublicKey, liquidity: BN, tickLower: number, tickUpper: number, slippage: number, add: boolean): Promise<{
|
|
122
122
|
amount0Min: BN;
|
|
123
123
|
amount1Min: BN;
|
|
124
124
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RaydiumIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/RaydiumIxGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RaydiumIxGenerator.d.ts","sourceRoot":"","sources":["../../../src/ixGenerator/RaydiumIxGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -97,7 +97,7 @@ class RaydiumIxGenerator {
|
|
|
97
97
|
const tickArrayUpperStartIndex = (0, functions_1.raydiumStartTickIndex)(params.tickUpperIndex, fetch.poolStateInfo.tickSpacing);
|
|
98
98
|
const tickArrayLower = this.pda.raydium.generateRaydiumTickArrayPda(poolState, tickArrayLowerStartIndex);
|
|
99
99
|
const tickArrayUpper = this.pda.raydium.generateRaydiumTickArrayPda(poolState, tickArrayUpperStartIndex);
|
|
100
|
-
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage);
|
|
100
|
+
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage, true);
|
|
101
101
|
console.log("liquidity", amount0Max.toString());
|
|
102
102
|
console.log("amount0Max", amount0Max.toString());
|
|
103
103
|
console.log("amount1Max", amount1Max.toString());
|
|
@@ -148,7 +148,7 @@ class RaydiumIxGenerator {
|
|
|
148
148
|
const vault1Mint = fetch.poolStateInfo.tokenMint1;
|
|
149
149
|
const tokenVault0 = fetch.poolStateInfo.tokenVault0;
|
|
150
150
|
const tokenVault1 = fetch.poolStateInfo.tokenVault1;
|
|
151
|
-
const { liquidity, amount0Max, amount1Max } = yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage);
|
|
151
|
+
const { liquidity, amount0Max, amount1Max } = yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, params.tickLowerIndex, params.tickUpperIndex, params.slippage, true);
|
|
152
152
|
return yield this.iyfExtension.raydiumOpenPositionAutomation({
|
|
153
153
|
connection,
|
|
154
154
|
userWallet: params.userWallet,
|
|
@@ -243,7 +243,7 @@ class RaydiumIxGenerator {
|
|
|
243
243
|
const tokenAccount1 = (0, functions_1.generateAta)(nftOwner, vault1Mint);
|
|
244
244
|
const tickArrayLower = this.pda.raydium.generateRaydiumTickArrayPda(poolState, tickArrayLowerStartIndex);
|
|
245
245
|
const tickArrayUpper = this.pda.raydium.generateRaydiumTickArrayPda(poolState, tickArrayUpperStartIndex);
|
|
246
|
-
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, tickLowerIndex, tickUpperIndex, params.slippage);
|
|
246
|
+
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, tickLowerIndex, tickUpperIndex, params.slippage, true);
|
|
247
247
|
const raydiumIx = yield anchor_1.Anchor.instance().raydiumProgram.methods
|
|
248
248
|
.increaseLiquidityV2(liquidity, amount0Max, amount1Max, false)
|
|
249
249
|
.accounts({
|
|
@@ -288,7 +288,7 @@ class RaydiumIxGenerator {
|
|
|
288
288
|
const tokenVault1 = fetch.poolStateInfo.tokenVault1;
|
|
289
289
|
const tickLowerIndex = fetch.positionInfo.tickLowerIndex;
|
|
290
290
|
const tickUpperIndex = fetch.positionInfo.tickUpperIndex;
|
|
291
|
-
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, tickLowerIndex, tickUpperIndex, params.slippage);
|
|
291
|
+
const { liquidity, amount0Max, amount1Max } = params.getLiquidityFromAmounts ? params.getLiquidityFromAmounts : yield getLiquidityFromAmounts(connection, poolState, params.amountX, params.amountY, tickLowerIndex, tickUpperIndex, params.slippage, true);
|
|
292
292
|
return yield this.iyfExtension.raydiumIncreaseLiquidityAutomation({
|
|
293
293
|
connection,
|
|
294
294
|
userWallet: params.userWallet,
|
|
@@ -323,7 +323,7 @@ class RaydiumIxGenerator {
|
|
|
323
323
|
const vault1Mint = fetch.poolStateInfo.tokenMint1;
|
|
324
324
|
const tokenVault0 = fetch.poolStateInfo.tokenVault0;
|
|
325
325
|
const tokenVault1 = fetch.poolStateInfo.tokenVault1;
|
|
326
|
-
const { amount0Min, amount1Min } = yield getAmountsFromLiquidity(connection, fetch.positionInfo.poolId, fetch.positionInfo.liquidity, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage);
|
|
326
|
+
const { amount0Min, amount1Min } = yield getAmountsFromLiquidity(connection, fetch.positionInfo.poolId, fetch.positionInfo.liquidity, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage, false);
|
|
327
327
|
return yield this.iyfExtension.raydiumDecreaseLiquidity({
|
|
328
328
|
connection,
|
|
329
329
|
liquidity: params.liquidity,
|
|
@@ -360,7 +360,7 @@ class RaydiumIxGenerator {
|
|
|
360
360
|
const vault1Mint = fetch.poolStateInfo.tokenMint1;
|
|
361
361
|
const tokenVault0 = fetch.poolStateInfo.tokenVault0;
|
|
362
362
|
const tokenVault1 = fetch.poolStateInfo.tokenVault1;
|
|
363
|
-
const { amount0Min, amount1Min } = yield getAmountsFromLiquidity(connection, fetch.positionInfo.poolId, fetch.positionInfo.liquidity, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage);
|
|
363
|
+
const { amount0Min, amount1Min } = yield getAmountsFromLiquidity(connection, fetch.positionInfo.poolId, fetch.positionInfo.liquidity, fetch.positionInfo.tickLowerIndex, fetch.positionInfo.tickUpperIndex, params.slippage, false);
|
|
364
364
|
return yield this.iyfExtension.raydiumDecreaseLiquidityAutomation({
|
|
365
365
|
connection,
|
|
366
366
|
liquidity: params.liquidity,
|
|
@@ -425,7 +425,7 @@ class RaydiumIxGenerator {
|
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
427
|
exports.RaydiumIxGenerator = RaydiumIxGenerator;
|
|
428
|
-
function getLiquidityFromAmounts(connection, poolId, amountA, amountB, tickLower, tickUpper, slippage) {
|
|
428
|
+
function getLiquidityFromAmounts(connection, poolId, amountA, amountB, tickLower, tickUpper, slippage, add) {
|
|
429
429
|
return __awaiter(this, void 0, void 0, function* () {
|
|
430
430
|
// Load the Raydium SDK
|
|
431
431
|
yield (0, RaydiumSDK_1.load)(connection);
|
|
@@ -445,8 +445,8 @@ function getLiquidityFromAmounts(connection, poolId, amountA, amountB, tickLower
|
|
|
445
445
|
let epochInfo = yield connection.getEpochInfo();
|
|
446
446
|
// Benchmark the getEpochInfo function (end)
|
|
447
447
|
(0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `getEpochInfo`, end: true });
|
|
448
|
-
// Benchmark the
|
|
449
|
-
(0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `
|
|
448
|
+
// Benchmark the getLiquidityFromAmounts function
|
|
449
|
+
(0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `getLiquidityFromAmounts` });
|
|
450
450
|
const { liquidity, amountSlippageA, amountSlippageB, amountA: _amountA, amountB: _amountB, } = (0, raydium_sdk_v2_1.getLiquidityFromAmounts)({
|
|
451
451
|
poolInfo,
|
|
452
452
|
tickLower,
|
|
@@ -458,8 +458,8 @@ function getLiquidityFromAmounts(connection, poolId, amountA, amountB, tickLower
|
|
|
458
458
|
epochInfo,
|
|
459
459
|
amountHasFee: false,
|
|
460
460
|
});
|
|
461
|
-
// Benchmark the
|
|
462
|
-
(0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `
|
|
461
|
+
// Benchmark the getLiquidityFromAmounts function (end)
|
|
462
|
+
(0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `getLiquidityFromAmounts`, end: true });
|
|
463
463
|
console.log("amountSlippageA", amountSlippageA.amount.toString());
|
|
464
464
|
console.log("amountSlippageB", amountSlippageB.amount.toString());
|
|
465
465
|
console.log("amountA", _amountA.amount.toString());
|
|
@@ -472,7 +472,7 @@ function getLiquidityFromAmounts(connection, poolId, amountA, amountB, tickLower
|
|
|
472
472
|
});
|
|
473
473
|
}
|
|
474
474
|
exports.getLiquidityFromAmounts = getLiquidityFromAmounts;
|
|
475
|
-
function getAmountsFromLiquidity(connection, poolId, liquidity, tickLower, tickUpper, slippage) {
|
|
475
|
+
function getAmountsFromLiquidity(connection, poolId, liquidity, tickLower, tickUpper, slippage, add) {
|
|
476
476
|
return __awaiter(this, void 0, void 0, function* () {
|
|
477
477
|
// Load the Raydium SDK
|
|
478
478
|
yield (0, RaydiumSDK_1.load)(connection);
|
|
@@ -500,7 +500,7 @@ function getAmountsFromLiquidity(connection, poolId, liquidity, tickLower, tickU
|
|
|
500
500
|
tickUpper,
|
|
501
501
|
liquidity,
|
|
502
502
|
slippage,
|
|
503
|
-
add
|
|
503
|
+
add,
|
|
504
504
|
});
|
|
505
505
|
// Benchmark the getAmountsFromLiquidity function (end)
|
|
506
506
|
(0, functions_1.benchmark)({ name: `getAmountsFromLiquidity`, msg: `getAmountsFromLiquidity`, end: true });
|