@gearbox-protocol/sdk 12.8.1 → 12.9.0-txparser.2

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 (278) hide show
  1. package/dist/cjs/dev/providers.js +0 -12
  2. package/dist/cjs/history/assembleOperations.js +110 -0
  3. package/dist/cjs/history/classifyMulticallOperations.js +157 -0
  4. package/dist/cjs/history/enrichTokens.js +80 -0
  5. package/dist/cjs/history/errors.js +91 -0
  6. package/dist/cjs/history/extractProtocolCalls.js +53 -0
  7. package/dist/cjs/history/extractTransfers.js +166 -0
  8. package/dist/cjs/history/findFacadeCalls.js +84 -0
  9. package/dist/cjs/history/index.js +38 -0
  10. package/dist/cjs/history/inner-operations.js +16 -0
  11. package/dist/cjs/history/internal-types.js +16 -0
  12. package/dist/cjs/history/package.json +1 -0
  13. package/dist/cjs/history/parseCreditAccountTransaction.js +83 -0
  14. package/dist/cjs/history/populateContractsRegister.js +68 -0
  15. package/dist/cjs/history/toLegacyOperation.js +120 -0
  16. package/dist/cjs/{plugins/adapters/contracts/YearnV2AdapterContract.js → history/trace-utils.js} +36 -21
  17. package/dist/cjs/history/types.js +16 -0
  18. package/dist/cjs/plugins/adapters/AdaptersPlugin.js +13 -106
  19. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  20. package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +5168 -0
  21. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +102 -3
  22. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  23. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +40 -30
  24. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +21 -11
  25. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +31 -21
  26. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +91 -25
  27. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +63 -25
  28. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +68 -31
  29. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +68 -31
  30. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +73 -31
  31. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +80 -33
  32. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +62 -26
  33. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +80 -34
  34. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +39 -14
  35. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +55 -27
  36. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +39 -14
  37. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +27 -14
  38. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +45 -23
  39. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +23 -14
  40. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +22 -12
  41. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +26 -16
  42. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +39 -17
  43. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +21 -11
  44. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +38 -14
  45. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +71 -42
  46. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +21 -11
  47. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +36 -17
  48. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +38 -21
  49. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +63 -53
  50. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +62 -37
  51. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +35 -25
  52. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +35 -21
  53. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +32 -23
  54. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +41 -27
  55. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +34 -17
  56. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +35 -25
  57. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +31 -11
  58. package/dist/cjs/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +585 -0
  59. package/dist/cjs/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +262 -0
  60. package/dist/cjs/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +296 -0
  61. package/dist/cjs/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +415 -0
  62. package/dist/cjs/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.js +74 -0
  63. package/dist/cjs/plugins/adapters/contracts/{MellowRedeemQueueAdapterContract.js → deprecated/MellowRedeemQueueAdapterContract.js} +33 -14
  64. package/dist/cjs/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +233 -0
  65. package/dist/cjs/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +359 -0
  66. package/dist/cjs/plugins/adapters/contracts/deprecated/index.js +36 -0
  67. package/dist/cjs/plugins/adapters/contracts/index.js +3 -17
  68. package/dist/cjs/plugins/adapters/contracts/types.js +0 -9
  69. package/dist/cjs/plugins/adapters/createAdapter.js +140 -0
  70. package/dist/cjs/plugins/adapters/index.js +6 -0
  71. package/dist/cjs/plugins/adapters/legacyAdapterOperations.js +16 -0
  72. package/dist/cjs/plugins/adapters/transferHelpers.js +127 -0
  73. package/dist/cjs/sdk/base/BaseContract.js +51 -0
  74. package/dist/cjs/sdk/base/ChainContractsRegister.js +33 -0
  75. package/dist/cjs/sdk/base/PlaceholderContract.js +2 -2
  76. package/dist/cjs/sdk/base/TokensMeta.js +1 -2
  77. package/dist/cjs/sdk/base/errors.js +35 -0
  78. package/dist/cjs/sdk/base/index.js +2 -0
  79. package/dist/cjs/sdk/market/adapters/PlaceholderAdapterContracts.js +10 -4
  80. package/dist/cjs/sdk/market/adapters/{factory.js → createAdapter.js} +3 -3
  81. package/dist/cjs/sdk/market/adapters/index.js +2 -2
  82. package/dist/cjs/sdk/market/credit/CreditFacadeV310BaseContract.js +108 -0
  83. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +3 -40
  84. package/dist/cjs/sdk/market/credit/index.js +2 -0
  85. package/dist/cjs/sdk/utils/abi-decode.js +43 -2
  86. package/dist/esm/dev/providers.js +0 -12
  87. package/dist/esm/history/assembleOperations.js +86 -0
  88. package/dist/esm/history/classifyMulticallOperations.js +137 -0
  89. package/dist/esm/history/enrichTokens.js +56 -0
  90. package/dist/esm/history/errors.js +62 -0
  91. package/dist/esm/history/extractProtocolCalls.js +32 -0
  92. package/dist/esm/history/extractTransfers.js +146 -0
  93. package/dist/esm/history/findFacadeCalls.js +63 -0
  94. package/dist/esm/history/index.js +9 -0
  95. package/dist/esm/history/inner-operations.js +0 -0
  96. package/dist/esm/history/internal-types.js +0 -0
  97. package/dist/esm/history/package.json +1 -0
  98. package/dist/esm/history/parseCreditAccountTransaction.js +59 -0
  99. package/dist/esm/history/populateContractsRegister.js +52 -0
  100. package/dist/esm/history/toLegacyOperation.js +96 -0
  101. package/dist/esm/history/trace-utils.js +36 -0
  102. package/dist/esm/history/types.js +0 -0
  103. package/dist/esm/plugins/adapters/AdaptersPlugin.js +14 -148
  104. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  105. package/dist/esm/plugins/adapters/abi/targetContractAbi.js +5113 -0
  106. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +111 -4
  107. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
  108. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +40 -30
  109. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +21 -11
  110. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +31 -21
  111. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +100 -26
  112. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +65 -25
  113. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +70 -31
  114. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +70 -31
  115. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +75 -31
  116. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +82 -33
  117. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +64 -26
  118. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +85 -34
  119. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +41 -14
  120. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +57 -27
  121. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +41 -14
  122. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +29 -14
  123. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +47 -23
  124. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +29 -15
  125. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +27 -12
  126. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +31 -16
  127. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +41 -17
  128. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +23 -11
  129. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +40 -14
  130. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +74 -43
  131. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +23 -11
  132. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +38 -17
  133. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +44 -22
  134. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +65 -53
  135. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +64 -37
  136. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +35 -25
  137. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +36 -22
  138. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +33 -24
  139. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +45 -28
  140. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +40 -18
  141. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +35 -25
  142. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +33 -11
  143. package/dist/esm/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.js +559 -0
  144. package/dist/esm/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.js +236 -0
  145. package/dist/esm/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.js +272 -0
  146. package/dist/esm/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.js +390 -0
  147. package/dist/esm/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.js +52 -0
  148. package/dist/esm/plugins/adapters/contracts/deprecated/MellowRedeemQueueAdapterContract.js +45 -0
  149. package/dist/esm/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.js +209 -0
  150. package/dist/esm/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.js +336 -0
  151. package/dist/esm/plugins/adapters/contracts/deprecated/index.js +8 -0
  152. package/dist/esm/plugins/adapters/contracts/index.js +1 -8
  153. package/dist/esm/plugins/adapters/contracts/types.js +0 -8
  154. package/dist/esm/plugins/adapters/createAdapter.js +158 -0
  155. package/dist/esm/plugins/adapters/index.js +3 -0
  156. package/dist/esm/plugins/adapters/legacyAdapterOperations.js +0 -0
  157. package/dist/esm/plugins/adapters/transferHelpers.js +95 -0
  158. package/dist/esm/sdk/base/BaseContract.js +53 -0
  159. package/dist/esm/sdk/base/ChainContractsRegister.js +33 -0
  160. package/dist/esm/sdk/base/PlaceholderContract.js +2 -2
  161. package/dist/esm/sdk/base/TokensMeta.js +6 -2
  162. package/dist/esm/sdk/base/errors.js +11 -0
  163. package/dist/esm/sdk/base/index.js +1 -0
  164. package/dist/esm/sdk/market/adapters/PlaceholderAdapterContracts.js +14 -5
  165. package/dist/esm/sdk/market/adapters/index.js +1 -1
  166. package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +86 -0
  167. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +3 -43
  168. package/dist/esm/sdk/market/credit/index.js +1 -0
  169. package/dist/esm/sdk/utils/abi-decode.js +43 -2
  170. package/dist/types/dev/providers.d.ts +5 -5
  171. package/dist/types/history/assembleOperations.d.ts +24 -0
  172. package/dist/types/history/classifyMulticallOperations.d.ts +35 -0
  173. package/dist/types/history/enrichTokens.d.ts +5 -0
  174. package/dist/types/history/errors.d.ts +30 -0
  175. package/dist/types/history/extractProtocolCalls.d.ts +8 -0
  176. package/dist/types/history/extractTransfers.d.ts +22 -0
  177. package/dist/types/history/findFacadeCalls.d.ts +9 -0
  178. package/dist/types/history/index.d.ts +6 -0
  179. package/dist/types/history/inner-operations.d.ts +57 -0
  180. package/dist/types/history/internal-types.d.ts +47 -0
  181. package/dist/types/history/parseCreditAccountTransaction.d.ts +29 -0
  182. package/dist/types/history/populateContractsRegister.d.ts +19 -0
  183. package/dist/types/history/toLegacyOperation.d.ts +35 -0
  184. package/dist/types/history/trace-utils.d.ts +12 -0
  185. package/dist/types/history/types.d.ts +65 -0
  186. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  187. package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +8262 -0
  188. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +50 -8
  189. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +238 -4
  190. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +113 -4
  191. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +37 -4
  192. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +210 -4
  193. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +407 -8
  194. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +208 -5
  195. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +1244 -10
  196. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +1244 -10
  197. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +1244 -10
  198. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +575 -11
  199. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +1244 -10
  200. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +1213 -11
  201. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +60 -6
  202. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +483 -6
  203. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +58 -6
  204. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +123 -6
  205. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +133 -8
  206. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +155 -5
  207. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +240 -6
  208. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +356 -6
  209. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +94 -7
  210. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +38 -5
  211. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +479 -6
  212. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +483 -7
  213. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +48 -5
  214. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +42 -7
  215. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +186 -7
  216. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +1010 -5
  217. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +71 -8
  218. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +123 -4
  219. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +747 -5
  220. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +171 -4
  221. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +96 -5
  222. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +74 -7
  223. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +109 -4
  224. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +267 -5
  225. package/dist/types/plugins/adapters/contracts/deprecated/BalancerV2VaultAdapterContract.d.ts +1664 -0
  226. package/dist/types/plugins/adapters/contracts/deprecated/EqualizerRouterAdapterContract.d.ts +611 -0
  227. package/dist/types/plugins/adapters/contracts/deprecated/InfraredVaultAdapterContract.d.ts +686 -0
  228. package/dist/types/plugins/adapters/contracts/deprecated/KodiakIslandGatewayAdapterContract.d.ts +1270 -0
  229. package/dist/types/plugins/adapters/contracts/deprecated/MellowDepositQueueAdapterContract.d.ts +19 -0
  230. package/dist/types/plugins/adapters/contracts/deprecated/MellowRedeemQueueAdapterContract.d.ts +18 -0
  231. package/dist/types/plugins/adapters/contracts/deprecated/MellowVaultAdapterContract.d.ts +531 -0
  232. package/dist/types/plugins/adapters/contracts/deprecated/YearnV2AdapterContract.d.ts +662 -0
  233. package/dist/types/plugins/adapters/contracts/deprecated/index.d.ts +8 -0
  234. package/dist/types/plugins/adapters/contracts/index.d.ts +1 -8
  235. package/dist/types/plugins/adapters/contracts/types.d.ts +0 -6
  236. package/dist/types/plugins/adapters/createAdapter.d.ts +7 -0
  237. package/dist/types/plugins/adapters/index.d.ts +3 -0
  238. package/dist/types/plugins/adapters/legacyAdapterOperations.d.ts +200 -0
  239. package/dist/types/plugins/adapters/transferHelpers.d.ts +60 -0
  240. package/dist/types/plugins/adapters/types.d.ts +64 -1
  241. package/dist/types/sdk/base/BaseContract.d.ts +14 -1
  242. package/dist/types/sdk/base/ChainContractsRegister.d.ts +11 -1
  243. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  244. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  245. package/dist/types/sdk/base/errors.d.ts +3 -0
  246. package/dist/types/sdk/base/index.d.ts +1 -0
  247. package/dist/types/sdk/base/types.d.ts +31 -0
  248. package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +9 -4
  249. package/dist/types/sdk/market/adapters/index.d.ts +1 -1
  250. package/dist/types/sdk/market/credit/CreditFacadeV310BaseContract.d.ts +856 -0
  251. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +6 -848
  252. package/dist/types/sdk/market/credit/index.d.ts +1 -0
  253. package/dist/types/sdk/utils/abi-decode.d.ts +14 -1
  254. package/package.json +7 -2
  255. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -51
  256. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -58
  257. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -49
  258. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -56
  259. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -51
  260. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -46
  261. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -27
  262. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -34
  263. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -25
  264. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -32
  265. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +0 -27
  266. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +0 -24
  267. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -22
  268. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +0 -22
  269. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +0 -482
  270. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +0 -225
  271. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +0 -198
  272. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +0 -396
  273. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -13
  274. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -12
  275. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +0 -203
  276. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +0 -185
  277. /package/dist/esm/sdk/market/adapters/{factory.js → createAdapter.js} +0 -0
  278. /package/dist/types/sdk/market/adapters/{factory.d.ts → createAdapter.d.ts} +0 -0
@@ -21,17 +21,116 @@ __export(AbstractAdapter_exports, {
21
21
  AbstractAdapterContract: () => AbstractAdapterContract
22
22
  });
23
23
  module.exports = __toCommonJS(AbstractAdapter_exports);
24
+ var import_viem = require("viem");
24
25
  var import_sdk = require("../../../sdk/index.js");
26
+ var import_transferHelpers = require("../transferHelpers.js");
25
27
  class AbstractAdapterContract extends import_sdk.BaseContract {
26
- targetContract;
28
+ #targetContract;
29
+ protocolAbi;
27
30
  constructor(options, args) {
28
- const { baseParams, targetContract, ...rest } = args;
31
+ const { baseParams, targetContract, protocolAbi, ...rest } = args;
29
32
  super(options, { ...rest, ...baseParams });
30
- this.targetContract = targetContract;
33
+ this.#targetContract = targetContract;
34
+ this.protocolAbi = protocolAbi;
35
+ }
36
+ get targetContract() {
37
+ if (this.#targetContract === void 0) {
38
+ throw new import_sdk.MissingSerializedParamsError("targetContract");
39
+ }
40
+ return this.#targetContract;
31
41
  }
32
42
  get adapterType() {
33
43
  return this.contractType;
34
44
  }
45
+ /**
46
+ * Builds an {@link AdapterOperation} from a parsed call and ordered transfer entries.
47
+ *
48
+ * Returns `PartialBy<AdapterOperation, "targetContract">` because the adapter
49
+ * may not have `targetContract` (adapters created without SDK do not have serializedParams)
50
+ *
51
+ * @param protocolCalldata Raw calldata of the actual CALL to targetContract, extracted from trace
52
+ * @param strict When true, throws if protocol ABI is missing or decode fails
53
+ */
54
+ parseAdapterOperation(parsed, transfers, creditAccount, protocolCalldata, strict) {
55
+ const netTransfers = (0, import_transferHelpers.toNetTransfers)(transfers, creditAccount);
56
+ const protocol = this.parseProtocolCall(protocolCalldata, strict);
57
+ return {
58
+ operation: "Execute",
59
+ adapter: this.address,
60
+ protocol: this.#targetContract,
61
+ adapterType: this.adapterType,
62
+ version: this.version,
63
+ label: parsed.label,
64
+ adapterFunctionName: parsed.functionName,
65
+ adapterArgs: parsed.rawArgs,
66
+ ...protocol,
67
+ transfers,
68
+ legacy: this.classifyLegacyOperation(parsed, netTransfers)
69
+ };
70
+ }
71
+ /**
72
+ * Decodes protocol-level function name and args from the raw calldata
73
+ * sent to targetContract.
74
+ */
75
+ parseProtocolCall(calldata, strict) {
76
+ const selector = calldata.slice(0, 10);
77
+ if (this.protocolAbi.length === 0) {
78
+ if (strict) {
79
+ throw new Error(`Protocol ABI is missing for selector ${selector}`);
80
+ }
81
+ return {
82
+ protocolFunctionName: `unknown function ${selector}`,
83
+ protocolArgs: {}
84
+ };
85
+ }
86
+ try {
87
+ const decoded = (0, import_viem.decodeFunctionData)({
88
+ abi: this.protocolAbi,
89
+ data: calldata
90
+ });
91
+ const functionName = (0, import_sdk.getFunctionSignature)(this.protocolAbi, calldata);
92
+ const protocolArgs = (0, import_sdk.functionArgsToRecord)(
93
+ this.protocolAbi,
94
+ decoded.functionName,
95
+ decoded.args
96
+ );
97
+ return { protocolFunctionName: functionName, protocolArgs };
98
+ } catch (e) {
99
+ if (strict) {
100
+ throw new Error(
101
+ `Failed to decode protocol calldata for selector ${selector}`,
102
+ { cause: e }
103
+ );
104
+ }
105
+ return {
106
+ protocolFunctionName: `unknown function ${selector}`,
107
+ protocolArgs: {}
108
+ };
109
+ }
110
+ }
111
+ /**
112
+ * Classifies an adapter call into a {@link LegacyAdapterOperation} using the
113
+ * parsed call and credit-account transfer deltas.
114
+ *
115
+ * Default: replicates charts_server fallback —
116
+ * - no positive transfers (swap.to is zero) → {@link MakerDeposit}
117
+ * - otherwise → generic {@link Swap}
118
+ *
119
+ * Override in protocol-specific subclasses for richer classification.
120
+ *
121
+ * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/account_operation.go#L238-L264
122
+ */
123
+ classifyLegacyOperation(_parsed, transfers) {
124
+ const swap = (0, import_transferHelpers.swapFromTransfers)(transfers);
125
+ if (swap.to === import_viem.zeroAddress) {
126
+ return {
127
+ operation: "MakerDeposit",
128
+ token: swap.from,
129
+ amount: swap.fromAmount
130
+ };
131
+ }
132
+ return { operation: "Swap", ...swap };
133
+ }
35
134
  }
36
135
  // Annotate the CommonJS export names for ESM import in node:
37
136
  0 && (module.exports = {
@@ -24,9 +24,16 @@ module.exports = __toCommonJS(AccountMigratorAdapterContract_exports);
24
24
  var import_AccountMigrator = require("../../../abi/AccountMigrator.js");
25
25
  var import_AbstractAdapter = require("./AbstractAdapter.js");
26
26
  const abi = import_AccountMigrator.accountMigratorAbi;
27
+ const protocolAbi = import_AccountMigrator.accountMigratorAbi;
27
28
  class AccountMigratorAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
28
29
  constructor(options, args) {
29
- super(options, { ...args, abi });
30
+ super(options, { ...args, abi, protocolAbi });
31
+ }
32
+ /** Legacy adapter not present in integrations-v3. */
33
+ classifyLegacyOperation(_parsed, _transfers) {
34
+ throw new Error(
35
+ `classifyLegacyOperation is not supported for legacy adapter: ${this.contractType}`
36
+ );
30
37
  }
31
38
  }
32
39
  // Annotate the CommonJS export names for ESM import in node:
@@ -23,42 +23,52 @@ __export(BalancerV3RouterAdapterContract_exports, {
23
23
  module.exports = __toCommonJS(BalancerV3RouterAdapterContract_exports);
24
24
  var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
+ var import_sdk = require("../../../sdk/index.js");
27
+ var import_targetContractAbi = require("../abi/targetContractAbi.js");
26
28
  var import_AbstractAdapter = require("./AbstractAdapter.js");
27
29
  const abi = import_integrations_v3.iBalancerV3RouterAdapterAbi;
30
+ const protocolAbi = import_targetContractAbi.iBalancerV3RouterAbi;
28
31
  class BalancerV3RouterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
29
- allowedPools;
32
+ #allowedPools;
30
33
  constructor(options, args) {
31
- super(options, { ...args, abi });
32
- const version = Number(args.baseParams.version);
33
- if (version === 310) {
34
- const decoded = (0, import_viem.decodeAbiParameters)(
35
- [
36
- { type: "address", name: "creditManager" },
37
- { type: "address", name: "targetContract" },
38
- { type: "address[]", name: "allowedPools" }
39
- ],
40
- args.baseParams.serializedParams
41
- );
42
- this.allowedPools = [...decoded[2]];
43
- } else {
44
- const decoded = (0, import_viem.decodeAbiParameters)(
45
- [
46
- { type: "address", name: "creditManager" },
47
- { type: "address", name: "targetContract" },
48
- {
49
- type: "tuple[]",
50
- name: "allowedPairs",
51
- components: [
52
- { type: "address", name: "pool" },
53
- { type: "uint8", name: "status" }
54
- ]
55
- }
56
- ],
57
- args.baseParams.serializedParams
58
- );
59
- this.allowedPools = [...decoded[2]];
34
+ super(options, { ...args, abi, protocolAbi });
35
+ if (args.baseParams.serializedParams) {
36
+ const version = Number(args.baseParams.version);
37
+ if (version === 310) {
38
+ const decoded = (0, import_viem.decodeAbiParameters)(
39
+ [
40
+ { type: "address", name: "creditManager" },
41
+ { type: "address", name: "targetContract" },
42
+ { type: "address[]", name: "allowedPools" }
43
+ ],
44
+ args.baseParams.serializedParams
45
+ );
46
+ this.#allowedPools = [...decoded[2]];
47
+ } else {
48
+ const decoded = (0, import_viem.decodeAbiParameters)(
49
+ [
50
+ { type: "address", name: "creditManager" },
51
+ { type: "address", name: "targetContract" },
52
+ {
53
+ type: "tuple[]",
54
+ name: "allowedPairs",
55
+ components: [
56
+ { type: "address", name: "pool" },
57
+ { type: "uint8", name: "status" }
58
+ ]
59
+ }
60
+ ],
61
+ args.baseParams.serializedParams
62
+ );
63
+ this.#allowedPools = [...decoded[2]];
64
+ }
60
65
  }
61
66
  }
67
+ get allowedPools() {
68
+ if (!this.#allowedPools)
69
+ throw new import_sdk.MissingSerializedParamsError("allowedPools");
70
+ return this.#allowedPools;
71
+ }
62
72
  }
63
73
  // Annotate the CommonJS export names for ESM import in node:
64
74
  0 && (module.exports = {
@@ -23,21 +23,31 @@ __export(BalancerV3WrapperAdapterContract_exports, {
23
23
  module.exports = __toCommonJS(BalancerV3WrapperAdapterContract_exports);
24
24
  var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
+ var import_sdk = require("../../../sdk/index.js");
27
+ var import_targetContractAbi = require("../abi/targetContractAbi.js");
26
28
  var import_AbstractAdapter = require("./AbstractAdapter.js");
27
29
  const abi = import_integrations_v3.iBalancerV3WrapperAdapterAbi;
30
+ const protocolAbi = import_targetContractAbi.iBalancerV3WrapperAbi;
28
31
  class BalancerV3WrapperAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
29
- balancerPoolToken;
32
+ #balancerPoolToken;
30
33
  constructor(options, args) {
31
- super(options, { ...args, abi });
32
- const decoded = (0, import_viem.decodeAbiParameters)(
33
- [
34
- { type: "address", name: "creditManager" },
35
- { type: "address", name: "targetContract" },
36
- { type: "address", name: "balancerPoolToken" }
37
- ],
38
- args.baseParams.serializedParams
39
- );
40
- this.balancerPoolToken = decoded[2];
34
+ super(options, { ...args, abi, protocolAbi });
35
+ if (args.baseParams.serializedParams) {
36
+ const decoded = (0, import_viem.decodeAbiParameters)(
37
+ [
38
+ { type: "address", name: "creditManager" },
39
+ { type: "address", name: "targetContract" },
40
+ { type: "address", name: "balancerPoolToken" }
41
+ ],
42
+ args.baseParams.serializedParams
43
+ );
44
+ this.#balancerPoolToken = decoded[2];
45
+ }
46
+ }
47
+ get balancerPoolToken() {
48
+ if (!this.#balancerPoolToken)
49
+ throw new import_sdk.MissingSerializedParamsError("balancerPoolToken");
50
+ return this.#balancerPoolToken;
41
51
  }
42
52
  }
43
53
  // Annotate the CommonJS export names for ESM import in node:
@@ -23,31 +23,41 @@ __export(CamelotV3AdapterContract_exports, {
23
23
  module.exports = __toCommonJS(CamelotV3AdapterContract_exports);
24
24
  var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
+ var import_sdk = require("../../../sdk/index.js");
27
+ var import_targetContractAbi = require("../abi/targetContractAbi.js");
26
28
  var import_AbstractAdapter = require("./AbstractAdapter.js");
27
29
  const abi = import_integrations_v3.iCamelotV3AdapterAbi;
30
+ const protocolAbi = import_targetContractAbi.iCamelotV3RouterAbi;
28
31
  class CamelotV3AdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
29
- supportedPools;
32
+ #supportedPools;
30
33
  constructor(options, args) {
31
- super(options, { ...args, abi });
32
- const decoded = (0, import_viem.decodeAbiParameters)(
33
- [
34
- { type: "address", name: "creditManager" },
35
- { type: "address", name: "targetContract" },
36
- {
37
- type: "tuple[]",
38
- name: "supportedPools",
39
- components: [
40
- { type: "address", name: "token0" },
41
- { type: "address", name: "token1" }
42
- ]
43
- }
44
- ],
45
- args.baseParams.serializedParams
46
- );
47
- this.supportedPools = decoded[2].map((pool) => ({
48
- token0: pool.token0,
49
- token1: pool.token1
50
- }));
34
+ super(options, { ...args, abi, protocolAbi });
35
+ if (args.baseParams.serializedParams) {
36
+ const decoded = (0, import_viem.decodeAbiParameters)(
37
+ [
38
+ { type: "address", name: "creditManager" },
39
+ { type: "address", name: "targetContract" },
40
+ {
41
+ type: "tuple[]",
42
+ name: "supportedPools",
43
+ components: [
44
+ { type: "address", name: "token0" },
45
+ { type: "address", name: "token1" }
46
+ ]
47
+ }
48
+ ],
49
+ args.baseParams.serializedParams
50
+ );
51
+ this.#supportedPools = decoded[2].map((pool) => ({
52
+ token0: pool.token0,
53
+ token1: pool.token1
54
+ }));
55
+ }
56
+ }
57
+ get supportedPools() {
58
+ if (!this.#supportedPools)
59
+ throw new import_sdk.MissingSerializedParamsError("supportedPools");
60
+ return this.#supportedPools;
51
61
  }
52
62
  }
53
63
  // Annotate the CommonJS export names for ESM import in node:
@@ -23,35 +23,101 @@ __export(ConvexV1BaseRewardPoolAdapterContract_exports, {
23
23
  module.exports = __toCommonJS(ConvexV1BaseRewardPoolAdapterContract_exports);
24
24
  var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
+ var import_sdk = require("../../../sdk/index.js");
27
+ var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
+ var import_transferHelpers = require("../transferHelpers.js");
26
29
  var import_AbstractAdapter = require("./AbstractAdapter.js");
27
30
  const abi = import_integrations_v3.iConvexV1BaseRewardPoolAdapterAbi;
31
+ const protocolAbi = import_targetContractAbi.iBaseRewardPoolAbi;
28
32
  class ConvexV1BaseRewardPoolAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
29
- curveLPtoken;
30
- stakingToken;
31
- stakedPhantomToken;
32
- extraRewards;
33
+ #curveLPtoken;
34
+ #stakingToken;
35
+ #stakedPhantomToken;
36
+ #extraRewards;
33
37
  constructor(options, args) {
34
- super(options, { ...args, abi });
35
- const decoded = (0, import_viem.decodeAbiParameters)(
36
- [
37
- { type: "address", name: "creditManager" },
38
- { type: "address", name: "targetContract" },
39
- { type: "address", name: "curveLPtoken" },
40
- { type: "address", name: "stakingToken" },
41
- { type: "address", name: "stakedPhantomToken" },
42
- { type: "address[4]", name: "extraRewards" }
43
- ],
44
- args.baseParams.serializedParams
45
- );
46
- this.curveLPtoken = decoded[2];
47
- this.stakingToken = decoded[3];
48
- this.stakedPhantomToken = decoded[4];
49
- this.extraRewards = [
50
- decoded[5][0],
51
- decoded[5][1],
52
- decoded[5][2],
53
- decoded[5][3]
54
- ];
38
+ super(options, { ...args, abi, protocolAbi });
39
+ if (args.baseParams.serializedParams) {
40
+ const decoded = (0, import_viem.decodeAbiParameters)(
41
+ [
42
+ { type: "address", name: "creditManager" },
43
+ { type: "address", name: "targetContract" },
44
+ { type: "address", name: "curveLPtoken" },
45
+ { type: "address", name: "stakingToken" },
46
+ { type: "address", name: "stakedPhantomToken" },
47
+ { type: "address[4]", name: "extraRewards" }
48
+ ],
49
+ args.baseParams.serializedParams
50
+ );
51
+ this.#curveLPtoken = decoded[2];
52
+ this.#stakingToken = decoded[3];
53
+ this.#stakedPhantomToken = decoded[4];
54
+ this.#extraRewards = [
55
+ decoded[5][0],
56
+ decoded[5][1],
57
+ decoded[5][2],
58
+ decoded[5][3]
59
+ ];
60
+ }
61
+ }
62
+ get curveLPtoken() {
63
+ if (!this.#curveLPtoken)
64
+ throw new import_sdk.MissingSerializedParamsError("curveLPtoken");
65
+ return this.#curveLPtoken;
66
+ }
67
+ get stakingToken() {
68
+ if (!this.#stakingToken)
69
+ throw new import_sdk.MissingSerializedParamsError("stakingToken");
70
+ return this.#stakingToken;
71
+ }
72
+ get stakedPhantomToken() {
73
+ if (!this.#stakedPhantomToken)
74
+ throw new import_sdk.MissingSerializedParamsError("stakedPhantomToken");
75
+ return this.#stakedPhantomToken;
76
+ }
77
+ get extraRewards() {
78
+ if (!this.#extraRewards)
79
+ throw new import_sdk.MissingSerializedParamsError("extraRewards");
80
+ return this.#extraRewards;
81
+ }
82
+ /**
83
+ * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L200-L262
84
+ * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type_v3.go#L76-L83
85
+ */
86
+ classifyLegacyOperation(parsed, transfers) {
87
+ const fn = (0, import_transferHelpers.fnSigToName)(parsed.functionName);
88
+ const { rawArgs: args } = parsed;
89
+ if (fn === "getReward") {
90
+ return {
91
+ operation: "GetReward",
92
+ rewards: (0, import_transferHelpers.rewardsFromTransfers)(transfers)
93
+ };
94
+ }
95
+ if (fn === "stake" || fn === "stakeDiff" || fn === "depositPhantomToken") {
96
+ const neg = (0, import_transferHelpers.parsePosNegAmount)(transfers).neg;
97
+ return {
98
+ operation: "ConvexStake",
99
+ stakedToken: neg[0] ?? { token: import_viem.zeroAddress, amount: "0" }
100
+ };
101
+ }
102
+ if (fn === "withdrawAll") {
103
+ return {
104
+ operation: "CurveClaims",
105
+ claims: (0, import_transferHelpers.parsePosNegAmount)(transfers).pos
106
+ };
107
+ }
108
+ const claim = args.claim;
109
+ if (claim) {
110
+ return {
111
+ operation: "ConvexWithdrawAndClaim",
112
+ rewards: (0, import_transferHelpers.allTransfersAsTokenAmounts)(transfers)
113
+ };
114
+ }
115
+ const swap = (0, import_transferHelpers.swapFromTransfers)(transfers);
116
+ return {
117
+ operation: "ConvexWithdraw",
118
+ withdrawToken: swap.to,
119
+ withdrawAmount: swap.toAmount
120
+ };
55
121
  }
56
122
  }
57
123
  // Annotate the CommonJS export names for ESM import in node:
@@ -23,35 +23,73 @@ __export(ConvexV1BoosterAdapterContract_exports, {
23
23
  module.exports = __toCommonJS(ConvexV1BoosterAdapterContract_exports);
24
24
  var import_integrations_v3 = require("@gearbox-protocol/integrations-v3");
25
25
  var import_viem = require("viem");
26
+ var import_sdk = require("../../../sdk/index.js");
27
+ var import_targetContractAbi = require("../abi/targetContractAbi.js");
28
+ var import_transferHelpers = require("../transferHelpers.js");
26
29
  var import_AbstractAdapter = require("./AbstractAdapter.js");
27
30
  const abi = import_integrations_v3.iConvexV1BoosterAdapterAbi;
31
+ const protocolAbi = import_targetContractAbi.iBoosterAbi;
28
32
  class ConvexV1BoosterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
29
- supportedPools;
33
+ #supportedPools;
30
34
  constructor(options, args) {
31
- super(options, { ...args, abi });
32
- const decoded = (0, import_viem.decodeAbiParameters)(
33
- [
34
- { type: "address", name: "creditManager" },
35
- { type: "address", name: "targetContract" },
36
- {
37
- type: "tuple[]",
38
- name: "supportedPools",
39
- components: [
40
- { type: "uint256", name: "pid" },
41
- { type: "address", name: "curveToken" },
42
- { type: "address", name: "convexToken" },
43
- { type: "address", name: "phantomToken" }
44
- ]
45
- }
46
- ],
47
- args.baseParams.serializedParams
48
- );
49
- this.supportedPools = decoded[2].map((pool) => ({
50
- pid: Number(pool.pid),
51
- curveToken: pool.curveToken,
52
- convexToken: pool.convexToken,
53
- phantomToken: pool.phantomToken
54
- }));
35
+ super(options, { ...args, abi, protocolAbi });
36
+ if (args.baseParams.serializedParams) {
37
+ const decoded = (0, import_viem.decodeAbiParameters)(
38
+ [
39
+ { type: "address", name: "creditManager" },
40
+ { type: "address", name: "targetContract" },
41
+ {
42
+ type: "tuple[]",
43
+ name: "supportedPools",
44
+ components: [
45
+ { type: "uint256", name: "pid" },
46
+ { type: "address", name: "curveToken" },
47
+ { type: "address", name: "convexToken" },
48
+ { type: "address", name: "phantomToken" }
49
+ ]
50
+ }
51
+ ],
52
+ args.baseParams.serializedParams
53
+ );
54
+ this.#supportedPools = decoded[2].map((pool) => ({
55
+ pid: Number(pool.pid),
56
+ curveToken: pool.curveToken,
57
+ convexToken: pool.convexToken,
58
+ phantomToken: pool.phantomToken
59
+ }));
60
+ }
61
+ }
62
+ get supportedPools() {
63
+ if (!this.#supportedPools)
64
+ throw new import_sdk.MissingSerializedParamsError("supportedPools");
65
+ return this.#supportedPools;
66
+ }
67
+ /**
68
+ * Charts_server only maps `withdrawAll(uint256)` → CurveWithdrawal.
69
+ * `withdrawDiff` and other withdraw variants fall to the base class fallback → Swap.
70
+ *
71
+ * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type.go#L166-L199
72
+ * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/operation_type_v3.go#L84-L91
73
+ */
74
+ classifyLegacyOperation(parsed, transfers) {
75
+ const fn = (0, import_transferHelpers.fnSigToName)(parsed.functionName);
76
+ const { rawArgs: args } = parsed;
77
+ if (fn === "withdrawAll") {
78
+ return { operation: "CurveWithdrawal", ...(0, import_transferHelpers.swapFromTransfers)(transfers) };
79
+ }
80
+ const staked = args._stake ?? args.stake;
81
+ const swap = (0, import_transferHelpers.swapFromTransfers)(transfers);
82
+ if (staked === true) {
83
+ return {
84
+ operation: "ConvexDepositAndStake",
85
+ depositToken: swap.from,
86
+ depositAmount: swap.fromAmount
87
+ };
88
+ }
89
+ if (fn === "depositAll" || fn === "deposit") {
90
+ return { operation: "ConvexDeposit", ...swap };
91
+ }
92
+ return super.classifyLegacyOperation(parsed, transfers);
55
93
  }
56
94
  }
57
95
  // Annotate the CommonJS export names for ESM import in node: