@gearbox-protocol/sdk 14.12.0-next.7 → 14.12.0-next.9

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.
Files changed (180) hide show
  1. package/dist/cjs/dev/AccountOpener.js +7 -13
  2. package/dist/cjs/history/classifyMulticallOperations.js +2 -0
  3. package/dist/cjs/history/mapOperations.js +7 -0
  4. package/dist/cjs/plugins/adapters/abi/iConvexV1BoosterAdapter.js +143 -0
  5. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  6. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  7. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +66 -0
  8. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +19 -0
  9. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +15 -0
  10. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +20 -0
  11. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +18 -0
  12. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +28 -2
  13. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  14. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  15. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  16. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  17. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  18. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  19. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +14 -0
  20. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +15 -0
  21. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +14 -0
  22. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +15 -0
  23. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +21 -0
  24. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +10 -0
  25. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +11 -0
  26. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +15 -0
  27. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +15 -0
  28. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +11 -0
  29. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +10 -0
  30. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +12 -0
  31. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +58 -0
  32. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +11 -0
  33. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +22 -1
  34. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +17 -0
  35. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +10 -0
  36. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  37. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  38. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +15 -0
  39. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +14 -0
  40. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +10 -0
  41. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +15 -0
  42. package/dist/cjs/preview/parse/classifyInnerOperations.js +14 -1
  43. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +3 -8
  44. package/dist/cjs/preview/preview/errors.js +16 -0
  45. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +56 -25
  46. package/dist/cjs/preview/preview/{extractExpectedBalanceChanges.js → unwrapNativeCollateral.js} +20 -23
  47. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +3 -4
  48. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  49. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  50. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  51. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  52. package/dist/cjs/sdk/router/helpers.js +0 -5
  53. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  54. package/dist/cjs/sdk/utils/AssetsMap.js +61 -0
  55. package/dist/cjs/sdk/utils/index.js +2 -0
  56. package/dist/esm/dev/AccountOpener.js +8 -13
  57. package/dist/esm/history/classifyMulticallOperations.js +2 -0
  58. package/dist/esm/history/mapOperations.js +7 -0
  59. package/dist/esm/plugins/adapters/abi/iConvexV1BoosterAdapter.js +119 -0
  60. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  61. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +36 -0
  62. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +42 -0
  63. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +22 -1
  64. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +18 -1
  65. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +23 -1
  66. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +22 -1
  67. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +30 -2
  68. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  69. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  70. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  71. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  72. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  73. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  74. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +17 -1
  75. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +19 -1
  76. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +17 -1
  77. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +18 -1
  78. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +24 -1
  79. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +13 -1
  80. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +14 -1
  81. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +18 -1
  82. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +18 -1
  83. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +14 -1
  84. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +13 -1
  85. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +15 -1
  86. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +61 -1
  87. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +14 -1
  88. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +25 -2
  89. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +20 -1
  90. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +13 -1
  91. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  92. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  93. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +18 -1
  94. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +17 -1
  95. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +13 -1
  96. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +18 -1
  97. package/dist/esm/preview/parse/classifyInnerOperations.js +14 -1
  98. package/dist/esm/preview/prerequisites/buildPrerequisites.js +4 -8
  99. package/dist/esm/preview/preview/errors.js +15 -0
  100. package/dist/esm/preview/preview/previewOpenCreditAccount.js +59 -26
  101. package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -0
  102. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +4 -5
  103. package/dist/esm/sdk/base/BaseContract.js +4 -2
  104. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  105. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  106. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  107. package/dist/esm/sdk/router/helpers.js +0 -4
  108. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  109. package/dist/esm/sdk/utils/AssetsMap.js +37 -0
  110. package/dist/esm/sdk/utils/index.js +1 -0
  111. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  112. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  113. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  114. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  115. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  116. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  117. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  118. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  119. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  120. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  121. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  122. package/dist/types/plugins/adapters/abi/iConvexV1BoosterAdapter.d.ts +204 -0
  123. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  124. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +21 -3
  125. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +18 -0
  126. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +4 -2
  127. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +4 -2
  128. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +4 -2
  129. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +4 -2
  130. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +8 -6
  131. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +3 -6
  132. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +3 -6
  133. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +3 -6
  134. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  135. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +3 -6
  136. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +3 -6
  137. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +4 -2
  138. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +4 -2
  139. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +4 -2
  140. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +4 -2
  141. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +4 -2
  142. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +4 -2
  143. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +4 -2
  144. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +4 -2
  145. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +4 -2
  146. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +4 -2
  147. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +4 -2
  148. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +4 -2
  149. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +4 -2
  150. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +4 -2
  151. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +15 -3
  152. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +4 -2
  153. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +4 -2
  154. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -1
  155. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -1
  156. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +4 -2
  157. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +4 -2
  158. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +4 -2
  159. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +4 -2
  160. package/dist/types/plugins/adapters/types.d.ts +10 -0
  161. package/dist/types/preview/parse/types-adapters.d.ts +5 -1
  162. package/dist/types/preview/parse/types-facades.d.ts +23 -1
  163. package/dist/types/preview/preview/errors.d.ts +12 -0
  164. package/dist/types/preview/preview/types.d.ts +9 -1
  165. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +20 -0
  166. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -1
  167. package/dist/types/sdk/accounts/types.d.ts +2 -2
  168. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  169. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  170. package/dist/types/sdk/base/types.d.ts +18 -0
  171. package/dist/types/sdk/pools/types.d.ts +1 -1
  172. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  173. package/dist/types/sdk/router/helpers.d.ts +1 -2
  174. package/dist/types/sdk/router/types.d.ts +1 -15
  175. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  176. package/dist/types/sdk/utils/AssetsMap.d.ts +26 -0
  177. package/dist/types/sdk/utils/index.d.ts +1 -0
  178. package/package.json +1 -1
  179. package/dist/esm/preview/preview/extractExpectedBalanceChanges.js +0 -24
  180. package/dist/types/preview/preview/extractExpectedBalanceChanges.d.ts +0 -21
@@ -381,7 +381,7 @@ class AccountOpener extends import_sdk.SDKConstruct {
381
381
  }
382
382
  async #depositIntoPools(targets) {
383
383
  this.#logger?.debug("checking and topping up pools if necessary");
384
- const minAvailableByPool = {};
384
+ const minAvailableByPool = new import_sdk.AssetsMap();
385
385
  for (let i = 0; i < targets.length; i++) {
386
386
  const t = targets[i];
387
387
  const leverage = this.#getLeverage(t);
@@ -389,14 +389,14 @@ class AccountOpener extends import_sdk.SDKConstruct {
389
389
  const minDebt = this.#minDebtMultiplier * cm.creditFacade.minDebt / import_sdk.PERCENTAGE_FACTOR;
390
390
  let amount = minDebt * (leverage - import_sdk.PERCENTAGE_FACTOR) / import_sdk.PERCENTAGE_FACTOR * this.#poolDepositMultiplier / import_sdk.PERCENTAGE_FACTOR;
391
391
  amount = amount > cm.creditFacade.maxDebt ? cm.creditFacade.maxDebt : amount;
392
- minAvailableByPool[cm.pool] = (minAvailableByPool[cm.pool] ?? 0n) + amount;
392
+ minAvailableByPool.inc(cm.pool, amount);
393
393
  this.#logger?.debug(
394
394
  `target #${i + 1} (${this.labelAddress(t.target)}) needs ${this.sdk.tokensMeta.formatBN(cm.underlying, amount, { symbol: true })} in pool (leverage: ${Number(leverage / import_sdk.PERCENTAGE_FACTOR)}%)`
395
395
  );
396
396
  }
397
397
  const deposits = [];
398
- const claims = new import_sdk.AddressMap();
399
- for (const [p, minAvailable] of Object.entries(minAvailableByPool)) {
398
+ const claims = new import_sdk.AssetsMap();
399
+ for (const [p, minAvailable] of minAvailableByPool.entries()) {
400
400
  const market = this.sdk.marketRegister.findByPool(p);
401
401
  const pool = market.pool.pool;
402
402
  let diff = minAvailable - pool.availableLiquidity;
@@ -413,9 +413,7 @@ class AccountOpener extends import_sdk.SDKConstruct {
413
413
  );
414
414
  if (diff > 0n) {
415
415
  deposits.push([pool, diff]);
416
- let claim = claims.get(pool.underlying) ?? 0n;
417
- claim += diff * import_sdk.PERCENTAGE_FACTOR / 8950n;
418
- claims.upsert(pool.underlying, claim);
416
+ claims.inc(pool.underlying, diff * import_sdk.PERCENTAGE_FACTOR / 8950n);
419
417
  }
420
418
  }
421
419
  const depositor = await this.#getDepositor();
@@ -572,18 +570,14 @@ class AccountOpener extends import_sdk.SDKConstruct {
572
570
  async #prepareBorrower(targets) {
573
571
  const borrower = await this.#getBorrower();
574
572
  const degenNFTS = {};
575
- const claims = new import_sdk.AddressMap();
573
+ const claims = new import_sdk.AssetsMap();
576
574
  for (const target of targets) {
577
575
  const cm = this.sdk.marketRegister.findCreditManager(
578
576
  target.creditManager
579
577
  );
580
- const market = this.sdk.marketRegister.findByCreditManager(
581
- target.creditManager
582
- );
583
578
  const { degenNFT } = cm.creditFacade;
584
579
  const minDebt = this.#minDebtMultiplier * cm.creditFacade.minDebt / import_sdk.PERCENTAGE_FACTOR;
585
- const claim = claims.get(cm.underlying) ?? 0n;
586
- claims.upsert(cm.underlying, claim + minDebt * 11n / 10n);
580
+ claims.inc(cm.underlying, minDebt * 11n / 10n);
587
581
  if ((0, import_viem.isAddress)(degenNFT) && degenNFT !== import_sdk.ADDRESS_0X0) {
588
582
  degenNFTS[degenNFT] = (degenNFTS[degenNFT] ?? 0) + 1;
589
583
  }
@@ -60,6 +60,7 @@ function classifyMulticallOperations(input) {
60
60
  label: call.label,
61
61
  adapterFunctionName: call.functionName,
62
62
  adapterArgs: call.rawArgs,
63
+ calldata: call.calldata,
63
64
  protocol,
64
65
  transfers: transfers2,
65
66
  legacy
@@ -95,6 +96,7 @@ function classifyMulticallOperations(input) {
95
96
  label: call.label,
96
97
  adapterFunctionName: call.functionName,
97
98
  adapterArgs: call.rawArgs,
99
+ calldata: call.calldata,
98
100
  // Unknown adapter (non-strict): we have no ABI to decode the protocol
99
101
  // call, so `protocol` is left absent rather than filled with placeholders.
100
102
  protocol: void 0,
@@ -35,6 +35,13 @@ function mapInnerOperation(op, visitor, ctx) {
35
35
  return visitor.WithdrawCollateral(op, ctx);
36
36
  case "UpdateQuota":
37
37
  return visitor.UpdateQuota(op, ctx);
38
+ // The history classifier never emits other InnerOperation variants
39
+ // (e.g. StoreExpectedBalances/CompareBalances, which it drops), so this
40
+ // guards against silently returning undefined if that ever changes.
41
+ default:
42
+ throw new Error(
43
+ `unexpected inner operation: ${op.operation}`
44
+ );
38
45
  }
39
46
  }
40
47
  function mapOuterOperation(op, visitor) {
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var iConvexV1BoosterAdapter_exports = {};
20
+ __export(iConvexV1BoosterAdapter_exports, {
21
+ iConvexV1BoosterAdapterAbi: () => iConvexV1BoosterAdapterAbi
22
+ });
23
+ module.exports = __toCommonJS(iConvexV1BoosterAdapter_exports);
24
+ const iConvexV1BoosterAdapterAbi = [
25
+ {
26
+ type: "function",
27
+ inputs: [],
28
+ name: "contractType",
29
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }],
30
+ stateMutability: "view"
31
+ },
32
+ {
33
+ type: "function",
34
+ inputs: [],
35
+ name: "creditManager",
36
+ outputs: [{ name: "", internalType: "address", type: "address" }],
37
+ stateMutability: "view"
38
+ },
39
+ {
40
+ type: "function",
41
+ inputs: [
42
+ { name: "_pid", internalType: "uint256", type: "uint256" },
43
+ { name: "", internalType: "uint256", type: "uint256" },
44
+ { name: "_stake", internalType: "bool", type: "bool" }
45
+ ],
46
+ name: "deposit",
47
+ outputs: [{ name: "useSafePrices", internalType: "bool", type: "bool" }],
48
+ stateMutability: "nonpayable"
49
+ },
50
+ {
51
+ type: "function",
52
+ inputs: [
53
+ { name: "_pid", internalType: "uint256", type: "uint256" },
54
+ { name: "leftoverAmount", internalType: "uint256", type: "uint256" },
55
+ { name: "_stake", internalType: "bool", type: "bool" }
56
+ ],
57
+ name: "depositDiff",
58
+ outputs: [{ name: "useSafePrices", internalType: "bool", type: "bool" }],
59
+ stateMutability: "nonpayable"
60
+ },
61
+ {
62
+ type: "function",
63
+ inputs: [{ name: "", internalType: "uint256", type: "uint256" }],
64
+ name: "pidToConvexToken",
65
+ outputs: [{ name: "", internalType: "address", type: "address" }],
66
+ stateMutability: "view"
67
+ },
68
+ {
69
+ type: "function",
70
+ inputs: [{ name: "", internalType: "uint256", type: "uint256" }],
71
+ name: "pidToCurveToken",
72
+ outputs: [{ name: "", internalType: "address", type: "address" }],
73
+ stateMutability: "view"
74
+ },
75
+ {
76
+ type: "function",
77
+ inputs: [{ name: "", internalType: "uint256", type: "uint256" }],
78
+ name: "pidToPhantomToken",
79
+ outputs: [{ name: "", internalType: "address", type: "address" }],
80
+ stateMutability: "view"
81
+ },
82
+ {
83
+ type: "function",
84
+ inputs: [],
85
+ name: "serialize",
86
+ outputs: [{ name: "serializedData", internalType: "bytes", type: "bytes" }],
87
+ stateMutability: "view"
88
+ },
89
+ {
90
+ type: "function",
91
+ inputs: [],
92
+ name: "targetContract",
93
+ outputs: [{ name: "", internalType: "address", type: "address" }],
94
+ stateMutability: "view"
95
+ },
96
+ {
97
+ type: "function",
98
+ inputs: [],
99
+ name: "updateSupportedPids",
100
+ outputs: [],
101
+ stateMutability: "nonpayable"
102
+ },
103
+ {
104
+ type: "function",
105
+ inputs: [],
106
+ name: "version",
107
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
108
+ stateMutability: "view"
109
+ },
110
+ {
111
+ type: "function",
112
+ inputs: [
113
+ { name: "_pid", internalType: "uint256", type: "uint256" },
114
+ { name: "", internalType: "uint256", type: "uint256" }
115
+ ],
116
+ name: "withdraw",
117
+ outputs: [{ name: "useSafePrices", internalType: "bool", type: "bool" }],
118
+ stateMutability: "nonpayable"
119
+ },
120
+ {
121
+ type: "function",
122
+ inputs: [
123
+ { name: "_pid", internalType: "uint256", type: "uint256" },
124
+ { name: "leftoverAmount", internalType: "uint256", type: "uint256" }
125
+ ],
126
+ name: "withdrawDiff",
127
+ outputs: [{ name: "useSafePrices", internalType: "bool", type: "bool" }],
128
+ stateMutability: "nonpayable"
129
+ },
130
+ {
131
+ type: "event",
132
+ anonymous: false,
133
+ inputs: [
134
+ { name: "pid", internalType: "uint256", type: "uint256", indexed: true }
135
+ ],
136
+ name: "AddSupportedPid"
137
+ },
138
+ { type: "error", inputs: [], name: "UnsupportedPidException" }
139
+ ];
140
+ // Annotate the CommonJS export names for ESM import in node:
141
+ 0 && (module.exports = {
142
+ iConvexV1BoosterAdapterAbi
143
+ });
@@ -17,6 +17,7 @@ var abi_exports = {};
17
17
  module.exports = __toCommonJS(abi_exports);
18
18
  __reExport(abi_exports, require("./actionAbi.js"), module.exports);
19
19
  __reExport(abi_exports, require("./conctructorAbi.js"), module.exports);
20
+ __reExport(abi_exports, require("./iConvexV1BoosterAdapter.js"), module.exports);
20
21
  __reExport(abi_exports, require("./securitize/index.js"), module.exports);
21
22
  __reExport(abi_exports, require("./targetContractAbi.js"), module.exports);
22
23
  __reExport(abi_exports, require("./utils.js"), module.exports);
@@ -24,6 +25,7 @@ __reExport(abi_exports, require("./utils.js"), module.exports);
24
25
  0 && (module.exports = {
25
26
  ...require("./actionAbi.js"),
26
27
  ...require("./conctructorAbi.js"),
28
+ ...require("./iConvexV1BoosterAdapter.js"),
27
29
  ...require("./securitize/index.js"),
28
30
  ...require("./targetContractAbi.js"),
29
31
  ...require("./utils.js")
@@ -115,6 +115,42 @@ class AbstractAdapterContract extends import_sdk.BaseContract {
115
115
  return void 0;
116
116
  }
117
117
  }
118
+ /**
119
+ * Applies the balance changes implied by a router-generated diff-style
120
+ * adapter call to a map of credit-account token balances.
121
+ *
122
+ * @param balances - Token balances before the call. Mutated in place.
123
+ * @param calldata - Raw ABI-encoded adapter calldata.
124
+ * @throws When the calldata cannot be decoded or the adapter (or the
125
+ * specific function) has no balance-changes support.
126
+ */
127
+ previewBalanceChanges(balances, calldata) {
128
+ let decoded;
129
+ try {
130
+ decoded = (0, import_viem.decodeFunctionData)({ abi: this.abi, data: calldata });
131
+ } catch (e) {
132
+ throw new Error(
133
+ `previewBalanceChanges: cannot decode selector ${calldata.slice(0, 10)} on ${this.contractType} adapter at ${this.address}`,
134
+ { cause: e }
135
+ );
136
+ }
137
+ const leftovers = this.decodeDiffLeftovers(decoded, balances);
138
+ for (const { tokenIn, leftoverAmount } of leftovers) {
139
+ balances.upsert(tokenIn, leftoverAmount);
140
+ }
141
+ }
142
+ /**
143
+ * Resolves which tokens the diff-style call spends down to which leftovers.
144
+ *
145
+ * @param decoded - The viem-decoded adapter call
146
+ * @param _balances - Token balances before the call
147
+ * @throws When the adapter (or the specific function) has no balance-changes support
148
+ */
149
+ decodeDiffLeftovers(decoded, _balances) {
150
+ throw new Error(
151
+ `previewBalanceChanges is not supported for ${decoded.functionName} on ${this.contractType} adapter at ${this.address}`
152
+ );
153
+ }
118
154
  /**
119
155
  * Classifies an adapter call into a {@link LegacyAdapterOperation} using the
120
156
  * parsed call and credit-account transfer deltas.
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var AbstractCurveAdapter_exports = {};
20
+ __export(AbstractCurveAdapter_exports, {
21
+ AbstractCurveAdapterContract: () => AbstractCurveAdapterContract
22
+ });
23
+ module.exports = __toCommonJS(AbstractCurveAdapter_exports);
24
+ var import_transferHelpers = require("../transferHelpers.js");
25
+ var import_AbstractAdapter = require("./AbstractAdapter.js");
26
+ class AbstractCurveAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
27
+ /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
28
+ classifyLegacyOperation(parsed, transfers) {
29
+ return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
30
+ }
31
+ decodeDiffLeftovers(decoded, balances) {
32
+ const { functionName, args } = decoded;
33
+ switch (functionName) {
34
+ case "exchange_diff": {
35
+ const [i, , leftoverAmount] = args;
36
+ return [{ tokenIn: this.curveCoin(i), leftoverAmount }];
37
+ }
38
+ case "add_diff_liquidity_one_coin": {
39
+ const [leftoverAmount, i] = args;
40
+ return [{ tokenIn: this.curveCoin(i), leftoverAmount }];
41
+ }
42
+ case "remove_diff_liquidity_one_coin": {
43
+ const [leftoverAmount] = args;
44
+ return [{ tokenIn: this.lpToken, leftoverAmount }];
45
+ }
46
+ default:
47
+ return super.decodeDiffLeftovers(decoded, balances);
48
+ }
49
+ }
50
+ /**
51
+ * Resolves a Curve pool coin index to its token address.
52
+ *
53
+ * @throws When the index is out of range for the pool.
54
+ */
55
+ curveCoin(i) {
56
+ const token = this.tokens[Number(i)];
57
+ if (!token) {
58
+ throw new Error(`curve coin index ${i} is out of range`);
59
+ }
60
+ return token;
61
+ }
62
+ }
63
+ // Annotate the CommonJS export names for ESM import in node:
64
+ 0 && (module.exports = {
65
+ AbstractCurveAdapterContract
66
+ });
@@ -93,6 +93,25 @@ class BalancerV3RouterAdapterContract extends import_AbstractAdapter.AbstractAda
93
93
  }))
94
94
  };
95
95
  }
96
+ decodeDiffLeftovers(decoded, balances) {
97
+ switch (decoded.functionName) {
98
+ case "swapSingleTokenDiffIn": {
99
+ const [, tokenIn, , leftoverAmount] = decoded.args;
100
+ return [{ tokenIn, leftoverAmount }];
101
+ }
102
+ // BPT (pool token) is spent down to the leftover
103
+ case "removeLiquiditySingleTokenDiff": {
104
+ const [pool, leftoverAmount] = decoded.args;
105
+ return [{ tokenIn: pool, leftoverAmount }];
106
+ }
107
+ case "addLiquidityUnbalancedDiff":
108
+ throw new Error(
109
+ `previewBalanceChanges cannot resolve pool tokens for addLiquidityUnbalancedDiff on ${this.contractType} adapter at ${this.address}`
110
+ );
111
+ default:
112
+ return super.decodeDiffLeftovers(decoded, balances);
113
+ }
114
+ }
96
115
  }
97
116
  // Annotate the CommonJS export names for ESM import in node:
98
117
  0 && (module.exports = {
@@ -55,6 +55,21 @@ class BalancerV3WrapperAdapterContract extends import_AbstractAdapter.AbstractAd
55
55
  balancerPoolToken: this.#balancerPoolToken ? this.labelAddress(this.#balancerPoolToken) : void 0
56
56
  };
57
57
  }
58
+ decodeDiffLeftovers(decoded, balances) {
59
+ switch (decoded.functionName) {
60
+ // mint spends the pool token, burn spends the wrapper (target contract)
61
+ case "mintDiff": {
62
+ const [leftoverAmount] = decoded.args;
63
+ return [{ tokenIn: this.balancerPoolToken, leftoverAmount }];
64
+ }
65
+ case "burnDiff": {
66
+ const [leftoverAmount] = decoded.args;
67
+ return [{ tokenIn: this.targetContract, leftoverAmount }];
68
+ }
69
+ default:
70
+ return super.decodeDiffLeftovers(decoded, balances);
71
+ }
72
+ }
58
73
  }
59
74
  // Annotate the CommonJS export names for ESM import in node:
60
75
  0 && (module.exports = {
@@ -68,6 +68,26 @@ class CamelotV3AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
68
68
  }))
69
69
  };
70
70
  }
71
+ decodeDiffLeftovers(decoded, balances) {
72
+ switch (decoded.functionName) {
73
+ case "exactDiffInputSingle": {
74
+ const [params] = decoded.args;
75
+ return [
76
+ {
77
+ tokenIn: params.tokenIn,
78
+ leftoverAmount: params.leftoverAmount
79
+ }
80
+ ];
81
+ }
82
+ case "exactDiffInput": {
83
+ const [params] = decoded.args;
84
+ const tokenIn = `0x${params.path.replace("0x", "").slice(0, 40)}`;
85
+ return [{ tokenIn, leftoverAmount: params.leftoverAmount }];
86
+ }
87
+ default:
88
+ return super.decodeDiffLeftovers(decoded, balances);
89
+ }
90
+ }
71
91
  }
72
92
  // Annotate the CommonJS export names for ESM import in node:
73
93
  0 && (module.exports = {
@@ -128,6 +128,24 @@ class ConvexV1BaseRewardPoolAdapterContract extends import_AbstractAdapter.Abstr
128
128
  withdrawAmount: swap.toAmount
129
129
  };
130
130
  }
131
+ decodeDiffLeftovers(decoded, balances) {
132
+ switch (decoded.functionName) {
133
+ case "stakeDiff": {
134
+ const [leftoverAmount] = decoded.args;
135
+ return [{ tokenIn: this.stakingToken, leftoverAmount }];
136
+ }
137
+ case "withdrawDiff":
138
+ case "withdrawDiffAndUnwrap": {
139
+ const [leftoverAmount] = decoded.args;
140
+ return [{ tokenIn: this.stakedPhantomToken, leftoverAmount }];
141
+ }
142
+ // no accrued rewards on a freshly opened account
143
+ case "getReward":
144
+ return [];
145
+ default:
146
+ return super.decodeDiffLeftovers(decoded, balances);
147
+ }
148
+ }
131
149
  }
132
150
  // Annotate the CommonJS export names for ESM import in node:
133
151
  0 && (module.exports = {
@@ -21,13 +21,13 @@ __export(ConvexV1BoosterAdapterContract_exports, {
21
21
  ConvexV1BoosterAdapterContract: () => ConvexV1BoosterAdapterContract
22
22
  });
23
23
  module.exports = __toCommonJS(ConvexV1BoosterAdapterContract_exports);
24
- var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
24
  var import_viem = require("viem");
26
25
  var import_sdk = require("../../../sdk/index.js");
26
+ var import_iConvexV1BoosterAdapter = require("../abi/iConvexV1BoosterAdapter.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
28
  var import_transferHelpers = require("../transferHelpers.js");
29
29
  var import_AbstractAdapter = require("./AbstractAdapter.js");
30
- const abi = import_integrations_v3.iConvexV1BoosterAdapterAbi;
30
+ const abi = import_iConvexV1BoosterAdapter.iConvexV1BoosterAdapterAbi;
31
31
  const protocolAbi = import_targetContractAbi.iBoosterAbi;
32
32
  class ConvexV1BoosterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
33
33
  #supportedPools;
@@ -102,6 +102,32 @@ class ConvexV1BoosterAdapterContract extends import_AbstractAdapter.AbstractAdap
102
102
  }
103
103
  return super.classifyLegacyOperation(parsed, transfers);
104
104
  }
105
+ decodeDiffLeftovers(decoded, balances) {
106
+ switch (decoded.functionName) {
107
+ // deposit spends the curve LP token, withdraw spends the convex token
108
+ case "depositDiff": {
109
+ const [pid, leftoverAmount] = decoded.args;
110
+ const pool = this.#mustFindPool(Number(pid));
111
+ return [{ tokenIn: pool.curveToken, leftoverAmount }];
112
+ }
113
+ case "withdrawDiff": {
114
+ const [pid, leftoverAmount] = decoded.args;
115
+ const pool = this.#mustFindPool(Number(pid));
116
+ return [{ tokenIn: pool.convexToken, leftoverAmount }];
117
+ }
118
+ default:
119
+ return super.decodeDiffLeftovers(decoded, balances);
120
+ }
121
+ }
122
+ #mustFindPool(pid) {
123
+ const pool = this.supportedPools.find((p) => p.pid === pid);
124
+ if (!pool) {
125
+ throw new Error(
126
+ `convex pool with pid ${pid} not found on booster adapter at ${this.address}`
127
+ );
128
+ }
129
+ return pool;
130
+ }
105
131
  }
106
132
  // Annotate the CommonJS export names for ESM import in node:
107
133
  0 && (module.exports = {
@@ -25,11 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_transferHelpers = require("../transferHelpers.js");
29
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
30
29
  const abi = import_integrations_v3.iCurveV1_2AssetsAdapterAbi;
31
30
  const protocolAbi = [...import_targetContractAbi.iCurvePoolAbi, ...import_targetContractAbi.iCurvePool_2Abi];
32
- class Curve2AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class Curve2AssetsAdapterContract extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
33
32
  #token;
34
33
  #lpToken;
35
34
  #metapoolBase;
@@ -103,10 +102,6 @@ class Curve2AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapter
103
102
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
104
103
  };
105
104
  }
106
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
107
- classifyLegacyOperation(parsed, transfers) {
108
- return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
109
- }
110
105
  }
111
106
  // Annotate the CommonJS export names for ESM import in node:
112
107
  0 && (module.exports = {
@@ -25,11 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_transferHelpers = require("../transferHelpers.js");
29
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
30
29
  const abi = import_integrations_v3.iCurveV1_3AssetsAdapterAbi;
31
30
  const protocolAbi = [...import_targetContractAbi.iCurvePoolAbi, ...import_targetContractAbi.iCurvePool_3Abi];
32
- class Curve3AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class Curve3AssetsAdapterContract extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
33
32
  #token;
34
33
  #lpToken;
35
34
  #metapoolBase;
@@ -103,10 +102,6 @@ class Curve3AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapter
103
102
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
104
103
  };
105
104
  }
106
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
107
- classifyLegacyOperation(parsed, transfers) {
108
- return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
109
- }
110
105
  }
111
106
  // Annotate the CommonJS export names for ESM import in node:
112
107
  0 && (module.exports = {
@@ -25,11 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_transferHelpers = require("../transferHelpers.js");
29
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
30
29
  const abi = import_integrations_v3.iCurveV1_4AssetsAdapterAbi;
31
30
  const protocolAbi = [...import_targetContractAbi.iCurvePoolAbi, ...import_targetContractAbi.iCurvePool_4Abi];
32
- class Curve4AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class Curve4AssetsAdapterContract extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
33
32
  #token;
34
33
  #lpToken;
35
34
  #metapoolBase;
@@ -108,10 +107,6 @@ class Curve4AssetsAdapterContract extends import_AbstractAdapter.AbstractAdapter
108
107
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
109
108
  };
110
109
  }
111
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
112
- classifyLegacyOperation(parsed, transfers) {
113
- return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
114
- }
115
110
  }
116
111
  // Annotate the CommonJS export names for ESM import in node:
117
112
  0 && (module.exports = {
@@ -25,10 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
29
29
  const abi = import_integrations_v3.iCurveV1AdapterAbi;
30
30
  const protocolAbi = import_targetContractAbi.iCurvePoolAbi;
31
- class CurveV1AdapterDeposit extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class CurveV1AdapterDeposit extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
32
32
  #token;
33
33
  #lpToken;
34
34
  #metapoolBase;
@@ -25,11 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_transferHelpers = require("../transferHelpers.js");
29
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
30
29
  const abi = import_integrations_v3.iCurveV1_2AssetsAdapterAbi;
31
30
  const protocolAbi = [...import_targetContractAbi.iCurvePoolAbi, ...import_targetContractAbi.iCurvePool_2Abi];
32
- class CurveV1AdapterStETHContract extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class CurveV1AdapterStETHContract extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
33
32
  #token;
34
33
  #lpToken;
35
34
  #metapoolBase;
@@ -86,10 +85,6 @@ class CurveV1AdapterStETHContract extends import_AbstractAdapter.AbstractAdapter
86
85
  if (!this.#tokens) throw new import_sdk.MissingSerializedParamsError("tokens");
87
86
  return this.#tokens;
88
87
  }
89
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
90
- classifyLegacyOperation(parsed, transfers) {
91
- return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
92
- }
93
88
  }
94
89
  // Annotate the CommonJS export names for ESM import in node:
95
90
  0 && (module.exports = {
@@ -25,11 +25,10 @@ var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
26
  var import_sdk = require("../../../sdk/index.js");
27
27
  var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
- var import_transferHelpers = require("../transferHelpers.js");
29
- var import_AbstractAdapter = require("./AbstractAdapter.js");
28
+ var import_AbstractCurveAdapter = require("./AbstractCurveAdapter.js");
30
29
  const abi = import_integrations_v3.iCurveV1StableNgAdapterAbi;
31
30
  const protocolAbi = [...import_targetContractAbi.iCurvePoolAbi, ...import_targetContractAbi.iCurvePoolStableNGAbi];
32
- class CurveV1StableNGAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
31
+ class CurveV1StableNGAdapterContract extends import_AbstractCurveAdapter.AbstractCurveAdapterContract {
33
32
  #token;
34
33
  #lpToken;
35
34
  #metapoolBase;
@@ -116,10 +115,6 @@ class CurveV1StableNGAdapterContract extends import_AbstractAdapter.AbstractAdap
116
115
  underlyings: this.#underlyings?.map((t) => this.labelAddress(t))
117
116
  };
118
117
  }
119
- /** @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L132-L164 */
120
- classifyLegacyOperation(parsed, transfers) {
121
- return (0, import_transferHelpers.classifyCurveOperation)(parsed.functionName, transfers) ?? super.classifyLegacyOperation(parsed, transfers);
122
- }
123
118
  }
124
119
  // Annotate the CommonJS export names for ESM import in node:
125
120
  0 && (module.exports = {