@gearbox-protocol/sdk 11.9.0-next.2 → 11.10.0

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 (455) hide show
  1. package/dist/cjs/dev/create2.js +1 -1
  2. package/dist/cjs/dev/mint/AbstractMinter.js +4 -2
  3. package/dist/cjs/dev/mint/DealMinter.js +3 -0
  4. package/dist/cjs/dev/mint/DirectMinter.js +3 -0
  5. package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
  6. package/dist/cjs/dev/mint/TransferMinter.js +3 -0
  7. package/dist/cjs/permissionless/bindings/address-provider.js +6 -4
  8. package/dist/cjs/permissionless/bindings/base-contract.js +173 -0
  9. package/dist/cjs/permissionless/bindings/bytecode-repository.js +25 -23
  10. package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
  11. package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +17 -11
  12. package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +22 -23
  13. package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +4 -7
  14. package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
  15. package/dist/cjs/permissionless/bindings/governance/governor.js +49 -30
  16. package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
  17. package/dist/cjs/permissionless/bindings/index.js +2 -0
  18. package/dist/cjs/permissionless/bindings/instance-manager.js +77 -58
  19. package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
  20. package/dist/cjs/permissionless/bindings/market-configurator.js +143 -71
  21. package/dist/cjs/permissionless/bindings/price-feed-store.js +17 -8
  22. package/dist/cjs/permissionless/bindings/router/routing-manager.js +15 -9
  23. package/dist/cjs/permissionless/bindings/treasury-splitter.js +23 -14
  24. package/dist/cjs/permissionless/core/raw-tx.js +2 -2
  25. package/dist/cjs/permissionless/utils/abi-decoder.js +72 -0
  26. package/dist/cjs/permissionless/utils/format.js +2 -2
  27. package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
  28. package/dist/cjs/permissionless/utils/index.js +2 -0
  29. package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +2 -1
  30. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +2 -1
  31. package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -1
  32. package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +3 -2
  33. package/dist/cjs/plugins/adapters/abi/conctructorAbi.js +2 -1
  34. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  35. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  36. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  37. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  38. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  39. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  40. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  41. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  42. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  43. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  44. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  45. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  46. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  47. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  48. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  49. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  50. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  51. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  52. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  53. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  54. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  55. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  56. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  57. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  58. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  59. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  60. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  61. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  63. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  64. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  65. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  66. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  67. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  68. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  69. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  70. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  71. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  72. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  73. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  74. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  75. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  76. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  77. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  78. package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  79. package/dist/cjs/plugins/bots/BotsPlugin.js +8 -21
  80. package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +22 -17
  81. package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  82. package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +78 -3
  83. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  84. package/dist/cjs/sdk/GearboxSDK.js +110 -8
  85. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  86. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +12 -8
  87. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +10 -8
  88. package/dist/cjs/sdk/base/AddressLabeller.js +49 -0
  89. package/dist/cjs/sdk/base/BaseContract.js +80 -195
  90. package/dist/cjs/sdk/base/IAddressLabeller.js +16 -0
  91. package/dist/cjs/sdk/base/SDKConstruct.js +29 -3
  92. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  93. package/dist/cjs/sdk/base/index.js +2 -4
  94. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  95. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  96. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  97. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  98. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  99. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  100. package/dist/cjs/sdk/market/MarketRegister.js +9 -7
  101. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  102. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  103. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  104. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  105. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  106. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  107. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  108. package/dist/cjs/sdk/market/credit/CreditSuite.js +6 -2
  109. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  110. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  111. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  112. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  113. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  114. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  115. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  116. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  117. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  118. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  119. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  120. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  121. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  122. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +15 -11
  123. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  124. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  125. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +9 -2
  126. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +9 -2
  127. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  128. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  129. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  130. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +9 -2
  131. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +9 -2
  132. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +9 -2
  133. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  134. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  135. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +10 -2
  136. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  137. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +4 -6
  138. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -2
  139. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  140. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  141. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +9 -2
  142. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +9 -2
  143. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  144. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +8 -6
  145. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +11 -9
  146. package/dist/cjs/sdk/router/AbstractRouterContract.js +114 -12
  147. package/dist/cjs/sdk/router/RouterV300Contract.js +9 -10
  148. package/dist/cjs/sdk/router/RouterV310Contract.js +10 -10
  149. package/dist/cjs/sdk/router/createRouter.js +0 -4
  150. package/dist/cjs/sdk/utils/index.js +0 -2
  151. package/dist/esm/dev/create2.js +2 -2
  152. package/dist/esm/dev/mint/AbstractMinter.js +7 -3
  153. package/dist/esm/dev/mint/DealMinter.js +3 -0
  154. package/dist/esm/dev/mint/DirectMinter.js +3 -0
  155. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  156. package/dist/esm/dev/mint/TransferMinter.js +3 -0
  157. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  158. package/dist/esm/permissionless/bindings/base-contract.js +151 -0
  159. package/dist/esm/permissionless/bindings/bytecode-repository.js +24 -22
  160. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  161. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +16 -10
  162. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +16 -20
  163. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +4 -9
  164. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  165. package/dist/esm/permissionless/bindings/governance/governor.js +47 -28
  166. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  167. package/dist/esm/permissionless/bindings/index.js +1 -0
  168. package/dist/esm/permissionless/bindings/instance-manager.js +69 -53
  169. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  170. package/dist/esm/permissionless/bindings/market-configurator.js +137 -65
  171. package/dist/esm/permissionless/bindings/price-feed-store.js +14 -8
  172. package/dist/esm/permissionless/bindings/router/routing-manager.js +14 -8
  173. package/dist/esm/permissionless/bindings/treasury-splitter.js +22 -15
  174. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  175. package/dist/esm/permissionless/utils/abi-decoder.js +50 -0
  176. package/dist/esm/permissionless/utils/format.js +1 -1
  177. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  178. package/dist/esm/permissionless/utils/index.js +1 -0
  179. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +2 -4
  180. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  181. package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -1
  182. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  183. package/dist/esm/plugins/adapters/abi/conctructorAbi.js +2 -1
  184. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  214. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  215. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  216. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  217. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  218. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  219. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  220. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  221. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  222. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  223. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  224. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  225. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  226. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  227. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  228. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  229. package/dist/esm/plugins/bots/BotsPlugin.js +8 -11
  230. package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +22 -7
  231. package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  232. package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +78 -3
  233. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  234. package/dist/esm/sdk/GearboxSDK.js +112 -10
  235. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  236. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +13 -9
  237. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +10 -8
  238. package/dist/esm/sdk/base/AddressLabeller.js +25 -0
  239. package/dist/esm/sdk/base/BaseContract.js +81 -202
  240. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  241. package/dist/esm/sdk/base/SDKConstruct.js +29 -3
  242. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  243. package/dist/esm/sdk/base/index.js +1 -2
  244. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  245. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  246. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  247. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  248. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  249. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  250. package/dist/esm/sdk/market/MarketRegister.js +10 -8
  251. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  252. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  253. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  254. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  255. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  256. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  257. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  258. package/dist/esm/sdk/market/credit/CreditSuite.js +6 -2
  259. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  260. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +3 -5
  261. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  262. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  263. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  264. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  265. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  266. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  267. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  268. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  269. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  270. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  271. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  272. package/dist/esm/sdk/market/pool/createInterestRateModel.js +15 -11
  273. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  274. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  275. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +13 -3
  276. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +13 -3
  277. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  278. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  279. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  280. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +10 -3
  281. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +10 -3
  282. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +10 -3
  283. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  284. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  285. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +11 -3
  286. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  287. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +5 -7
  288. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +9 -3
  289. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  290. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  291. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +10 -3
  292. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +10 -3
  293. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  294. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +9 -7
  295. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +12 -10
  296. package/dist/esm/sdk/router/AbstractRouterContract.js +115 -13
  297. package/dist/esm/sdk/router/RouterV300Contract.js +9 -10
  298. package/dist/esm/sdk/router/RouterV310Contract.js +10 -10
  299. package/dist/esm/sdk/router/createRouter.js +0 -4
  300. package/dist/esm/sdk/utils/index.js +0 -1
  301. package/dist/types/dev/create2.d.ts +2 -2
  302. package/dist/types/dev/mint/AbstractMinter.d.ts +4 -3
  303. package/dist/types/dev/mint/DealMinter.d.ts +3 -0
  304. package/dist/types/dev/mint/DirectMinter.d.ts +3 -0
  305. package/dist/types/dev/mint/TransferMinter.d.ts +3 -0
  306. package/dist/types/permissionless/bindings/address-provider.d.ts +255 -4
  307. package/dist/types/permissionless/bindings/base-contract.d.ts +23 -0
  308. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +6 -5
  309. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  310. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +5 -4
  311. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  312. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  313. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +4 -3
  314. package/dist/types/permissionless/bindings/governance/governor.d.ts +7 -6
  315. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  316. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  317. package/dist/types/permissionless/bindings/index.d.ts +1 -0
  318. package/dist/types/permissionless/bindings/instance-manager.d.ts +7 -6
  319. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  320. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  321. package/dist/types/permissionless/bindings/price-feed-store.d.ts +7 -6
  322. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +5 -4
  323. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +6 -5
  324. package/dist/types/permissionless/core/proposal.d.ts +7 -1
  325. package/dist/types/permissionless/utils/abi-decoder.d.ts +13 -0
  326. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  327. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  328. package/dist/types/permissionless/utils/index.d.ts +1 -0
  329. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  330. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  356. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  357. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  360. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  361. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  363. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  364. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  365. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  366. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  367. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  368. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  369. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  370. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  371. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  372. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +2 -2
  373. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  374. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  375. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  376. package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +8 -2
  377. package/dist/types/plugins/delayed-withdrawal/types.d.ts +1 -0
  378. package/dist/types/sdk/GearboxSDK.d.ts +76 -5
  379. package/dist/types/sdk/accountMigration/types.d.ts +2 -1
  380. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +2 -2
  381. package/dist/types/sdk/accounts/types.d.ts +23 -7
  382. package/dist/types/sdk/base/AddressLabeller.d.ts +11 -0
  383. package/dist/types/sdk/base/BaseContract.d.ts +28 -72
  384. package/dist/types/sdk/base/IAddressLabeller.d.ts +9 -0
  385. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  386. package/dist/types/sdk/base/SDKConstruct.d.ts +16 -2
  387. package/dist/types/sdk/base/TokensMeta.d.ts +3 -2
  388. package/dist/types/sdk/base/index.d.ts +1 -2
  389. package/dist/types/sdk/base/types.d.ts +0 -50
  390. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  391. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  392. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +4 -3
  393. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  394. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  395. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  396. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  397. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  398. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +4 -3
  399. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +4 -3
  400. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  401. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  402. package/dist/types/sdk/market/credit/CreditSuite.d.ts +2 -1
  403. package/dist/types/sdk/market/credit/types.d.ts +2 -1
  404. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +0 -1
  405. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +3 -2
  406. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +12 -3
  407. package/dist/types/sdk/market/oracle/types.d.ts +10 -0
  408. package/dist/types/sdk/market/pool/GaugeContract.d.ts +3 -2
  409. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +3 -2
  410. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +3 -2
  411. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +3 -2
  412. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +5 -4
  413. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +5 -4
  414. package/dist/types/sdk/market/pool/TumblerContract.d.ts +3 -2
  415. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +8 -3
  416. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +3 -2
  417. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +3 -2
  418. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +3 -2
  419. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  420. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  421. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  422. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +3 -2
  423. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +3 -2
  424. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +3 -2
  425. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +3 -2
  426. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  427. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +3 -2
  428. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  429. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +4 -3
  430. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +2 -1
  431. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  432. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  433. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +3 -2
  434. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +3 -2
  435. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  436. package/dist/types/sdk/market/pricefeeds/types.d.ts +5 -0
  437. package/dist/types/sdk/router/AbstractRouterContract.d.ts +15 -8
  438. package/dist/types/sdk/router/RouterV300Contract.d.ts +3 -4
  439. package/dist/types/sdk/router/RouterV310Contract.d.ts +2 -3
  440. package/dist/types/sdk/router/types.d.ts +14 -5
  441. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  442. package/dist/types/sdk/utils/index.d.ts +0 -1
  443. package/package.json +1 -1
  444. package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +0 -49
  445. package/dist/cjs/sdk/base/ChainContractsRegister.js +0 -135
  446. package/dist/cjs/sdk/base/Construct.js +0 -87
  447. package/dist/cjs/sdk/utils/abi-decode.js +0 -58
  448. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +0 -29
  449. package/dist/esm/sdk/base/ChainContractsRegister.js +0 -111
  450. package/dist/esm/sdk/base/Construct.js +0 -63
  451. package/dist/esm/sdk/utils/abi-decode.js +0 -37
  452. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +0 -3
  453. package/dist/types/sdk/base/ChainContractsRegister.d.ts +0 -57
  454. package/dist/types/sdk/base/Construct.d.ts +0 -38
  455. package/dist/types/sdk/utils/abi-decode.d.ts +0 -10
@@ -27,7 +27,9 @@ var import_createCreditAccountService = require("../accounts/createCreditAccount
27
27
  var import_base = require("../base/index.js");
28
28
  var import_chains = require("../chain/chains.js");
29
29
  var import_versions = require("../constants/versions.js");
30
+ var import_utils = require("../utils/index.js");
30
31
  class AbstractMigrateCreditAccountsService extends import_base.SDKConstruct {
32
+ #logger;
31
33
  #version;
32
34
  #service;
33
35
  // TODO: HARDCODED
@@ -49,7 +51,8 @@ class AbstractMigrateCreditAccountsService extends import_base.SDKConstruct {
49
51
  super(sdk);
50
52
  this.#version = version;
51
53
  this.#service = (0, import_createCreditAccountService.createCreditAccountService)(this.sdk, version);
52
- this.logger?.debug(
54
+ this.#logger = (0, import_utils.childLogger)("MigrateCreditAccountsService", sdk.logger);
55
+ this.#logger?.debug(
53
56
  `Created MigrateCreditAccountsService with version: ${this.#version}`
54
57
  );
55
58
  }
@@ -44,6 +44,7 @@ function getWithdrawalCompressorAddress(chainId) {
44
44
  class AbstractCreditAccountService extends import_base.SDKConstruct {
45
45
  #compressor;
46
46
  #batchSize;
47
+ #logger;
47
48
  constructor(sdk, options) {
48
49
  super(sdk);
49
50
  [this.#compressor] = sdk.addressProvider.mustGetLatest(
@@ -51,7 +52,8 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
51
52
  import_constants.VERSION_RANGE_310
52
53
  );
53
54
  this.#batchSize = options?.batchSize;
54
- this.logger?.debug(
55
+ this.#logger = (0, import_utils.childLogger)("CreditAccountsService", sdk.logger);
56
+ this.#logger?.debug(
55
57
  `credit account compressor address: ${this.#compressor}`
56
58
  );
57
59
  }
@@ -153,7 +155,7 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
153
155
  offset = newOffset;
154
156
  } while (offset !== 0n);
155
157
  }
156
- this.logger?.debug(
158
+ this.#logger?.debug(
157
159
  `loaded ${allCAs.length} credit accounts (${allCAs.length - revertingOffset} reverting)`
158
160
  );
159
161
  return allCAs.sort((a, b) => Number(a.healthFactor - b.healthFactor));
@@ -264,7 +266,8 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
264
266
  force = false,
265
267
  keepAssets,
266
268
  ignoreReservePrices,
267
- applyLossPolicy
269
+ applyLossPolicy,
270
+ debtOnly
268
271
  } = props;
269
272
  const cm = this.sdk.marketRegister.findCreditManager(account.creditManager);
270
273
  const routerCloseResult = await this.sdk.routerFor(account).findBestClosePath({
@@ -272,7 +275,8 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
272
275
  creditManager: cm.creditManager,
273
276
  slippage,
274
277
  force,
275
- keepAssets
278
+ keepAssets,
279
+ debtOnly
276
280
  });
277
281
  const priceUpdates = await this.getPriceUpdatesForFacade({
278
282
  creditManager: account.creditManager,
@@ -288,7 +292,7 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
288
292
  lossPolicyData = await market.lossPolicy.getLiquidationData(
289
293
  account.creditAccount
290
294
  );
291
- this.logger?.debug({ lossPolicyData }, "loss policy data");
295
+ this.#logger?.debug({ lossPolicyData }, "loss policy data");
292
296
  }
293
297
  const tx = cm.creditFacade.liquidateCreditAccount(
294
298
  account.creditAccount,
@@ -846,7 +850,7 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
846
850
  gas: this.sdk.gasLimit
847
851
  });
848
852
  }
849
- this.logger?.debug(
853
+ this.#logger?.debug(
850
854
  {
851
855
  accounts: resp[0]?.length ?? 0,
852
856
  nextOffset: Number(resp[1])
@@ -926,7 +930,7 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
926
930
  });
927
931
  const tStr = Array.from(tokens).map((t) => this.labelAddress(t)).join(", ");
928
932
  const remark = ignoreReservePrices ? " main" : "";
929
- this.logger?.debug(
933
+ this.#logger?.debug(
930
934
  { account: creditAccount?.creditAccount, manager: cm.name },
931
935
  `generating price feed updates for ${tStr} from ${priceFeeds.length}${remark} price feeds`
932
936
  );
@@ -942,7 +946,7 @@ class AbstractCreditAccountService extends import_base.SDKConstruct {
942
946
  const market = this.sdk.marketRegister.findByCreditManager(creditManager);
943
947
  const cm = this.sdk.marketRegister.findCreditManager(creditManager);
944
948
  const update = await this.getUpdateForAccount(options);
945
- this.logger?.debug(
949
+ this.#logger?.debug(
946
950
  { account: creditAccount?.creditAccount, manager: cm.name },
947
951
  `getting on demand price updates from ${update.txs.length} txs`
948
952
  );
@@ -34,15 +34,17 @@ class CreditAccountServiceV310 extends import_AbstractCreditAccountsService.Abst
34
34
  botAddress,
35
35
  botBaseType,
36
36
  stopBot,
37
- creditAccount: ca
37
+ targetContract
38
38
  }) {
39
- const cm = this.sdk.marketRegister.findCreditManager(ca.creditManager);
40
- const priceUpdatesCalls = await this.getPriceUpdatesForFacade({
41
- creditManager: ca.creditManager,
42
- creditAccount: ca
43
- });
39
+ const cm = this.sdk.marketRegister.findCreditManager(
40
+ targetContract.creditManager
41
+ );
42
+ const priceUpdatesCalls = targetContract.type === "creditAccount" ? await this.getPriceUpdatesForFacade({
43
+ creditManager: targetContract.creditManager,
44
+ creditAccount: targetContract
45
+ }) : [];
44
46
  const addBotCall = {
45
- target: ca.creditFacade,
47
+ target: cm.creditFacade.address,
46
48
  callData: (0, import_viem.encodeFunctionData)({
47
49
  abi: import_generated.iCreditFacadeMulticallV310Abi,
48
50
  functionName: "setBotPermissions",
@@ -50,7 +52,7 @@ class CreditAccountServiceV310 extends import_AbstractCreditAccountsService.Abst
50
52
  })
51
53
  };
52
54
  const calls = [...priceUpdatesCalls, addBotCall];
53
- const tx = cm.creditFacade.multicall(ca.creditAccount, calls);
55
+ const tx = targetContract.type === "creditAccount" ? cm.creditFacade.multicall(targetContract.creditAccount, calls) : void 0;
54
56
  return { tx, calls, creditFacade: cm.creditFacade };
55
57
  }
56
58
  /**
@@ -0,0 +1,49 @@
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 AddressLabeller_exports = {};
20
+ __export(AddressLabeller_exports, {
21
+ AddressLabeller: () => AddressLabeller
22
+ });
23
+ module.exports = __toCommonJS(AddressLabeller_exports);
24
+ var import_constants = require("../constants/index.js");
25
+ var import_utils = require("../utils/index.js");
26
+ class AddressLabeller {
27
+ #labels = new import_utils.AddressMap(void 0, "addressLabeller");
28
+ set(address, label) {
29
+ if (address === import_constants.NOT_DEPLOYED) {
30
+ return;
31
+ }
32
+ if (typeof label === "string") {
33
+ this.#labels.upsert(address, label);
34
+ } else {
35
+ this.#labels.upsert(address, label(this.#labels.get(address)));
36
+ }
37
+ }
38
+ get(address) {
39
+ const label = this.#labels.get(address);
40
+ return label ? `${address} [${label}]` : address;
41
+ }
42
+ get all() {
43
+ return this.#labels.asRecord();
44
+ }
45
+ }
46
+ // Annotate the CommonJS export names for ESM import in node:
47
+ 0 && (module.exports = {
48
+ AddressLabeller
49
+ });
@@ -18,61 +18,66 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var BaseContract_exports = {};
20
20
  __export(BaseContract_exports, {
21
- BaseContract: () => BaseContract,
22
- ContractParseError: () => ContractParseError
21
+ BaseContract: () => BaseContract
23
22
  });
24
23
  module.exports = __toCommonJS(BaseContract_exports);
25
24
  var import_viem = require("viem");
26
25
  var import_errors = require("../../abi/errors.js");
26
+ var import_iVersion = require("../../abi/iVersion.js");
27
+ var import_constants = require("../constants/index.js");
27
28
  var import_utils = require("../utils/index.js");
28
- var import_Construct = require("./Construct.js");
29
- class ContractParseError extends import_viem.BaseError {
30
- address;
31
- callData;
32
- selector;
33
- constructor(cause, options) {
34
- const { address, callData, contractName } = options;
35
- const selector = callData.slice(0, 10);
36
- super(
37
- `failed to parse function data for ${contractName ?? "unknown contract"} at ${address} with selector ${selector}`,
38
- {
39
- cause
40
- }
41
- );
42
- this.callData = callData;
43
- this.selector = selector;
44
- this.address = address;
45
- }
46
- }
47
- class BaseContract extends import_Construct.Construct {
29
+ var import_SDKConstruct = require("./SDKConstruct.js");
30
+ class BaseContract extends import_SDKConstruct.SDKConstruct {
48
31
  contract;
49
32
  abi;
33
+ logger;
50
34
  contractType;
51
35
  version;
52
- address;
53
- name;
54
- constructor({ client, logger }, args) {
55
- super({ client, logger });
36
+ #name;
37
+ #address;
38
+ constructor(sdk, args) {
39
+ super(sdk);
56
40
  this.abi = args.abi;
57
- this.address = (0, import_viem.getAddress)(args.addr);
41
+ this.#address = (0, import_viem.getAddress)(args.addr);
58
42
  this.contract = (0, import_viem.getContract)({
59
43
  address: this.address,
60
44
  // add exceptions for better error decoding
61
45
  abi: [...this.abi, ...import_errors.errorAbis],
62
- client
46
+ client: {
47
+ public: sdk.client
48
+ }
63
49
  });
64
50
  this.version = Number(args.version || 0);
65
51
  this.contractType = args.contractType ?? "";
66
52
  if ((0, import_viem.isHex)(this.contractType)) {
67
53
  this.contractType = (0, import_utils.bytes32ToString)(this.contractType);
68
54
  }
69
- this.name = args.name || this.contractType || this.address || this.constructor.name;
70
- this.register.setContract(this.address, this);
71
- this.register.setAddressLabel(this.address, this.name);
55
+ this.name = this.#name = args.name || this.contractType || this.#address;
56
+ this.logger = (0, import_utils.childLogger)(this.name, sdk.logger);
57
+ sdk.contracts.upsert(this.address, this);
58
+ }
59
+ get address() {
60
+ return this.#address;
61
+ }
62
+ set address(address) {
63
+ if (this.#address !== import_constants.ADDRESS_0X0) {
64
+ throw new Error(`Address can't be changed, currently: ${this.#address}`);
65
+ }
66
+ this.#address = (0, import_viem.getAddress)(address);
67
+ this.sdk.addressLabels.set(address, this.#name);
68
+ }
69
+ get name() {
70
+ return this.#name;
71
+ }
72
+ set name(name) {
73
+ this.#name = name;
74
+ if (this.#address !== import_constants.ADDRESS_0X0) {
75
+ this.sdk.addressLabels.set(this.#address, name);
76
+ }
72
77
  }
73
78
  stateHuman(_ = true) {
74
79
  return {
75
- address: this.labelAddress(this.address),
80
+ address: this.sdk.labelAddress(this.address),
76
81
  version: this.version,
77
82
  contractType: this.contractType
78
83
  };
@@ -83,69 +88,15 @@ class BaseContract extends import_Construct.Construct {
83
88
  */
84
89
  processLog(_log) {
85
90
  }
86
- /**
87
- * Return parsed args and function name from calldata belonging to this contract
88
- * Target of the call is always this contract, but args can be parsed into calls to other contracts (de-facto recursive ParsedCall)
89
- * @param calldata
90
- * @returns
91
- */
92
- parseFunctionData(calldata) {
93
- try {
94
- return this.mustParseFunctionData(calldata);
95
- } catch (e) {
96
- this.logger?.warn(e);
97
- return {
98
- chainId: this.chainId,
99
- target: this.address,
100
- contractType: this.contractType,
101
- label: this.name,
102
- functionName: `Unknown function: ${calldata}`,
103
- args: {}
104
- };
105
- }
106
- }
107
- /**
108
- * Same as {@link parseFunctionData}, but throws {@link ContractParseError} if error occurs
109
- * @param callData
110
- * @returns
111
- */
112
- mustParseFunctionData(callData) {
113
- try {
114
- const decoded = (0, import_viem.decodeFunctionData)({
115
- abi: this.abi,
116
- data: callData
117
- });
118
- return this.wrapParseCall(
119
- decoded.functionName,
120
- this.parseFunctionParams(decoded)
121
- );
122
- } catch (e) {
123
- throw new ContractParseError(e, {
124
- address: this.address,
125
- callData,
126
- contractName: this.name
127
- });
128
- }
129
- }
130
- /**
131
- * Parses viem-decoded contract function arguments to a map of named arguments
132
- * This default implementation uses abi-based parsing, you can override it,
133
- * but use this super implementation as fallback
134
- * @param params
135
- * @returns
136
- */
137
- parseFunctionParams(params) {
138
- return (0, import_utils.functionArgsToMap)(this.abi, params.functionName, params.args);
139
- }
140
91
  /**
141
92
  * Converts contract calldata to some human-friendly string
142
93
  * This is safe function which should not throw
143
94
  * @param calldata
144
95
  * @returns
145
96
  */
146
- stringifyFunctionData(calldata) {
97
+ parseFunctionData(calldata) {
147
98
  try {
148
- return this.mustStringifyFunctionData(calldata);
99
+ return this.mustParseFunctionData(calldata);
149
100
  } catch (e) {
150
101
  const selector = calldata.slice(0, 10);
151
102
  this.logger?.warn(
@@ -154,64 +105,59 @@ class BaseContract extends import_Construct.Construct {
154
105
  return `unknown: ${this.labelAddress(this.address)}.${selector}`;
155
106
  }
156
107
  }
157
- /**
158
- * Same as {@link stingifyFunctionData}, but throws if error occurs
159
- * @param calldata
160
- * @returns
161
- */
162
- mustStringifyFunctionData(calldata) {
108
+ mustParseFunctionData(calldata) {
163
109
  const decoded = (0, import_viem.decodeFunctionData)({
164
110
  abi: this.abi,
165
111
  data: calldata
166
112
  });
167
- const abiItem = (0, import_viem.getAbiItem)({
168
- abi: this.abi,
169
- name: decoded.functionName,
170
- args: decoded.args
171
- });
172
- if (!abiItem || abiItem.type !== "function") {
113
+ const abiItem = this.abi.find(
114
+ (abiItem2) => abiItem2?.name === decoded.functionName && abiItem2?.type === "function"
115
+ );
116
+ if (!abiItem) {
173
117
  return `Unknown function: ${decoded.functionName}`;
174
118
  }
175
- const params = this.stringifyFunctionParams(decoded).map(
176
- (v, i) => `${abiItem.inputs[i].name}: ${v}`
177
- );
178
- return `${this.name}.${decoded.functionName}({${params.join(", ")}})`;
119
+ let paramsHuman;
120
+ const humanParams = this.parseFunctionParams(decoded);
121
+ if (humanParams) {
122
+ paramsHuman = humanParams.map((value, i) => {
123
+ return `${abiItem.inputs[i].name}: ${value}`;
124
+ });
125
+ } else if (Array.isArray(decoded.args)) {
126
+ paramsHuman = decoded.args.map((value, i) => {
127
+ return `${abiItem.inputs[i].name}: ${abiItem.inputs[i].type === "address" ? this.labelAddress(value) : abiItem.inputs[i].type.startsWith("tuple") ? (0, import_utils.json_stringify)(value) : value}`;
128
+ });
129
+ } else {
130
+ paramsHuman = Object.entries(decoded.args || {}).map(
131
+ ([key, value]) => `${key}: ${value}`
132
+ );
133
+ }
134
+ return `${this.name}.${decoded.functionName}({${paramsHuman.join(", ")}})`;
179
135
  }
180
136
  /**
181
- * Pretty-prints values of function arguments (do not include parameter names)
182
- * Can be overriden in classes, but use this super implementation as fallback
183
- *
184
- * @param decoded - Function arguments decoded by viem
137
+ * Return args and function name from calldata
138
+ * @param calldata
185
139
  * @returns
186
140
  */
187
- stringifyFunctionParams(decoded) {
188
- const abiItem = (0, import_viem.getAbiItem)({
141
+ parseFunctionDataToObject(calldata) {
142
+ const decoded = (0, import_viem.decodeFunctionData)({
189
143
  abi: this.abi,
190
- name: decoded.functionName,
191
- args: decoded.args
144
+ data: calldata
192
145
  });
193
- if (Array.isArray(decoded.args)) {
194
- return decoded.args.map((v, i) => {
195
- return abiItem.inputs[i].type === "address" ? this.labelAddress(v) : abiItem.inputs[i].type.startsWith("tuple") ? (0, import_utils.json_stringify)(v) : `${v}`;
196
- });
197
- }
198
- return Object.entries(decoded.args || {}).map((v) => `${v}`);
146
+ return decoded;
199
147
  }
200
- wrapParseCall(functionName, args) {
201
- return {
202
- chainId: this.chainId,
203
- target: this.address,
204
- contractType: this.contractType,
205
- label: this.register.labelAddress(this.address),
206
- functionName,
207
- args
208
- };
148
+ parseFunctionParams(_params) {
149
+ return void 0;
150
+ }
151
+ async getVersion() {
152
+ this.version = Number(
153
+ await this.sdk.client.readContract({
154
+ abi: import_iVersion.iVersionAbi,
155
+ functionName: "version",
156
+ address: this.address
157
+ })
158
+ );
159
+ return this.version;
209
160
  }
210
- /**
211
- * Creates a raw transaction for a function in this contract
212
- * @param parameters
213
- * @returns
214
- */
215
161
  createRawTx(parameters) {
216
162
  const { description: argsDescription } = parameters;
217
163
  const tx = (0, import_utils.createRawTx)(
@@ -222,72 +168,11 @@ class BaseContract extends import_Construct.Construct {
222
168
  },
223
169
  argsDescription
224
170
  );
225
- tx.description = argsDescription || this.stringifyFunctionData(tx.callData);
171
+ tx.description = argsDescription || this.parseFunctionData(tx.callData);
226
172
  return tx;
227
173
  }
228
- /**
229
- * Get events in safe manner, by bisecting block range if needed
230
- *
231
- * @deprecated TODO: this should be moved to viem transport
232
- *
233
- * @param eventName
234
- * @param fromBlock
235
- * @param toBlock
236
- * @param args
237
- * @param chunkSize
238
- * @returns
239
- */
240
- async getEvents(eventName, fromBlock, toBlock, args, chunkSize) {
241
- if (chunkSize) {
242
- const chunkSizeBigint = BigInt(chunkSize);
243
- const getEventPromises = [];
244
- for (let i = fromBlock; i < toBlock; i += chunkSizeBigint) {
245
- getEventPromises.push(
246
- this.client.getContractEvents({
247
- address: this.address,
248
- fromBlock: i,
249
- toBlock: i + chunkSizeBigint,
250
- abi: this.abi,
251
- eventName,
252
- args
253
- })
254
- );
255
- }
256
- const events = (await Promise.all(getEventPromises)).flat();
257
- return events;
258
- }
259
- try {
260
- const events = await this.client.getContractEvents({
261
- address: this.address,
262
- fromBlock,
263
- toBlock,
264
- abi: this.abi,
265
- eventName,
266
- args
267
- });
268
- return events;
269
- } catch (e) {
270
- const blockRangeErrors = [
271
- "query exceeds max block",
272
- "range is too large",
273
- "eth_getLogs is limited to",
274
- "Unable to perform request",
275
- "Block range limit exceeded"
276
- ];
277
- if (e instanceof Error && blockRangeErrors.some((errorText) => e.message.includes(errorText))) {
278
- const middle = (fromBlock + toBlock) / 2n;
279
- const [firstHalfEvents, secondHalfEvents] = await Promise.all([
280
- this.getEvents(eventName, fromBlock, middle, args),
281
- this.getEvents(eventName, middle + 1n, toBlock, args)
282
- ]);
283
- return [...firstHalfEvents, ...secondHalfEvents];
284
- }
285
- throw e;
286
- }
287
- }
288
174
  }
289
175
  // Annotate the CommonJS export names for ESM import in node:
290
176
  0 && (module.exports = {
291
- BaseContract,
292
- ContractParseError
177
+ BaseContract
293
178
  });
@@ -0,0 +1,16 @@
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 __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var IAddressLabeller_exports = {};
16
+ module.exports = __toCommonJS(IAddressLabeller_exports);
@@ -21,13 +21,39 @@ __export(SDKConstruct_exports, {
21
21
  SDKConstruct: () => SDKConstruct
22
22
  });
23
23
  module.exports = __toCommonJS(SDKConstruct_exports);
24
- var import_Construct = require("./Construct.js");
25
- class SDKConstruct extends import_Construct.Construct {
24
+ class SDKConstruct {
26
25
  sdk;
26
+ /**
27
+ * Indicates that contract state needs to be updated
28
+ */
29
+ #dirty = false;
27
30
  constructor(sdk) {
28
- super(sdk);
29
31
  this.sdk = sdk;
30
32
  }
33
+ get networkType() {
34
+ return this.sdk.networkType;
35
+ }
36
+ get client() {
37
+ return this.sdk.client;
38
+ }
39
+ /**
40
+ * Indicates that contract state needs to be updated
41
+ */
42
+ get dirty() {
43
+ return this.#dirty;
44
+ }
45
+ set dirty(value) {
46
+ this.#dirty = value;
47
+ }
48
+ labelAddress(address) {
49
+ return this.sdk.labelAddress(address);
50
+ }
51
+ /**
52
+ * Returns list of addresses that should be watched for events to sync state
53
+ */
54
+ get watchAddresses() {
55
+ return /* @__PURE__ */ new Set();
56
+ }
31
57
  }
32
58
  // Annotate the CommonJS export names for ESM import in node:
33
59
  0 && (module.exports = {
@@ -25,11 +25,11 @@ var import_iVersion = require("../../abi/iVersion.js");
25
25
  var import__ = require("../index.js");
26
26
  var import_utils = require("../utils/index.js");
27
27
  class TokensMeta extends import_utils.AddressMap {
28
- #client;
28
+ #sdk;
29
29
  #phantomTokensLoaded;
30
- constructor(client) {
30
+ constructor(sdk) {
31
31
  super(void 0, "tokensMeta");
32
- this.#client = client;
32
+ this.#sdk = sdk;
33
33
  }
34
34
  symbol(token) {
35
35
  return this.mustGet(token).symbol;
@@ -84,7 +84,7 @@ class TokensMeta extends import_utils.AddressMap {
84
84
  async loadPhantomTokens() {
85
85
  this.#phantomTokensLoaded = new import_utils.AddressSet();
86
86
  const tokens = this.keys();
87
- const resp = await this.#client.multicall({
87
+ const resp = await this.#sdk.client.multicall({
88
88
  contracts: tokens.map(
89
89
  (t) => ({
90
90
  address: t,
@@ -15,18 +15,16 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
15
15
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
16
  var base_exports = {};
17
17
  module.exports = __toCommonJS(base_exports);
18
+ __reExport(base_exports, require("./AddressLabeller.js"), module.exports);
18
19
  __reExport(base_exports, require("./BaseContract.js"), module.exports);
19
- __reExport(base_exports, require("./ChainContractsRegister.js"), module.exports);
20
- __reExport(base_exports, require("./Construct.js"), module.exports);
21
20
  __reExport(base_exports, require("./PlaceholderContract.js"), module.exports);
22
21
  __reExport(base_exports, require("./SDKConstruct.js"), module.exports);
23
22
  __reExport(base_exports, require("./TokensMeta.js"), module.exports);
24
23
  __reExport(base_exports, require("./types.js"), module.exports);
25
24
  // Annotate the CommonJS export names for ESM import in node:
26
25
  0 && (module.exports = {
26
+ ...require("./AddressLabeller.js"),
27
27
  ...require("./BaseContract.js"),
28
- ...require("./ChainContractsRegister.js"),
29
- ...require("./Construct.js"),
30
28
  ...require("./PlaceholderContract.js"),
31
29
  ...require("./SDKConstruct.js"),
32
30
  ...require("./TokensMeta.js"),
@@ -32,7 +32,7 @@ class BotListContract extends import_base.BaseContract {
32
32
  super(sdk, { addr: address, name: "BotListV3", abi });
33
33
  this.#currentBlock = sdk.chain.firstBlock ?? 0n;
34
34
  }
35
- stringifyFunctionParams(params) {
35
+ parseFunctionParams(params) {
36
36
  switch (params.functionName) {
37
37
  case "setCreditManagerApprovedStatus": {
38
38
  const [creditManager, status] = params.args;
@@ -47,7 +47,7 @@ class BotListContract extends import_base.BaseContract {
47
47
  ];
48
48
  }
49
49
  default:
50
- return super.stringifyFunctionParams(params);
50
+ return void 0;
51
51
  }
52
52
  }
53
53
  async syncState(toBlock) {
@@ -29,14 +29,14 @@ class GearStakingContract extends import_base.BaseContract {
29
29
  constructor(sdk, address) {
30
30
  super(sdk, { addr: address, name: "GearStakingV3", abi });
31
31
  }
32
- stringifyFunctionParams(params) {
32
+ parseFunctionParams(params) {
33
33
  switch (params.functionName) {
34
34
  case "setVotingContractStatus": {
35
35
  const [address, status] = params.args;
36
36
  return [this.labelAddress(address), import_base.VotingContractStatus[status]];
37
37
  }
38
38
  default:
39
- return super.stringifyFunctionParams(params);
39
+ return void 0;
40
40
  }
41
41
  }
42
42
  stateHuman(raw = true) {