@hawksightco/hawk-sdk 1.2.66 → 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.
@@ -169,7 +169,10 @@ export declare class Transaction {
169
169
  * @param connection - The connection to the Solana cluster.
170
170
  * @returns A new transaction metadata with the candidate user alt injected.
171
171
  */
172
- injectCandidateUserAlt(connection: web3.Connection): Promise<TransactionMetadata>;
172
+ injectCandidateUserAlt(connection: web3.Connection): Promise<{
173
+ metadata: TransactionMetadata;
174
+ withUserAlt: boolean;
175
+ }>;
173
176
  /**
174
177
  * Generate a new transaction metadata with a user alt injected.
175
178
  *
@@ -201,7 +204,7 @@ export declare class Transaction {
201
204
  * @param payer - The payer of the transaction.
202
205
  * @returns A new address lookup table.
203
206
  */
204
- createAddressLookupTable(connection: web3.Connection, payer: web3.PublicKey): Promise<[TransactionMetadata | null, web3.PublicKey | null]>;
207
+ createAddressLookupTable(connection: web3.Connection, payer: web3.PublicKey): Promise<[TransactionMetadata, web3.PublicKey]>;
205
208
  private pubkeysNotInAlt;
206
209
  /**
207
210
  * List all unique pubkeys in the instructions
@@ -1 +1 @@
1
- {"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../../src/classes/Transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../../src/classes/Transaction.ts"],"names":[],"mappings":"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"}
@@ -407,12 +407,29 @@ class Transaction {
407
407
  rank.push(p.length);
408
408
  }
409
409
  if (rank.length === 0) {
410
- return yield (0, functions_1.createTxMetadata)(this.generalUtility, connection, this.payerKey.toString(), this.txMetadataResponse);
410
+ // If no user alts are found, return the original transaction metadata
411
+ console.log(`No user alts found, returning original transaction metadata`);
412
+ return {
413
+ metadata: yield (0, functions_1.createTxMetadata)(this.generalUtility, connection, this.payerKey.toString(), this.txMetadataResponse),
414
+ withUserAlt: false,
415
+ };
411
416
  }
412
417
  const highetsRank = Math.max(...rank);
413
418
  const highestRankIndex = rank.indexOf(highetsRank);
414
419
  const highestRankAlt = userAlts[highestRankIndex];
415
- return yield this.injectUserAlt(connection, highestRankAlt.key);
420
+ // Generate tx metadata with user alt injected
421
+ const metadata = yield this.injectUserAlt(connection, highestRankAlt.key);
422
+ // Serialize the transaction
423
+ const serializedTxn = metadata.transaction.versionedTransaction.serialize();
424
+ // And check if it is within the max tx size
425
+ const withinSizeLimit = serializedTxn.length < this.MAX_TX_SIZE;
426
+ // Log result
427
+ console.log(`Size limit: ${this.MAX_TX_SIZE}, Transaction size: ${serializedTxn.length}, Within size limit: ${withinSizeLimit}`);
428
+ // Return result
429
+ return {
430
+ metadata,
431
+ withUserAlt: withinSizeLimit,
432
+ };
416
433
  });
417
434
  }
418
435
  /**
@@ -503,63 +520,63 @@ class Transaction {
503
520
  // }
504
521
  const pubkeys = this.listPubkeys();
505
522
  const pubkeysNotInAlt = this.pubkeysNotInAlt(pubkeys);
506
- if (pubkeysNotInAlt.length > 0) {
507
- const userAlts = yield (0, functions_1.findUserAlts)(this.payerKey, connection);
508
- let table, lookupTable, createAltIx, extendAltIx;
509
- console.log(`userAlts:`, userAlts.map(alt => alt.key.toString()));
510
- for (const alt of userAlts) {
511
- if (alt.state.addresses.length < (256 - pubkeysNotInAlt.length)) {
512
- lookupTable = alt.key;
513
- table = alt;
514
- break;
515
- }
516
- }
517
- if (lookupTable) {
518
- const addresses = this._pubkeysNotInAlt(pubkeysNotInAlt, table).map(pubkey => new web3.PublicKey(pubkey));
519
- console.log(`addresses:`, addresses.map(address => address.toString()));
520
- if (addresses.length > 0) {
521
- extendAltIx = web3.AddressLookupTableProgram.extendLookupTable({
522
- lookupTable,
523
- authority: payer,
524
- payer,
525
- addresses,
526
- });
527
- }
523
+ const userAlts = yield (0, functions_1.findUserAlts)(this.payerKey, connection);
524
+ let table, lookupTable, createAltIx, extendAltIx;
525
+ console.log(`userAlts:`, userAlts.map(alt => alt.key.toString()));
526
+ // Find candidate alt to extend
527
+ for (const alt of userAlts) {
528
+ if (alt.state.addresses.length < (256 - pubkeysNotInAlt.length)) {
529
+ lookupTable = alt.key;
530
+ table = alt;
531
+ break;
528
532
  }
529
- else {
530
- [createAltIx, lookupTable] = web3.AddressLookupTableProgram.createLookupTable({
531
- authority: payer,
532
- payer,
533
- recentSlot: yield connection.getSlot(),
534
- });
533
+ }
534
+ // If candidate alt is found, extend it
535
+ if (lookupTable) {
536
+ const addresses = this._pubkeysNotInAlt(pubkeysNotInAlt, table).map(pubkey => new web3.PublicKey(pubkey));
537
+ console.log(`addresses:`, addresses.map(address => address.toString()));
538
+ if (addresses.length > 0) {
535
539
  extendAltIx = web3.AddressLookupTableProgram.extendLookupTable({
536
540
  lookupTable,
537
541
  authority: payer,
538
542
  payer,
539
- addresses: pubkeysNotInAlt.map(pubkey => new web3.PublicKey(pubkey)),
543
+ addresses,
540
544
  });
541
545
  }
542
- const mainInstructions = [];
543
- if (createAltIx) {
544
- mainInstructions.push(createAltIx);
545
- }
546
- if (extendAltIx) {
547
- mainInstructions.push(extendAltIx);
548
- }
549
- const meta = yield (0, functions_1.createTransactionMeta)({
550
- payer: this.payerKey,
551
- description: this.txMetadataResponse.description,
552
- addressLookupTableAddresses: [],
553
- mainInstructions,
554
- });
555
- return [
556
- yield (0, functions_1.createTxMetadata)(this.generalUtility, connection, this.payerKey.toString(), meta),
557
- lookupTable
558
- ];
559
546
  }
560
547
  else {
561
- return [null, null];
548
+ // If no candidate alt is found, create a new alt
549
+ [createAltIx, lookupTable] = web3.AddressLookupTableProgram.createLookupTable({
550
+ authority: payer,
551
+ payer,
552
+ recentSlot: yield connection.getSlot(),
553
+ });
554
+ extendAltIx = web3.AddressLookupTableProgram.extendLookupTable({
555
+ lookupTable,
556
+ authority: payer,
557
+ payer,
558
+ addresses: pubkeysNotInAlt.map(pubkey => new web3.PublicKey(pubkey)),
559
+ });
560
+ }
561
+ const mainInstructions = [];
562
+ if (createAltIx) {
563
+ mainInstructions.push(createAltIx);
564
+ }
565
+ if (extendAltIx) {
566
+ mainInstructions.push(extendAltIx);
562
567
  }
568
+ // Create transaction metadata
569
+ const meta = yield (0, functions_1.createTransactionMeta)({
570
+ payer: this.payerKey,
571
+ description: "Create / Extend address lookup table",
572
+ addressLookupTableAddresses: [],
573
+ mainInstructions,
574
+ });
575
+ // Return transaction metadata and lookup table
576
+ return [
577
+ yield (0, functions_1.createTxMetadata)(this.generalUtility, connection, this.payerKey.toString(), meta),
578
+ lookupTable
579
+ ];
563
580
  });
564
581
  }
565
582
  pubkeysNotInAlt(pubkeys) {
@@ -1 +1 @@
1
- {"version":3,"file":"Transactions.d.ts","sourceRoot":"","sources":["../../../src/classes/Transactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Transactions.d.ts","sourceRoot":"","sources":["../../../src/classes/Transactions.ts"],"names":[],"mappings":"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"}
@@ -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 getAmountsFromLiquidity function
449
- (0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `getAmountsFromLiquidity` });
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 getAmountsFromLiquidity function (end)
462
- (0, functions_1.benchmark)({ name: `getLiquidityFromAmounts`, msg: `getAmountsFromLiquidity`, end: true });
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: true,
503
+ add,
504
504
  });
505
505
  // Benchmark the getAmountsFromLiquidity function (end)
506
506
  (0, functions_1.benchmark)({ name: `getAmountsFromLiquidity`, msg: `getAmountsFromLiquidity`, end: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hawksightco/hawk-sdk",
3
- "version": "1.2.66",
3
+ "version": "1.2.68",
4
4
  "description": "Hawksight v2 SDK",
5
5
  "main": "dist/src/index.js",
6
6
  "repository": "https://github.com/ghabxph/hawk-api-client.git",