@gearbox-protocol/sdk 14.11.3 → 14.12.0-next.10

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 (387) hide show
  1. package/dist/cjs/abi/iZapper.js +62 -24
  2. package/dist/cjs/common-utils/utils/index.js +2 -0
  3. package/dist/cjs/{history/trace-utils.js → common-utils/utils/trace.js} +62 -5
  4. package/dist/cjs/dev/AccountOpener.js +7 -13
  5. package/dist/cjs/dev/index.js +3 -1
  6. package/dist/cjs/dev/verifyTestnet.js +52 -0
  7. package/dist/cjs/history/assembleOperations.js +6 -6
  8. package/dist/cjs/history/classifyMulticallOperations.js +33 -25
  9. package/dist/cjs/history/index.js +0 -2
  10. package/dist/cjs/history/mapOperations.js +7 -0
  11. package/dist/cjs/history/parseCreditAccountTransaction.js +5 -6
  12. package/dist/cjs/history/toLegacyOperation.js +5 -1
  13. package/dist/cjs/plugins/adapters/abi/iConvexV1BoosterAdapter.js +143 -0
  14. package/dist/cjs/plugins/adapters/abi/index.js +2 -0
  15. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +61 -37
  16. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +66 -0
  17. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +9 -0
  18. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +19 -0
  19. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +15 -0
  20. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +20 -0
  21. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +18 -0
  22. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +28 -2
  23. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  24. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  25. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  26. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  27. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  28. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  29. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +14 -0
  30. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +15 -0
  31. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +14 -0
  32. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +15 -0
  33. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +21 -0
  34. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +10 -0
  35. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +11 -0
  36. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +15 -0
  37. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +15 -0
  38. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +11 -0
  39. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +10 -0
  40. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +12 -0
  41. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +58 -0
  42. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +11 -0
  43. package/dist/cjs/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +22 -1
  44. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +17 -0
  45. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +10 -0
  46. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  47. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  48. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +15 -0
  49. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +14 -0
  50. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +10 -0
  51. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +15 -0
  52. package/dist/cjs/{history/internal-types.js → plugins/adapters/transfers.js} +2 -2
  53. package/dist/cjs/preview/index.js +26 -0
  54. package/dist/cjs/preview/package.json +1 -0
  55. package/dist/cjs/preview/parse/classifyInnerOperations.js +105 -0
  56. package/dist/cjs/preview/parse/errors.js +50 -0
  57. package/dist/cjs/preview/parse/index.js +34 -0
  58. package/dist/cjs/preview/parse/parseFacadeOperationCalldata.js +108 -0
  59. package/dist/cjs/preview/parse/parseOperationCalldata.js +85 -0
  60. package/dist/cjs/preview/parse/parsePoolOperationCalldata.js +89 -0
  61. package/dist/cjs/preview/parse/parseRWAFactoryOperationCalldata.js +104 -0
  62. package/dist/cjs/{history/inner-operations.js → preview/parse/types-adapters.js} +2 -2
  63. package/dist/cjs/preview/parse/types-facades.js +16 -0
  64. package/dist/cjs/preview/parse/types-pools.js +16 -0
  65. package/dist/cjs/preview/parse/types-rwa.js +16 -0
  66. package/dist/cjs/preview/parse/types.js +44 -0
  67. package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +78 -0
  68. package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +95 -0
  69. package/dist/cjs/preview/prerequisites/Prerequisite.js +85 -0
  70. package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +66 -0
  71. package/dist/cjs/preview/prerequisites/buildPrerequisites.js +297 -0
  72. package/dist/cjs/preview/prerequisites/index.js +36 -0
  73. package/dist/cjs/preview/prerequisites/prepareAction.js +48 -0
  74. package/dist/cjs/preview/prerequisites/runPrerequisites.js +71 -0
  75. package/dist/cjs/preview/prerequisites/types.js +16 -0
  76. package/dist/cjs/preview/preview/applyInnerOperations.js +132 -0
  77. package/dist/cjs/preview/preview/errors.js +52 -0
  78. package/dist/cjs/preview/preview/index.js +30 -0
  79. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +95 -0
  80. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +69 -0
  81. package/dist/cjs/preview/preview/previewOperation.js +45 -0
  82. package/dist/cjs/preview/preview/previewPoolOperation.js +75 -0
  83. package/dist/cjs/preview/preview/types.js +16 -0
  84. package/dist/cjs/preview/preview/unwrapNativeCollateral.js +45 -0
  85. package/dist/cjs/preview/simulate/errors.js +91 -0
  86. package/dist/cjs/preview/simulate/index.js +40 -0
  87. package/dist/cjs/preview/simulate/simulateFacadeOperation.js +30 -0
  88. package/dist/cjs/preview/simulate/simulateOperation.js +41 -0
  89. package/dist/cjs/preview/simulate/simulatePoolOperation.js +91 -0
  90. package/dist/cjs/preview/simulate/simulateRWAOperation.js +30 -0
  91. package/dist/cjs/preview/simulate/types.js +16 -0
  92. package/dist/cjs/{history → preview/trace}/errors.js +0 -26
  93. package/dist/cjs/preview/trace/extractAdapterCallTraces.js +58 -0
  94. package/dist/cjs/{history → preview/trace}/extractTransfers.js +9 -12
  95. package/dist/cjs/{history → preview/trace}/findFacadeCalls.js +3 -3
  96. package/dist/cjs/preview/trace/index.js +30 -0
  97. package/dist/cjs/preview/trace/types.js +16 -0
  98. package/dist/cjs/sdk/MultichainSDK.js +1 -0
  99. package/dist/cjs/sdk/OnchainSDK.js +7 -3
  100. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +157 -4
  101. package/dist/cjs/sdk/base/BaseContract.js +4 -2
  102. package/dist/cjs/sdk/base/ChainContractsRegister.js +1 -0
  103. package/dist/cjs/sdk/market/MarketRegister.js +10 -5
  104. package/dist/cjs/sdk/market/ZapperRegister.js +54 -0
  105. package/dist/cjs/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +30 -0
  106. package/dist/cjs/sdk/market/rwa/types.js +5 -2
  107. package/dist/cjs/sdk/market/zapper/IERC20ZapperContract.js +3 -38
  108. package/dist/cjs/sdk/market/zapper/IETHZapperContract.js +3 -38
  109. package/dist/cjs/sdk/market/zapper/ZapperContract.js +106 -0
  110. package/dist/cjs/sdk/market/zapper/createZapper.js +12 -4
  111. package/dist/cjs/sdk/market/zapper/{Zapper.js → errors.js} +13 -23
  112. package/dist/cjs/sdk/market/zapper/index.js +6 -2
  113. package/dist/cjs/sdk/market/zapper/types.js +16 -0
  114. package/dist/cjs/sdk/options.js +41 -17
  115. package/dist/cjs/sdk/router/AbstractRouterContract.js +21 -27
  116. package/dist/cjs/sdk/router/RouterV310Contract.js +11 -12
  117. package/dist/cjs/sdk/router/helpers.js +0 -5
  118. package/dist/cjs/sdk/utils/AddressMap.js +6 -0
  119. package/dist/cjs/sdk/utils/AssetsMap.js +62 -0
  120. package/dist/cjs/sdk/utils/index.js +2 -0
  121. package/dist/esm/abi/iZapper.js +62 -24
  122. package/dist/esm/common-utils/utils/index.js +1 -0
  123. package/dist/esm/common-utils/utils/trace.js +93 -0
  124. package/dist/esm/dev/AccountOpener.js +8 -13
  125. package/dist/esm/dev/index.js +1 -0
  126. package/dist/esm/dev/verifyTestnet.js +27 -0
  127. package/dist/esm/history/assembleOperations.js +8 -6
  128. package/dist/esm/history/classifyMulticallOperations.js +31 -23
  129. package/dist/esm/history/index.js +0 -1
  130. package/dist/esm/history/mapOperations.js +7 -0
  131. package/dist/esm/history/parseCreditAccountTransaction.js +3 -4
  132. package/dist/esm/history/toLegacyOperation.js +5 -1
  133. package/dist/esm/plugins/adapters/abi/iConvexV1BoosterAdapter.js +119 -0
  134. package/dist/esm/plugins/adapters/abi/index.js +1 -0
  135. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +64 -38
  136. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +42 -0
  137. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +9 -0
  138. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +22 -1
  139. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +18 -1
  140. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +23 -1
  141. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +22 -1
  142. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +30 -2
  143. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -7
  144. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -7
  145. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -7
  146. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  147. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -7
  148. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -7
  149. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +17 -1
  150. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +19 -1
  151. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +17 -1
  152. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +18 -1
  153. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +24 -1
  154. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +13 -1
  155. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +14 -1
  156. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +18 -1
  157. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +18 -1
  158. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +14 -1
  159. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +13 -1
  160. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +15 -1
  161. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +61 -1
  162. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +14 -1
  163. package/dist/esm/plugins/adapters/contracts/SecuritizeSwapAdapterContract.js +25 -2
  164. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +20 -1
  165. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +13 -1
  166. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +10 -0
  167. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +20 -0
  168. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +18 -1
  169. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +17 -1
  170. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +13 -1
  171. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +18 -1
  172. package/dist/esm/preview/index.js +3 -0
  173. package/dist/esm/preview/package.json +1 -0
  174. package/dist/esm/preview/parse/classifyInnerOperations.js +81 -0
  175. package/dist/esm/preview/parse/errors.js +24 -0
  176. package/dist/esm/preview/parse/index.js +7 -0
  177. package/dist/esm/preview/parse/parseFacadeOperationCalldata.js +84 -0
  178. package/dist/esm/preview/parse/parseOperationCalldata.js +66 -0
  179. package/dist/esm/preview/parse/parsePoolOperationCalldata.js +65 -0
  180. package/dist/esm/preview/parse/parseRWAFactoryOperationCalldata.js +85 -0
  181. package/dist/esm/preview/parse/types-facades.js +0 -0
  182. package/dist/esm/preview/parse/types-pools.js +0 -0
  183. package/dist/esm/preview/parse/types-rwa.js +0 -0
  184. package/dist/esm/preview/parse/types.js +14 -0
  185. package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +57 -0
  186. package/dist/esm/preview/prerequisites/BalancePrerequisite.js +74 -0
  187. package/dist/esm/preview/prerequisites/Prerequisite.js +63 -0
  188. package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +42 -0
  189. package/dist/esm/preview/prerequisites/buildPrerequisites.js +279 -0
  190. package/dist/esm/preview/prerequisites/index.js +8 -0
  191. package/dist/esm/preview/prerequisites/prepareAction.js +23 -0
  192. package/dist/esm/preview/prerequisites/runPrerequisites.js +47 -0
  193. package/dist/esm/preview/prerequisites/types.js +0 -0
  194. package/dist/esm/preview/preview/applyInnerOperations.js +110 -0
  195. package/dist/esm/preview/preview/errors.js +27 -0
  196. package/dist/esm/preview/preview/index.js +5 -0
  197. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +79 -0
  198. package/dist/esm/preview/preview/previewOpenCreditAccount.js +51 -0
  199. package/dist/esm/preview/preview/previewOperation.js +21 -0
  200. package/dist/esm/preview/preview/previewPoolOperation.js +53 -0
  201. package/dist/esm/preview/preview/types.js +0 -0
  202. package/dist/esm/preview/preview/unwrapNativeCollateral.js +21 -0
  203. package/dist/esm/preview/simulate/errors.js +69 -0
  204. package/dist/esm/preview/simulate/index.js +12 -0
  205. package/dist/esm/preview/simulate/simulateFacadeOperation.js +6 -0
  206. package/dist/esm/preview/simulate/simulateOperation.js +20 -0
  207. package/dist/esm/preview/simulate/simulatePoolOperation.js +67 -0
  208. package/dist/esm/preview/simulate/simulateRWAOperation.js +6 -0
  209. package/dist/esm/preview/simulate/types.js +0 -0
  210. package/dist/esm/{history → preview/trace}/errors.js +0 -24
  211. package/dist/esm/preview/trace/extractAdapterCallTraces.js +40 -0
  212. package/dist/esm/{history → preview/trace}/extractTransfers.js +9 -12
  213. package/dist/esm/{history → preview/trace}/findFacadeCalls.js +4 -2
  214. package/dist/esm/preview/trace/index.js +5 -0
  215. package/dist/esm/preview/trace/types.js +0 -0
  216. package/dist/esm/sdk/MultichainSDK.js +1 -0
  217. package/dist/esm/sdk/OnchainSDK.js +7 -3
  218. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +158 -5
  219. package/dist/esm/sdk/base/BaseContract.js +4 -2
  220. package/dist/esm/sdk/base/ChainContractsRegister.js +1 -0
  221. package/dist/esm/sdk/market/MarketRegister.js +10 -5
  222. package/dist/esm/sdk/market/ZapperRegister.js +54 -0
  223. package/dist/esm/sdk/market/rwa/securitize/SecuritizeRWAFactory.js +33 -1
  224. package/dist/esm/sdk/market/rwa/types.js +5 -2
  225. package/dist/esm/sdk/market/zapper/IERC20ZapperContract.js +3 -38
  226. package/dist/esm/sdk/market/zapper/IETHZapperContract.js +3 -38
  227. package/dist/esm/sdk/market/zapper/ZapperContract.js +82 -0
  228. package/dist/esm/sdk/market/zapper/createZapper.js +12 -4
  229. package/dist/esm/sdk/market/zapper/errors.js +13 -0
  230. package/dist/esm/sdk/market/zapper/index.js +3 -1
  231. package/dist/esm/sdk/market/zapper/types.js +0 -0
  232. package/dist/esm/sdk/options.js +39 -15
  233. package/dist/esm/sdk/router/AbstractRouterContract.js +25 -29
  234. package/dist/esm/sdk/router/RouterV310Contract.js +11 -12
  235. package/dist/esm/sdk/router/helpers.js +0 -4
  236. package/dist/esm/sdk/utils/AddressMap.js +6 -0
  237. package/dist/esm/sdk/utils/AssetsMap.js +38 -0
  238. package/dist/esm/sdk/utils/index.js +1 -0
  239. package/dist/types/abi/iERC20Zapper.d.ts +91 -23
  240. package/dist/types/abi/iETHZapper.d.ts +91 -23
  241. package/dist/types/abi/iZapper.d.ts +91 -23
  242. package/dist/types/common-utils/utils/index.d.ts +1 -0
  243. package/dist/types/common-utils/utils/strategies/assets/assets.d.ts +1 -1
  244. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  245. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  246. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  247. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  248. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  249. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  250. package/dist/types/common-utils/utils/trace.d.ts +73 -0
  251. package/dist/types/common-utils/utils/validation/validate-balances.d.ts +1 -1
  252. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  253. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  254. package/dist/types/common-utils/utils/validation/validate-token-to-obtain.d.ts +1 -1
  255. package/dist/types/dev/index.d.ts +1 -0
  256. package/dist/types/dev/verifyTestnet.d.ts +24 -0
  257. package/dist/types/history/assembleOperations.d.ts +11 -6
  258. package/dist/types/history/classifyMulticallOperations.d.ts +21 -9
  259. package/dist/types/history/index.d.ts +0 -1
  260. package/dist/types/history/mapOperations.d.ts +7 -9
  261. package/dist/types/history/types.d.ts +22 -71
  262. package/dist/types/plugins/adapters/abi/iConvexV1BoosterAdapter.d.ts +204 -0
  263. package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
  264. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +33 -16
  265. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +18 -0
  266. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +10 -1
  267. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +4 -2
  268. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +4 -2
  269. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +4 -2
  270. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +5 -3
  271. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +9 -7
  272. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +3 -6
  273. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +3 -6
  274. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +3 -6
  275. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +3 -3
  276. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +3 -6
  277. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +3 -6
  278. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +5 -3
  279. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +5 -3
  280. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +5 -3
  281. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +4 -2
  282. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +4 -2
  283. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +4 -2
  284. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +5 -3
  285. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +5 -3
  286. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +5 -3
  287. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +4 -2
  288. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +4 -2
  289. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +4 -2
  290. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +4 -2
  291. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +4 -2
  292. package/dist/types/plugins/adapters/contracts/SecuritizeSwapAdapterContract.d.ts +15 -3
  293. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +4 -2
  294. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +4 -2
  295. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +4 -2
  296. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -1
  297. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +5 -3
  298. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +4 -2
  299. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +4 -2
  300. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +5 -3
  301. package/dist/types/plugins/adapters/transferHelpers.d.ts +1 -1
  302. package/dist/types/plugins/adapters/transfers.d.ts +17 -0
  303. package/dist/types/plugins/adapters/types.d.ts +18 -46
  304. package/dist/types/preview/index.d.ts +3 -0
  305. package/dist/types/preview/parse/classifyInnerOperations.d.ts +19 -0
  306. package/dist/types/preview/parse/errors.d.ts +18 -0
  307. package/dist/types/preview/parse/index.d.ts +7 -0
  308. package/dist/types/preview/parse/parseFacadeOperationCalldata.d.ts +19 -0
  309. package/dist/types/preview/parse/parseOperationCalldata.d.ts +23 -0
  310. package/dist/types/preview/parse/parsePoolOperationCalldata.d.ts +17 -0
  311. package/dist/types/preview/parse/parseRWAFactoryOperationCalldata.d.ts +22 -0
  312. package/dist/types/preview/parse/types-adapters.d.ts +73 -0
  313. package/dist/types/preview/parse/types-facades.d.ts +147 -0
  314. package/dist/types/preview/parse/types-pools.d.ts +143 -0
  315. package/dist/types/preview/parse/types-rwa.d.ts +48 -0
  316. package/dist/types/preview/parse/types.d.ts +49 -0
  317. package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +22 -0
  318. package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +26 -0
  319. package/dist/types/preview/prerequisites/Prerequisite.d.ts +60 -0
  320. package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +36 -0
  321. package/dist/types/preview/prerequisites/buildPrerequisites.d.ts +25 -0
  322. package/dist/types/preview/prerequisites/index.d.ts +8 -0
  323. package/dist/types/preview/prerequisites/prepareAction.d.ts +52 -0
  324. package/dist/types/preview/prerequisites/runPrerequisites.d.ts +12 -0
  325. package/dist/types/preview/prerequisites/types.d.ts +80 -0
  326. package/dist/types/preview/preview/applyInnerOperations.d.ts +77 -0
  327. package/dist/types/preview/preview/errors.d.ts +21 -0
  328. package/dist/types/preview/preview/index.d.ts +5 -0
  329. package/dist/types/preview/preview/previewAdjustCreditAccount.d.ts +11 -0
  330. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +4 -0
  331. package/dist/types/preview/preview/previewOperation.d.ts +7 -0
  332. package/dist/types/preview/preview/previewPoolOperation.d.ts +5 -0
  333. package/dist/types/preview/preview/types.d.ts +177 -0
  334. package/dist/types/preview/preview/unwrapNativeCollateral.d.ts +20 -0
  335. package/dist/types/preview/simulate/errors.d.ts +45 -0
  336. package/dist/types/preview/simulate/index.d.ts +10 -0
  337. package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +23 -0
  338. package/dist/types/preview/simulate/simulateOperation.d.ts +18 -0
  339. package/dist/types/preview/simulate/simulatePoolOperation.d.ts +14 -0
  340. package/dist/types/preview/simulate/simulateRWAOperation.d.ts +23 -0
  341. package/dist/types/preview/simulate/types.d.ts +52 -0
  342. package/dist/types/{history → preview/trace}/errors.d.ts +0 -10
  343. package/dist/types/preview/trace/extractAdapterCallTraces.d.ts +23 -0
  344. package/dist/types/{history → preview/trace}/extractTransfers.d.ts +14 -5
  345. package/dist/types/{history → preview/trace}/findFacadeCalls.d.ts +3 -2
  346. package/dist/types/preview/trace/index.d.ts +5 -0
  347. package/dist/types/preview/trace/types.d.ts +21 -0
  348. package/dist/types/sdk/MultichainSDK.d.ts +5 -0
  349. package/dist/types/sdk/OnchainSDK.d.ts +4 -0
  350. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +22 -2
  351. package/dist/types/sdk/accounts/types.d.ts +84 -2
  352. package/dist/types/sdk/base/BaseContract.d.ts +1 -1
  353. package/dist/types/sdk/base/TokensMeta.d.ts +1 -1
  354. package/dist/types/sdk/base/types.d.ts +18 -0
  355. package/dist/types/sdk/market/MarketRegister.d.ts +15 -6
  356. package/dist/types/sdk/market/ZapperRegister.d.ts +25 -4
  357. package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +6 -1
  358. package/dist/types/sdk/market/rwa/types.d.ts +13 -5
  359. package/dist/types/sdk/market/zapper/IERC20ZapperContract.d.ts +93 -39
  360. package/dist/types/sdk/market/zapper/IETHZapperContract.d.ts +93 -39
  361. package/dist/types/sdk/market/zapper/ZapperContract.d.ts +35 -0
  362. package/dist/types/sdk/market/zapper/createZapper.d.ts +2 -4
  363. package/dist/types/sdk/market/zapper/errors.d.ts +10 -0
  364. package/dist/types/sdk/market/zapper/index.d.ts +3 -1
  365. package/dist/types/sdk/market/zapper/types.d.ts +64 -0
  366. package/dist/types/sdk/options.d.ts +10 -5
  367. package/dist/types/sdk/pools/types.d.ts +4 -4
  368. package/dist/types/sdk/router/AbstractRouterContract.d.ts +5 -5
  369. package/dist/types/sdk/router/helpers.d.ts +1 -2
  370. package/dist/types/sdk/router/types.d.ts +1 -15
  371. package/dist/types/sdk/types/state-human.d.ts +9 -0
  372. package/dist/types/sdk/types/state.d.ts +7 -0
  373. package/dist/types/sdk/utils/AddressMap.d.ts +4 -0
  374. package/dist/types/sdk/utils/AssetsMap.d.ts +27 -0
  375. package/dist/types/sdk/utils/index.d.ts +1 -0
  376. package/package.json +8 -3
  377. package/dist/cjs/history/extractProtocolCalls.js +0 -53
  378. package/dist/esm/history/extractProtocolCalls.js +0 -32
  379. package/dist/esm/history/trace-utils.js +0 -36
  380. package/dist/esm/sdk/market/zapper/Zapper.js +0 -23
  381. package/dist/types/history/extractProtocolCalls.d.ts +0 -8
  382. package/dist/types/history/inner-operations.d.ts +0 -57
  383. package/dist/types/history/internal-types.d.ts +0 -47
  384. package/dist/types/history/trace-utils.d.ts +0 -12
  385. package/dist/types/sdk/market/zapper/Zapper.d.ts +0 -13
  386. /package/dist/esm/{history/inner-operations.js → plugins/adapters/transfers.js} +0 -0
  387. /package/dist/esm/{history/internal-types.js → preview/parse/types-adapters.js} +0 -0
@@ -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")
@@ -22,6 +22,7 @@ __export(AbstractAdapter_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(AbstractAdapter_exports);
24
24
  var import_viem = require("viem");
25
+ var import_trace = require("../../../common-utils/utils/trace.js");
25
26
  var import_sdk = require("../../../sdk/index.js");
26
27
  var import_transferHelpers = require("../transferHelpers.js");
27
28
  class AbstractAdapterContract extends import_sdk.BaseContract {
@@ -64,45 +65,33 @@ class AbstractAdapterContract extends import_sdk.BaseContract {
64
65
  };
65
66
  }
66
67
  /**
67
- * Builds an {@link AdapterOperation} from a parsed call and ordered transfer entries.
68
+ * Decodes the protocol-level call (target contract + function name + args)
69
+ * performed by this adapter, recovered from its adapter-level call trace.
68
70
  *
69
- * Returns `PartialBy<AdapterOperation, "targetContract">` because the adapter
70
- * may not have `targetContract` (adapters created without SDK do not have serializedParams)
71
+ * Both the `targetContract` and the protocol calldata are taken from the
72
+ * execution trace.
71
73
  *
72
- * @param protocolCalldata Raw calldata of the actual CALL to targetContract, extracted from trace
73
- * @param strict When true, throws if protocol ABI is missing or decode fails
74
- */
75
- parseAdapterOperation(parsed, transfers, creditAccount, protocolCalldata, strict) {
76
- const netTransfers = (0, import_transferHelpers.toNetTransfers)(transfers, creditAccount);
77
- const protocol = this.parseProtocolCall(protocolCalldata, strict);
78
- return {
79
- operation: "Execute",
80
- adapter: this.address,
81
- protocol: this.#targetContract,
82
- adapterType: this.adapterType,
83
- version: this.version,
84
- label: parsed.label,
85
- adapterFunctionName: parsed.functionName,
86
- adapterArgs: parsed.rawArgs,
87
- ...protocol,
88
- transfers,
89
- legacy: this.classifyLegacyOperation(parsed, netTransfers)
90
- };
91
- }
92
- /**
93
- * Decodes protocol-level function name and args from the raw calldata
94
- * sent to targetContract.
74
+ * Returns `undefined` (in non-strict mode) when no external protocol call can
75
+ * be recovered, in strict mode throws instead.
76
+ *
77
+ * @param trace Adapter-level call trace (a direct child of the facade trace)
78
+ * @param strict When true, throws instead of returning `undefined`
95
79
  */
96
- parseProtocolCall(calldata, strict) {
80
+ parseProtocolCall(trace, strict) {
81
+ const resolved = (0, import_trace.resolveProtocolCall)(trace);
82
+ if (!resolved) {
83
+ if (strict) {
84
+ throw new Error("no external protocol call found in adapter trace");
85
+ }
86
+ return void 0;
87
+ }
88
+ const { contract, calldata } = resolved;
97
89
  const selector = calldata.slice(0, 10);
98
90
  if (this.protocolAbi.length === 0) {
99
91
  if (strict) {
100
92
  throw new Error(`Protocol ABI is missing for selector ${selector}`);
101
93
  }
102
- return {
103
- protocolFunctionName: `unknown function ${selector}`,
104
- protocolArgs: {}
105
- };
94
+ return void 0;
106
95
  }
107
96
  try {
108
97
  const decoded = (0, import_viem.decodeFunctionData)({
@@ -110,12 +99,12 @@ class AbstractAdapterContract extends import_sdk.BaseContract {
110
99
  data: calldata
111
100
  });
112
101
  const functionName = (0, import_sdk.getFunctionSignature)(this.protocolAbi, calldata);
113
- const protocolArgs = (0, import_sdk.functionArgsToRecord)(
102
+ const functionArgs = (0, import_sdk.functionArgsToRecord)(
114
103
  this.protocolAbi,
115
104
  decoded.functionName,
116
105
  decoded.args
117
106
  );
118
- return { protocolFunctionName: functionName, protocolArgs };
107
+ return { contract, functionName, functionArgs };
119
108
  } catch (e) {
120
109
  if (strict) {
121
110
  throw new Error(
@@ -123,12 +112,45 @@ class AbstractAdapterContract extends import_sdk.BaseContract {
123
112
  { cause: e }
124
113
  );
125
114
  }
126
- return {
127
- protocolFunctionName: `unknown function ${selector}`,
128
- protocolArgs: {}
129
- };
115
+ return void 0;
130
116
  }
131
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
+ }
132
154
  /**
133
155
  * Classifies an adapter call into a {@link LegacyAdapterOperation} using the
134
156
  * parsed call and credit-account transfer deltas.
@@ -140,6 +162,8 @@ class AbstractAdapterContract extends import_sdk.BaseContract {
140
162
  * Override in protocol-specific subclasses for richer classification.
141
163
  *
142
164
  * @see https://github.com/Gearbox-protocol/charts_server/blob/master/core/account_operation.go#L238-L264
165
+ *
166
+ * @deprecated Eventually will be gone, exists to produce output that legacy UI can display
143
167
  */
144
168
  classifyLegacyOperation(_parsed, transfers) {
145
169
  const swap = (0, import_transferHelpers.swapFromTransfers)(transfers);
@@ -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
+ });
@@ -35,6 +35,15 @@ class AccountMigratorAdapterContract extends import_AbstractAdapter.AbstractAdap
35
35
  `classifyLegacyOperation is not supported for legacy adapter: ${this.contractType}`
36
36
  );
37
37
  }
38
+ /**
39
+ * The account-migrator adapter's `execute` targets the migrator bot, not an
40
+ * external protocol, so there is no protocol-level call to recover. Returning
41
+ * `undefined` keeps the `protocol` field aligned with its external-protocol
42
+ * semantics (see {@link TraceAdapterExt}).
43
+ */
44
+ parseProtocolCall(_trace, _strict) {
45
+ return void 0;
46
+ }
38
47
  }
39
48
  // Annotate the CommonJS export names for ESM import in node:
40
49
  0 && (module.exports = {
@@ -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 = {