@gearbox-protocol/sdk 13.0.0-next.9 → 13.1.0-next.1
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.
- package/dist/cjs/abi/310/iLinearInterestRateModelV310.js +92 -0
- package/dist/cjs/abi/310/iSecuritizeDegenNFT.js +263 -0
- package/dist/cjs/abi/310/iSecuritizeKYCFactory.js +278 -0
- package/dist/cjs/abi/errors.js +0 -145
- package/dist/cjs/abi/iPriceFeed.js +84 -0
- package/dist/cjs/{sdk/sdk-gov-legacy/oracles → common-utils}/index.js +4 -4
- package/dist/cjs/common-utils/package.json +1 -0
- package/dist/cjs/common-utils/utils/assetsMath.js +216 -0
- package/dist/cjs/common-utils/utils/bigintMath.js +65 -0
- package/dist/cjs/common-utils/utils/creditAccount/calcHealthFactor.js +76 -0
- package/dist/cjs/common-utils/utils/creditAccount/calcOverallAPY.js +81 -0
- package/dist/cjs/{sdk/accountMigration/MigrateCreditAccountsServiceV310.js → common-utils/utils/creditAccount/calcQuotaBorrowRate.js} +19 -7
- package/dist/cjs/{sdk/sdk-legacy/gearboxRewards/merklAPI.js → common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.js} +11 -7
- package/dist/cjs/common-utils/utils/creditAccount/debt.js +64 -0
- package/dist/cjs/{sdk/accountMigration/MigrateCreditAccountsServiceV300.js → common-utils/utils/creditAccount/getTimeToLiquidation.js} +15 -7
- package/dist/cjs/common-utils/utils/creditAccount/index.js +40 -0
- package/dist/cjs/common-utils/utils/creditAccount/liquidationPrice.js +47 -0
- package/dist/cjs/common-utils/utils/creditAccount/quotaUtils.js +149 -0
- package/dist/cjs/common-utils/utils/creditAccount/sort.js +95 -0
- package/dist/cjs/common-utils/utils/endpoints.js +65 -0
- package/dist/cjs/{sdk/sdk-legacy → common-utils}/utils/index.js +10 -6
- package/dist/cjs/common-utils/utils/priceMath.js +66 -0
- package/dist/cjs/dev/AccountOpener.js +47 -7
- package/dist/cjs/dev/ltUtils.js +4 -91
- package/dist/cjs/dev/migrateFaucet.js +25 -53
- package/dist/cjs/dev/providers.js +12 -0
- package/dist/cjs/history/assembleOperations.js +103 -0
- package/dist/cjs/history/classifyMulticallOperations.js +157 -0
- package/dist/cjs/history/errors.js +91 -0
- package/dist/cjs/history/extractProtocolCalls.js +53 -0
- package/dist/cjs/history/extractTransfers.js +168 -0
- package/dist/cjs/history/findFacadeCalls.js +84 -0
- package/dist/cjs/history/index.js +39 -0
- package/dist/cjs/history/inner-operations.js +16 -0
- package/dist/cjs/{sdk/gauges/utils.js → history/internal-types.js} +2 -2
- package/dist/cjs/history/mapOperations.js +79 -0
- package/dist/cjs/history/package.json +1 -0
- package/dist/cjs/history/parseCreditAccountTransaction.js +86 -0
- package/dist/cjs/history/populateContractsRegister.js +68 -0
- package/dist/cjs/history/toLegacyOperation.js +182 -0
- package/dist/cjs/{plugins/adapters/contracts/YearnV2AdapterContract.js → history/trace-utils.js} +36 -21
- package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +3 -3
- package/dist/cjs/permissionless/bindings/instance-manager.js +3 -3
- package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -6
- package/dist/cjs/plugins/adapters/AdaptersPlugin.js +13 -106
- package/dist/cjs/plugins/adapters/abi/index.js +2 -0
- package/dist/cjs/plugins/adapters/abi/targetContractAbi.js +5168 -0
- package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +123 -3
- package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
- package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +65 -30
- package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +27 -11
- package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +40 -21
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +100 -25
- package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +74 -25
- package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +79 -31
- package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +79 -31
- package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +84 -31
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +80 -33
- package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +62 -26
- package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +92 -34
- package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +46 -14
- package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +62 -27
- package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +46 -14
- package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +34 -14
- package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +56 -23
- package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +31 -14
- package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +28 -12
- package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +35 -16
- package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +47 -17
- package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +29 -11
- package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +45 -14
- package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +42 -17
- package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +79 -42
- package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +34 -14
- package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +27 -11
- package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +44 -17
- package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +49 -21
- package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +92 -55
- package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +71 -37
- package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +55 -25
- package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +44 -21
- package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +42 -23
- package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +53 -27
- package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +42 -17
- package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +46 -25
- package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +37 -11
- package/dist/cjs/plugins/adapters/contracts/index.js +7 -15
- package/dist/cjs/plugins/adapters/createAdapter.js +125 -0
- package/dist/cjs/plugins/adapters/index.js +6 -0
- package/dist/cjs/plugins/adapters/legacyAdapterOperations.js +16 -0
- package/dist/cjs/plugins/adapters/transferHelpers.js +127 -0
- package/dist/cjs/plugins/bots/PartialLiquidationBotV310Contract.js +4 -4
- package/dist/cjs/plugins/bots/abi/index.js +0 -2
- package/dist/cjs/plugins/degen-distributors/DegenDistributorsPlugin.js +2 -1
- package/dist/cjs/plugins/pools-history/Pools7DAgoPlugin.js +1 -1
- package/dist/cjs/sdk/GearboxSDK.js +6 -14
- package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +479 -188
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +27 -17
- package/dist/cjs/sdk/accounts/createCreditAccountService.js +0 -4
- package/dist/cjs/sdk/accounts/index.js +0 -2
- package/dist/cjs/sdk/base/BaseContract.js +60 -6
- package/dist/cjs/sdk/base/ChainContractsRegister.js +34 -11
- package/dist/cjs/sdk/base/Construct.js +29 -15
- package/dist/cjs/sdk/base/PlaceholderContract.js +2 -2
- package/dist/cjs/sdk/base/SDKConstruct.js +1 -1
- package/dist/cjs/sdk/base/TokensMeta.js +154 -11
- package/dist/cjs/sdk/{sdk-legacy/utils/math.js → base/errors.js} +12 -10
- package/dist/cjs/sdk/base/index.js +2 -0
- package/dist/cjs/sdk/chain/chains.js +11 -28
- package/dist/cjs/sdk/constants/addresses.js +2 -88
- package/dist/cjs/sdk/constants/networks.js +0 -32
- package/dist/cjs/sdk/constants/versions.js +0 -8
- package/dist/cjs/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
- package/dist/cjs/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
- package/dist/cjs/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -7
- package/dist/cjs/sdk/core/index.js +6 -6
- package/dist/cjs/sdk/{sdk-gov-legacy/tokens/aave.js → core/types.js} +2 -2
- package/dist/cjs/sdk/index.js +0 -10
- package/dist/cjs/sdk/market/MarketConfiguratorContract.js +3 -2
- package/dist/cjs/sdk/market/MarketRegister.js +0 -1
- package/dist/cjs/sdk/market/MarketSuite.js +4 -1
- package/dist/cjs/sdk/market/adapters/PlaceholderAdapterContracts.js +25 -4
- package/dist/cjs/sdk/market/adapters/{factory.js → createAdapter.js} +3 -3
- package/dist/cjs/sdk/market/adapters/index.js +2 -2
- package/dist/cjs/sdk/market/credit/CreditFacadeV310BaseContract.js +108 -0
- package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +3 -40
- package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditConfigurator.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditFacade.js +1 -4
- package/dist/cjs/sdk/market/credit/createCreditManager.js +1 -4
- package/dist/cjs/sdk/market/credit/index.js +2 -6
- package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +9 -57
- package/dist/cjs/sdk/market/oracle/createPriceOracle.js +7 -38
- package/dist/cjs/sdk/market/oracle/index.js +0 -2
- package/dist/cjs/sdk/market/pool/GaugeContract.js +3 -3
- package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/cjs/sdk/market/pool/PoolSuite.js +3 -0
- package/dist/cjs/sdk/market/pool/PoolV310Contract.js +18 -3
- package/dist/cjs/sdk/market/pool/SecuritizeKYCFactory.js +97 -0
- package/dist/cjs/sdk/market/pool/createPool.js +0 -4
- package/dist/cjs/sdk/market/pool/createPoolQuotaKeeper.js +0 -4
- package/dist/cjs/sdk/market/pool/index.js +4 -4
- package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
- package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +5 -3
- package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +20 -0
- package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +19 -46
- package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
- package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -7
- package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +6 -6
- package/dist/cjs/sdk/market/pricefeeds/updates/fetchPythPayloads.js +7 -7
- package/dist/cjs/sdk/market/pricefeeds/updates/fetchRedstonePayloads.js +10 -10
- package/dist/cjs/sdk/plugins/index.js +1 -3
- package/dist/cjs/sdk/pools/PoolService.js +149 -18
- package/dist/cjs/sdk/router/AbstractRouterContract.js +0 -4
- package/dist/cjs/sdk/router/RouterV310Contract.js +3 -32
- package/dist/cjs/sdk/router/createRouter.js +0 -4
- package/dist/cjs/sdk/router/helpers.js +0 -5
- package/dist/cjs/sdk/router/index.js +0 -2
- package/dist/cjs/sdk/utils/AddressMap.js +1 -1
- package/dist/cjs/sdk/utils/abi-decode.js +43 -2
- package/dist/cjs/sdk/utils/formatter.js +55 -2
- package/dist/cjs/sdk/utils/viem/sendRawTx.js +16 -0
- package/dist/esm/abi/310/iLinearInterestRateModelV310.js +68 -0
- package/dist/esm/abi/310/iSecuritizeDegenNFT.js +239 -0
- package/dist/esm/abi/310/iSecuritizeKYCFactory.js +254 -0
- package/dist/esm/abi/errors.js +0 -143
- package/dist/esm/abi/iPriceFeed.js +60 -0
- package/dist/esm/common-utils/index.js +1 -0
- package/dist/esm/common-utils/package.json +1 -0
- package/dist/esm/{sdk/sdk-legacy/core/assets.js → common-utils/utils/assetsMath.js} +80 -14
- package/dist/esm/common-utils/utils/bigintMath.js +41 -0
- package/dist/esm/common-utils/utils/creditAccount/calcHealthFactor.js +55 -0
- package/dist/esm/common-utils/utils/creditAccount/calcOverallAPY.js +60 -0
- package/dist/esm/common-utils/utils/creditAccount/calcQuotaBorrowRate.js +18 -0
- package/dist/esm/common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.js +10 -0
- package/dist/esm/common-utils/utils/creditAccount/debt.js +43 -0
- package/dist/esm/common-utils/utils/creditAccount/getTimeToLiquidation.js +18 -0
- package/dist/esm/common-utils/utils/creditAccount/index.js +10 -0
- package/dist/esm/common-utils/utils/creditAccount/liquidationPrice.js +23 -0
- package/dist/esm/common-utils/utils/creditAccount/quotaUtils.js +125 -0
- package/dist/esm/common-utils/utils/creditAccount/sort.js +67 -0
- package/dist/esm/common-utils/utils/endpoints.js +41 -0
- package/dist/esm/common-utils/utils/index.js +5 -0
- package/dist/esm/common-utils/utils/priceMath.js +42 -0
- package/dist/esm/dev/AccountOpener.js +48 -7
- package/dist/esm/dev/ltUtils.js +7 -100
- package/dist/esm/dev/migrateFaucet.js +24 -51
- package/dist/esm/dev/providers.js +12 -0
- package/dist/esm/history/assembleOperations.js +79 -0
- package/dist/esm/history/classifyMulticallOperations.js +137 -0
- package/dist/esm/history/errors.js +62 -0
- package/dist/esm/history/extractProtocolCalls.js +32 -0
- package/dist/esm/history/extractTransfers.js +148 -0
- package/dist/esm/history/findFacadeCalls.js +63 -0
- package/dist/esm/history/index.js +9 -0
- package/dist/esm/history/mapOperations.js +55 -0
- package/dist/esm/history/package.json +1 -0
- package/dist/esm/history/parseCreditAccountTransaction.js +62 -0
- package/dist/esm/history/populateContractsRegister.js +52 -0
- package/dist/esm/history/toLegacyOperation.js +157 -0
- package/dist/esm/history/trace-utils.js +36 -0
- package/dist/esm/permissionless/bindings/cross-chain-multisig.js +3 -3
- package/dist/esm/permissionless/bindings/instance-manager.js +3 -3
- package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -6
- package/dist/esm/plugins/adapters/AdaptersPlugin.js +14 -148
- package/dist/esm/plugins/adapters/abi/index.js +1 -0
- package/dist/esm/plugins/adapters/abi/targetContractAbi.js +5113 -0
- package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +133 -4
- package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +8 -1
- package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +64 -30
- package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +27 -11
- package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +40 -21
- package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +109 -26
- package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +76 -25
- package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +81 -31
- package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +81 -31
- package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +86 -31
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +82 -33
- package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +64 -26
- package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +97 -34
- package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +48 -14
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +64 -27
- package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +48 -14
- package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +36 -14
- package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +58 -23
- package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +37 -15
- package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +33 -12
- package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +40 -16
- package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +49 -17
- package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +31 -11
- package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +47 -14
- package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +44 -17
- package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +82 -43
- package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +36 -14
- package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +29 -11
- package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +46 -17
- package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +55 -22
- package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +91 -54
- package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +73 -37
- package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +54 -25
- package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +45 -22
- package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +43 -24
- package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +57 -28
- package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +48 -18
- package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +46 -25
- package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +39 -11
- package/dist/esm/plugins/adapters/contracts/index.js +3 -7
- package/dist/esm/plugins/adapters/createAdapter.js +140 -0
- package/dist/esm/plugins/adapters/index.js +3 -0
- package/dist/esm/plugins/adapters/transferHelpers.js +95 -0
- package/dist/esm/plugins/bots/PartialLiquidationBotV310Contract.js +5 -8
- package/dist/esm/plugins/bots/abi/index.js +0 -1
- package/dist/esm/plugins/degen-distributors/DegenDistributorsPlugin.js +2 -1
- package/dist/esm/plugins/pools-history/Pools7DAgoPlugin.js +1 -2
- package/dist/esm/sdk/GearboxSDK.js +7 -23
- package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +483 -193
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +27 -17
- package/dist/esm/sdk/accounts/createCreditAccountService.js +1 -5
- package/dist/esm/sdk/accounts/index.js +0 -1
- package/dist/esm/sdk/base/BaseContract.js +62 -6
- package/dist/esm/sdk/base/ChainContractsRegister.js +34 -11
- package/dist/esm/sdk/base/Construct.js +29 -15
- package/dist/esm/sdk/base/PlaceholderContract.js +2 -2
- package/dist/esm/sdk/base/SDKConstruct.js +1 -1
- package/dist/esm/sdk/base/TokensMeta.js +158 -10
- package/dist/esm/sdk/base/errors.js +11 -0
- package/dist/esm/sdk/base/index.js +1 -0
- package/dist/esm/sdk/chain/chains.js +12 -28
- package/dist/esm/sdk/constants/addresses.js +1 -83
- package/dist/esm/sdk/constants/networks.js +0 -31
- package/dist/esm/sdk/constants/versions.js +0 -6
- package/dist/esm/sdk/core/{address-provider/AbstractAddressProviderContract.js → AbstractAddressProviderContract.js} +3 -3
- package/dist/esm/sdk/core/{address-provider/AddressProviderV310Contract.js → AddressProviderV310Contract.js} +1 -1
- package/dist/esm/sdk/core/{address-provider/createAddressProvider.js → createAddressProvider.js} +4 -8
- package/dist/esm/sdk/core/index.js +3 -3
- package/dist/esm/sdk/index.js +0 -5
- package/dist/esm/sdk/market/MarketConfiguratorContract.js +3 -2
- package/dist/esm/sdk/market/MarketRegister.js +0 -1
- package/dist/esm/sdk/market/MarketSuite.js +5 -2
- package/dist/esm/sdk/market/adapters/PlaceholderAdapterContracts.js +29 -5
- package/dist/esm/sdk/market/adapters/index.js +1 -1
- package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +86 -0
- package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +3 -43
- package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +1 -4
- package/dist/esm/sdk/market/credit/createCreditConfigurator.js +2 -5
- package/dist/esm/sdk/market/credit/createCreditFacade.js +2 -5
- package/dist/esm/sdk/market/credit/createCreditManager.js +2 -5
- package/dist/esm/sdk/market/credit/index.js +1 -3
- package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +10 -59
- package/dist/esm/sdk/market/oracle/createPriceOracle.js +7 -38
- package/dist/esm/sdk/market/oracle/index.js +0 -1
- package/dist/esm/sdk/market/pool/GaugeContract.js +3 -3
- package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
- package/dist/esm/sdk/market/pool/PoolSuite.js +3 -0
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +18 -3
- package/dist/esm/sdk/market/pool/SecuritizeKYCFactory.js +73 -0
- package/dist/esm/sdk/market/pool/createPool.js +1 -5
- package/dist/esm/sdk/market/pool/createPoolQuotaKeeper.js +1 -5
- package/dist/esm/sdk/market/pool/index.js +2 -2
- package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +14 -53
- package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +5 -3
- package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +21 -1
- package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +20 -47
- package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
- package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +7 -7
- package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +6 -6
- package/dist/esm/sdk/market/pricefeeds/updates/fetchPythPayloads.js +7 -7
- package/dist/esm/sdk/market/pricefeeds/updates/fetchRedstonePayloads.js +10 -10
- package/dist/esm/sdk/plugins/index.js +0 -1
- package/dist/esm/sdk/pools/PoolService.js +149 -18
- package/dist/esm/sdk/router/AbstractRouterContract.js +0 -4
- package/dist/esm/sdk/router/RouterV310Contract.js +3 -32
- package/dist/esm/sdk/router/createRouter.js +1 -5
- package/dist/esm/sdk/router/helpers.js +0 -4
- package/dist/esm/sdk/router/index.js +0 -1
- package/dist/esm/sdk/utils/AddressMap.js +1 -1
- package/dist/esm/sdk/utils/abi-decode.js +43 -2
- package/dist/esm/sdk/utils/formatter.js +37 -1
- package/dist/esm/sdk/utils/viem/sendRawTx.js +19 -1
- package/dist/types/abi/310/iLinearInterestRateModelV310.d.ts +111 -0
- package/dist/types/{sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts → abi/310/iSecuritizeDegenNFT.d.ts} +115 -239
- package/dist/types/{sdk/core/BotListV3Contract.d.ts → abi/310/iSecuritizeKYCFactory.d.ts} +146 -147
- package/dist/types/abi/errors.d.ts +186 -996
- package/dist/types/abi/iPriceFeed.d.ts +87 -0
- package/dist/types/common-utils/index.d.ts +1 -0
- package/dist/types/common-utils/utils/assetsMath.d.ts +114 -0
- package/dist/types/common-utils/utils/bigintMath.d.ts +43 -0
- package/dist/types/common-utils/utils/creditAccount/calcHealthFactor.d.ts +25 -0
- package/dist/types/common-utils/utils/creditAccount/calcOverallAPY.d.ts +37 -0
- package/dist/types/common-utils/utils/creditAccount/calcQuotaBorrowRate.d.ts +18 -0
- package/dist/types/common-utils/utils/creditAccount/calcRelativeBaseBorrowRate.d.ts +15 -0
- package/dist/types/common-utils/utils/creditAccount/debt.d.ts +35 -0
- package/dist/types/common-utils/utils/creditAccount/getTimeToLiquidation.d.ts +16 -0
- package/dist/types/common-utils/utils/creditAccount/index.d.ts +10 -0
- package/dist/types/common-utils/utils/creditAccount/liquidationPrice.d.ts +25 -0
- package/dist/types/common-utils/utils/creditAccount/quotaUtils.d.ts +81 -0
- package/dist/types/common-utils/utils/creditAccount/sort.d.ts +55 -0
- package/dist/types/common-utils/utils/creditAccount/types.d.ts +18 -0
- package/dist/types/common-utils/utils/endpoints.d.ts +27 -0
- package/dist/types/common-utils/utils/index.d.ts +5 -0
- package/dist/types/common-utils/utils/priceMath.d.ts +47 -0
- package/dist/types/dev/migrateFaucet.d.ts +4 -5
- package/dist/types/dev/providers.d.ts +5 -5
- package/dist/types/history/assembleOperations.d.ts +22 -0
- package/dist/types/history/classifyMulticallOperations.d.ts +35 -0
- package/dist/types/history/errors.d.ts +30 -0
- package/dist/types/history/extractProtocolCalls.d.ts +8 -0
- package/dist/types/history/extractTransfers.d.ts +22 -0
- package/dist/types/history/findFacadeCalls.d.ts +9 -0
- package/dist/types/history/index.d.ts +6 -0
- package/dist/types/history/inner-operations.d.ts +57 -0
- package/dist/types/history/internal-types.d.ts +47 -0
- package/dist/types/history/mapOperations.d.ts +27 -0
- package/dist/types/history/parseCreditAccountTransaction.d.ts +27 -0
- package/dist/types/history/populateContractsRegister.d.ts +19 -0
- package/dist/types/history/toLegacyOperation.d.ts +18 -0
- package/dist/types/history/trace-utils.d.ts +12 -0
- package/dist/types/history/types.d.ts +71 -0
- package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +3 -3
- package/dist/types/permissionless/bindings/instance-manager.d.ts +3 -3
- package/dist/types/plugins/adapters/abi/index.d.ts +1 -0
- package/dist/types/plugins/adapters/abi/targetContractAbi.d.ts +8262 -0
- package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +50 -8
- package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +238 -4
- package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +135 -8
- package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +45 -4
- package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +225 -7
- package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +418 -8
- package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +227 -10
- package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +1257 -10
- package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +1257 -10
- package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +1257 -10
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +575 -11
- package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +1244 -10
- package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +1227 -11
- package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +69 -6
- package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +492 -6
- package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +67 -6
- package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +132 -6
- package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +144 -8
- package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +163 -5
- package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +248 -6
- package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +367 -6
- package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +104 -7
- package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +46 -5
- package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +488 -6
- package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +20 -7
- package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +493 -7
- package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +18 -6
- package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +56 -5
- package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +52 -7
- package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +199 -7
- package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +1040 -17
- package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +82 -8
- package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +148 -10
- package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +758 -5
- package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +183 -4
- package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +110 -5
- package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +84 -7
- package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +122 -4
- package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +275 -5
- package/dist/types/plugins/adapters/contracts/index.d.ts +3 -7
- package/dist/types/plugins/adapters/createAdapter.d.ts +5 -0
- package/dist/types/plugins/adapters/index.d.ts +3 -0
- package/dist/types/plugins/adapters/legacyAdapterOperations.d.ts +200 -0
- package/dist/types/plugins/adapters/transferHelpers.d.ts +60 -0
- package/dist/types/plugins/adapters/types.d.ts +64 -2
- package/dist/types/plugins/bots/abi/index.d.ts +0 -1
- package/dist/types/sdk/GearboxSDK.d.ts +0 -3
- package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +123 -37
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +2 -2
- package/dist/types/sdk/accounts/createCreditAccountService.d.ts +1 -1
- package/dist/types/sdk/accounts/index.d.ts +0 -1
- package/dist/types/sdk/accounts/types.d.ts +115 -43
- package/dist/types/sdk/base/BaseContract.d.ts +17 -4
- package/dist/types/sdk/base/ChainContractsRegister.d.ts +11 -3
- package/dist/types/sdk/base/Construct.d.ts +13 -13
- package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
- package/dist/types/sdk/base/TokensMeta.d.ts +27 -4
- package/dist/types/sdk/base/errors.d.ts +3 -0
- package/dist/types/sdk/base/index.d.ts +1 -0
- package/dist/types/sdk/base/token-types.d.ts +10 -2
- package/dist/types/sdk/base/types.d.ts +36 -0
- package/dist/types/sdk/chain/chains.d.ts +1 -1
- package/dist/types/sdk/constants/addresses.d.ts +0 -19
- package/dist/types/sdk/constants/networks.d.ts +0 -5
- package/dist/types/sdk/constants/versions.d.ts +0 -2
- package/dist/types/sdk/core/{address-provider/AbstractAddressProviderContract.d.ts → AbstractAddressProviderContract.d.ts} +4 -4
- package/dist/types/sdk/core/{address-provider/AddressProviderV310Contract.d.ts → AddressProviderV310Contract.d.ts} +1 -1
- package/dist/types/sdk/core/{address-provider/createAddressProvider.d.ts → createAddressProvider.d.ts} +1 -1
- package/dist/types/sdk/core/index.d.ts +3 -3
- package/dist/types/sdk/core/{address-provider/types.d.ts → types.d.ts} +3 -3
- package/dist/types/sdk/index.d.ts +0 -5
- package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +1 -1
- package/dist/types/sdk/market/MarketRegister.d.ts +0 -1
- package/dist/types/sdk/market/MarketSuite.d.ts +2 -0
- package/dist/types/sdk/market/adapters/PlaceholderAdapterContracts.d.ts +10 -5
- package/dist/types/sdk/market/adapters/index.d.ts +1 -1
- package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +6 -2
- package/dist/types/sdk/market/credit/{CreditFacadeV300Contract.d.ts → CreditFacadeV310BaseContract.d.ts} +335 -267
- package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +6 -848
- package/dist/types/sdk/market/credit/index.d.ts +1 -3
- package/dist/types/sdk/market/credit/types.d.ts +2 -3
- package/dist/types/sdk/market/loss-policy/createLossPolicy.d.ts +0 -12
- package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +2 -21
- package/dist/types/sdk/market/oracle/PriceOracleV310Contract.d.ts +2 -2
- package/dist/types/sdk/market/oracle/createPriceOracle.d.ts +1 -15
- package/dist/types/sdk/market/oracle/index.d.ts +0 -1
- package/dist/types/sdk/market/oracle/types.d.ts +6 -18
- package/dist/types/sdk/market/pool/GaugeContract.d.ts +116 -76
- package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +20 -0
- package/dist/types/sdk/market/pool/PoolSuite.d.ts +2 -0
- package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +6 -2
- package/dist/types/sdk/market/pool/SecuritizeKYCFactory.d.ts +345 -0
- package/dist/types/sdk/market/pool/index.d.ts +2 -2
- package/dist/types/sdk/market/pool/types.d.ts +2 -4
- package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +0 -3
- package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +21 -1
- package/dist/types/sdk/market/pricefeeds/types.d.ts +0 -9
- package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +1 -8
- package/dist/types/sdk/market/pricefeeds/updates/PythUpdater.d.ts +1 -1
- package/dist/types/sdk/market/pricefeeds/updates/RedstoneUpdater.d.ts +1 -1
- package/dist/types/sdk/market/pricefeeds/updates/fetchPythPayloads.d.ts +2 -2
- package/dist/types/sdk/market/pricefeeds/updates/fetchRedstonePayloads.d.ts +2 -2
- package/dist/types/sdk/options.d.ts +2 -2
- package/dist/types/sdk/plugins/index.d.ts +0 -1
- package/dist/types/sdk/pools/PoolService.d.ts +4 -1
- package/dist/types/sdk/pools/types.d.ts +22 -3
- package/dist/types/sdk/router/AbstractRouterContract.d.ts +2 -7
- package/dist/types/sdk/router/RouterV310Contract.d.ts +1 -16
- package/dist/types/sdk/router/helpers.d.ts +2 -2
- package/dist/types/sdk/router/index.d.ts +0 -1
- package/dist/types/sdk/router/types.d.ts +2 -55
- package/dist/types/sdk/types/state-human.d.ts +1 -4
- package/dist/types/sdk/utils/AddressMap.d.ts +1 -1
- package/dist/types/sdk/utils/abi-decode.d.ts +14 -1
- package/dist/types/sdk/utils/formatter.d.ts +9 -0
- package/dist/types/sdk/utils/viem/sendRawTx.d.ts +5 -1
- package/package.json +26 -12
- package/dist/cjs/abi/iDegenDistributorV300.js +0 -100
- package/dist/cjs/abi/routerV300.js +0 -406
- package/dist/cjs/abi/v300.js +0 -4189
- package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -51
- package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -58
- package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -49
- package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -56
- package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -46
- package/dist/cjs/plugins/adapters/contracts/types.js +0 -77
- package/dist/cjs/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -164
- package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -192
- package/dist/cjs/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -41
- package/dist/cjs/sdk/accountMigration/index.js +0 -26
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV300.js +0 -454
- package/dist/cjs/sdk/core/BotListV3Contract.js +0 -101
- package/dist/cjs/sdk/core/GearStakingV3Contract.js +0 -83
- package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +0 -116
- package/dist/cjs/sdk/core/address-provider/index.js +0 -28
- package/dist/cjs/sdk/gauges/GaugeStakingService.js +0 -118
- package/dist/cjs/sdk/gauges/index.js +0 -24
- package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -139
- package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +0 -160
- package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +0 -114
- package/dist/cjs/sdk/market/oracle/PriceOracleV300Contract.js +0 -129
- package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -85
- package/dist/cjs/sdk/market/pool/PoolV300Contract.js +0 -135
- package/dist/cjs/sdk/plugins/V300StalenessPeriodPlugin.js +0 -131
- package/dist/cjs/sdk/poolMigration/index.js +0 -84
- package/dist/cjs/sdk/router/PathOptionFactory.js +0 -105
- package/dist/cjs/sdk/router/RouterV300Contract.js +0 -390
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/adapters.js +0 -67
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2576
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/index.js +0 -24
- package/dist/cjs/sdk/sdk-gov-legacy/contracts/protocols.js +0 -58
- package/dist/cjs/sdk/sdk-gov-legacy/index.js +0 -26
- package/dist/cjs/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -52
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/aura.js +0 -239
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/balancer.js +0 -339
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/compound.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/convex.js +0 -450
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -394
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/erc4626.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/gear.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/index.js +0 -52
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/normal.js +0 -562
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -45
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/token.js +0 -1002
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -80
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -50
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -16
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/yearn.js +0 -95
- package/dist/cjs/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/core/assets.js +0 -150
- package/dist/cjs/sdk/sdk-legacy/core/creditAccount.js +0 -510
- package/dist/cjs/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1802
- package/dist/cjs/sdk/sdk-legacy/core/creditManager.js +0 -263
- package/dist/cjs/sdk/sdk-legacy/core/creditSession.js +0 -256
- package/dist/cjs/sdk/sdk-legacy/core/endpoint.js +0 -137
- package/dist/cjs/sdk/sdk-legacy/core/eventOrTx.js +0 -87
- package/dist/cjs/sdk/sdk-legacy/core/pool.js +0 -334
- package/dist/cjs/sdk/sdk-legacy/core/transactions.js +0 -783
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/api.js +0 -366
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/apy.js +0 -176
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -137
- package/dist/cjs/sdk/sdk-legacy/gearboxRewards/index.js +0 -26
- package/dist/cjs/sdk/sdk-legacy/index.js +0 -52
- package/dist/cjs/sdk/sdk-legacy/payload/creditAccount.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/creditManager.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/creditSession.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/graphPayload.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/payload/pool.js +0 -16
- package/dist/cjs/sdk/sdk-legacy/tokens/tokenData.js +0 -92
- package/dist/cjs/sdk/sdk-legacy/utils/formatter.js +0 -79
- package/dist/cjs/sdk/sdk-legacy/utils/price.js +0 -35
- package/dist/esm/abi/iDegenDistributorV300.js +0 -76
- package/dist/esm/abi/routerV300.js +0 -381
- package/dist/esm/abi/v300.js +0 -4154
- package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +0 -27
- package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +0 -34
- package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +0 -25
- package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +0 -32
- package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +0 -22
- package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +0 -22
- package/dist/esm/plugins/adapters/contracts/types.js +0 -48
- package/dist/esm/plugins/bots/abi/iPartialLiquidationBotV300.js +0 -140
- package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +0 -171
- package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV300.js +0 -6
- package/dist/esm/sdk/accountMigration/MigrateCreditAccountsServiceV310.js +0 -6
- package/dist/esm/sdk/accountMigration/createMigrateCreditAccountsService.js +0 -17
- package/dist/esm/sdk/accountMigration/index.js +0 -3
- package/dist/esm/sdk/accounts/CreditAccountsServiceV300.js +0 -442
- package/dist/esm/sdk/core/BotListV3Contract.js +0 -77
- package/dist/esm/sdk/core/GearStakingV3Contract.js +0 -59
- package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +0 -82
- package/dist/esm/sdk/core/address-provider/index.js +0 -4
- package/dist/esm/sdk/gauges/GaugeStakingService.js +0 -94
- package/dist/esm/sdk/gauges/index.js +0 -2
- package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +0 -115
- package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +0 -143
- package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +0 -90
- package/dist/esm/sdk/market/oracle/PriceOracleV300Contract.js +0 -111
- package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +0 -61
- package/dist/esm/sdk/market/pool/PoolV300Contract.js +0 -116
- package/dist/esm/sdk/plugins/V300StalenessPeriodPlugin.js +0 -107
- package/dist/esm/sdk/poolMigration/index.js +0 -60
- package/dist/esm/sdk/router/PathOptionFactory.js +0 -92
- package/dist/esm/sdk/router/RouterV300Contract.js +0 -374
- package/dist/esm/sdk/sdk-gov-legacy/contracts/adapters.js +0 -43
- package/dist/esm/sdk/sdk-gov-legacy/contracts/contracts.js +0 -2538
- package/dist/esm/sdk/sdk-gov-legacy/contracts/index.js +0 -2
- package/dist/esm/sdk/sdk-gov-legacy/contracts/protocols.js +0 -34
- package/dist/esm/sdk/sdk-gov-legacy/index.js +0 -3
- package/dist/esm/sdk/sdk-gov-legacy/oracles/PriceFeedType.js +0 -28
- package/dist/esm/sdk/sdk-gov-legacy/oracles/index.js +0 -1
- package/dist/esm/sdk/sdk-gov-legacy/tokens/aura.js +0 -213
- package/dist/esm/sdk/sdk-gov-legacy/tokens/balancer.js +0 -314
- package/dist/esm/sdk/sdk-gov-legacy/tokens/convex.js +0 -424
- package/dist/esm/sdk/sdk-gov-legacy/tokens/curveLP.js +0 -369
- package/dist/esm/sdk/sdk-gov-legacy/tokens/gear.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/index.js +0 -16
- package/dist/esm/sdk/sdk-gov-legacy/tokens/normal.js +0 -538
- package/dist/esm/sdk/sdk-gov-legacy/tokens/stakingRewards.js +0 -20
- package/dist/esm/sdk/sdk-gov-legacy/tokens/token.js +0 -975
- package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenData.js +0 -55
- package/dist/esm/sdk/sdk-gov-legacy/tokens/tokenType.js +0 -26
- package/dist/esm/sdk/sdk-gov-legacy/tokens/wrapped.js +0 -0
- package/dist/esm/sdk/sdk-gov-legacy/tokens/yearn.js +0 -71
- package/dist/esm/sdk/sdk-gov-legacy/tokens/zircuit.js +0 -0
- package/dist/esm/sdk/sdk-legacy/core/creditAccount.js +0 -495
- package/dist/esm/sdk/sdk-legacy/core/creditAccount.spec.js +0 -1805
- package/dist/esm/sdk/sdk-legacy/core/creditManager.js +0 -242
- package/dist/esm/sdk/sdk-legacy/core/creditSession.js +0 -228
- package/dist/esm/sdk/sdk-legacy/core/endpoint.js +0 -107
- package/dist/esm/sdk/sdk-legacy/core/eventOrTx.js +0 -63
- package/dist/esm/sdk/sdk-legacy/core/pool.js +0 -311
- package/dist/esm/sdk/sdk-legacy/core/transactions.js +0 -732
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/api.js +0 -332
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/apy.js +0 -158
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/extraAPY.js +0 -102
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/index.js +0 -3
- package/dist/esm/sdk/sdk-legacy/gearboxRewards/merklAPI.js +0 -6
- package/dist/esm/sdk/sdk-legacy/index.js +0 -16
- package/dist/esm/sdk/sdk-legacy/payload/creditAccount.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/creditManager.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/creditSession.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/graphPayload.js +0 -0
- package/dist/esm/sdk/sdk-legacy/payload/pool.js +0 -0
- package/dist/esm/sdk/sdk-legacy/tokens/tokenData.js +0 -68
- package/dist/esm/sdk/sdk-legacy/utils/formatter.js +0 -39
- package/dist/esm/sdk/sdk-legacy/utils/index.js +0 -3
- package/dist/esm/sdk/sdk-legacy/utils/math.js +0 -9
- package/dist/esm/sdk/sdk-legacy/utils/price.js +0 -11
- package/dist/types/abi/iDegenDistributorV300.d.ts +0 -87
- package/dist/types/abi/routerV300.d.ts +0 -585
- package/dist/types/abi/v300.d.ts +0 -5484
- package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +0 -482
- package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +0 -225
- package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +0 -198
- package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +0 -396
- package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +0 -203
- package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +0 -185
- package/dist/types/plugins/adapters/contracts/types.d.ts +0 -34
- package/dist/types/plugins/bots/abi/iPartialLiquidationBotV300.d.ts +0 -210
- package/dist/types/sdk/accountMigration/AbstractMigrateCreditAccountsService.d.ts +0 -32
- package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV300.d.ts +0 -4
- package/dist/types/sdk/accountMigration/MigrateCreditAccountsServiceV310.d.ts +0 -4
- package/dist/types/sdk/accountMigration/createMigrateCreditAccountsService.d.ts +0 -8
- package/dist/types/sdk/accountMigration/index.d.ts +0 -3
- package/dist/types/sdk/accountMigration/types.d.ts +0 -62
- package/dist/types/sdk/accounts/CreditAccountsServiceV300.d.ts +0 -32
- package/dist/types/sdk/core/GearStakingV3Contract.d.ts +0 -520
- package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +0 -97
- package/dist/types/sdk/core/address-provider/index.d.ts +0 -4
- package/dist/types/sdk/gauges/GaugeStakingService.d.ts +0 -14
- package/dist/types/sdk/gauges/index.d.ts +0 -2
- package/dist/types/sdk/gauges/utils.d.ts +0 -22
- package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +0 -648
- package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +0 -1043
- package/dist/types/sdk/market/oracle/PriceOracleV300Contract.d.ts +0 -369
- package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +0 -1107
- package/dist/types/sdk/plugins/V300StalenessPeriodPlugin.d.ts +0 -29
- package/dist/types/sdk/poolMigration/index.d.ts +0 -11
- package/dist/types/sdk/router/PathOptionFactory.d.ts +0 -9
- package/dist/types/sdk/router/RouterV300Contract.d.ts +0 -39
- package/dist/types/sdk/sdk-gov-legacy/contracts/adapters.d.ts +0 -39
- package/dist/types/sdk/sdk-gov-legacy/contracts/contracts.d.ts +0 -194
- package/dist/types/sdk/sdk-gov-legacy/contracts/index.d.ts +0 -2
- package/dist/types/sdk/sdk-gov-legacy/contracts/protocols.d.ts +0 -30
- package/dist/types/sdk/sdk-gov-legacy/index.d.ts +0 -3
- package/dist/types/sdk/sdk-gov-legacy/oracles/PriceFeedType.d.ts +0 -24
- package/dist/types/sdk/sdk-gov-legacy/oracles/index.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/aave.d.ts +0 -2
- package/dist/types/sdk/sdk-gov-legacy/tokens/aura.d.ts +0 -26
- package/dist/types/sdk/sdk-gov-legacy/tokens/balancer.d.ts +0 -15
- package/dist/types/sdk/sdk-gov-legacy/tokens/compound.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/convex.d.ts +0 -31
- package/dist/types/sdk/sdk-gov-legacy/tokens/curveLP.d.ts +0 -25
- package/dist/types/sdk/sdk-gov-legacy/tokens/erc4626.d.ts +0 -1
- package/dist/types/sdk/sdk-gov-legacy/tokens/gear.d.ts +0 -5
- package/dist/types/sdk/sdk-gov-legacy/tokens/index.d.ts +0 -16
- package/dist/types/sdk/sdk-gov-legacy/tokens/normal.d.ts +0 -9
- package/dist/types/sdk/sdk-gov-legacy/tokens/stakingRewards.d.ts +0 -13
- package/dist/types/sdk/sdk-gov-legacy/tokens/token.d.ts +0 -34
- package/dist/types/sdk/sdk-gov-legacy/tokens/tokenData.d.ts +0 -5
- package/dist/types/sdk/sdk-gov-legacy/tokens/tokenType.d.ts +0 -24
- package/dist/types/sdk/sdk-gov-legacy/tokens/wrapped.d.ts +0 -7
- package/dist/types/sdk/sdk-gov-legacy/tokens/yearn.d.ts +0 -26
- package/dist/types/sdk/sdk-gov-legacy/tokens/zircuit.d.ts +0 -1
- package/dist/types/sdk/sdk-legacy/core/assets.d.ts +0 -39
- package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +0 -152
- package/dist/types/sdk/sdk-legacy/core/creditAccount.spec.d.ts +0 -1
- package/dist/types/sdk/sdk-legacy/core/creditManager.d.ts +0 -92
- package/dist/types/sdk/sdk-legacy/core/creditSession.d.ts +0 -110
- package/dist/types/sdk/sdk-legacy/core/endpoint.d.ts +0 -24
- package/dist/types/sdk/sdk-legacy/core/eventOrTx.d.ts +0 -35
- package/dist/types/sdk/sdk-legacy/core/pool.d.ts +0 -144
- package/dist/types/sdk/sdk-legacy/core/transactions.d.ts +0 -348
- package/dist/types/sdk/sdk-legacy/gearboxRewards/api.d.ts +0 -87
- package/dist/types/sdk/sdk-legacy/gearboxRewards/apy.d.ts +0 -46
- package/dist/types/sdk/sdk-legacy/gearboxRewards/extraAPY.d.ts +0 -41
- package/dist/types/sdk/sdk-legacy/gearboxRewards/index.d.ts +0 -3
- package/dist/types/sdk/sdk-legacy/gearboxRewards/merklAPI.d.ts +0 -42
- package/dist/types/sdk/sdk-legacy/index.d.ts +0 -16
- package/dist/types/sdk/sdk-legacy/payload/creditAccount.d.ts +0 -47
- package/dist/types/sdk/sdk-legacy/payload/creditManager.d.ts +0 -109
- package/dist/types/sdk/sdk-legacy/payload/creditSession.d.ts +0 -111
- package/dist/types/sdk/sdk-legacy/payload/graphPayload.d.ts +0 -10
- package/dist/types/sdk/sdk-legacy/payload/pool.d.ts +0 -181
- package/dist/types/sdk/sdk-legacy/tokens/tokenData.d.ts +0 -21
- package/dist/types/sdk/sdk-legacy/utils/formatter.d.ts +0 -8
- package/dist/types/sdk/sdk-legacy/utils/index.d.ts +0 -3
- package/dist/types/sdk/sdk-legacy/utils/math.d.ts +0 -6
- package/dist/types/sdk/sdk-legacy/utils/price.d.ts +0 -9
- /package/dist/cjs/{sdk/accountMigration → common-utils/utils/creditAccount}/types.js +0 -0
- /package/dist/cjs/{sdk/core/address-provider → history}/types.js +0 -0
- /package/dist/esm/{sdk/accountMigration → common-utils/utils/creditAccount}/types.js +0 -0
- /package/dist/esm/{sdk/core/address-provider/types.js → history/inner-operations.js} +0 -0
- /package/dist/esm/{sdk/gauges/utils.js → history/internal-types.js} +0 -0
- /package/dist/esm/{sdk/sdk-gov-legacy/tokens/aave.js → history/types.js} +0 -0
- /package/dist/esm/{sdk/sdk-gov-legacy/tokens/compound.js → plugins/adapters/legacyAdapterOperations.js} +0 -0
- /package/dist/esm/sdk/{sdk-gov-legacy/tokens/erc4626.js → core/types.js} +0 -0
- /package/dist/esm/sdk/market/adapters/{factory.js → createAdapter.js} +0 -0
- /package/dist/types/sdk/market/adapters/{factory.d.ts → createAdapter.d.ts} +0 -0
|
@@ -25,9 +25,9 @@ const RedstoneOptions = z.object({
|
|
|
25
25
|
*/
|
|
26
26
|
cacheTTL: z.number().nonnegative().optional(),
|
|
27
27
|
/**
|
|
28
|
-
* When true,
|
|
28
|
+
* When true, an error will be thrown when redstone is unable to fetch data for some feeds
|
|
29
29
|
*/
|
|
30
|
-
|
|
30
|
+
failOnMissingFeeds: z.boolean().optional(),
|
|
31
31
|
/**
|
|
32
32
|
* Enable redstone internal logging
|
|
33
33
|
*/
|
|
@@ -37,11 +37,11 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
37
37
|
#cache;
|
|
38
38
|
#historicalTimestampMs;
|
|
39
39
|
#gateways;
|
|
40
|
-
#
|
|
40
|
+
#failOnMissingFeeds;
|
|
41
41
|
#enableLogging;
|
|
42
42
|
constructor(sdk, opts = {}) {
|
|
43
43
|
super(sdk);
|
|
44
|
-
this.#
|
|
44
|
+
this.#failOnMissingFeeds = opts.failOnMissingFeeds;
|
|
45
45
|
this.#enableLogging = opts.enableLogging;
|
|
46
46
|
this.#gateways = opts.gateways?.length ? opts.gateways : void 0;
|
|
47
47
|
let ts = opts.historicTimestamp;
|
|
@@ -52,7 +52,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
52
52
|
`using historical timestamp ${this.#historicalTimestampMs}`
|
|
53
53
|
);
|
|
54
54
|
}
|
|
55
|
-
this.#cache = PriceUpdatesCache
|
|
55
|
+
this.#cache = new PriceUpdatesCache({
|
|
56
56
|
// currently staleness period is 240 seconds on all networks, add some buffer
|
|
57
57
|
// this period of 4 minutes is selected based on time that is required for user to sign transaction with wallet
|
|
58
58
|
// so it's unlikely to decrease
|
|
@@ -223,7 +223,7 @@ class RedstoneUpdater extends SDKConstruct {
|
|
|
223
223
|
uniqueSignersCount,
|
|
224
224
|
historicalTimestampMs: this.#historicalTimestampMs,
|
|
225
225
|
gateways: this.#gateways,
|
|
226
|
-
|
|
226
|
+
failOnMissingFeeds: this.#failOnMissingFeeds,
|
|
227
227
|
enableLogging: this.#enableLogging,
|
|
228
228
|
logger: this.logger,
|
|
229
229
|
metadataTimestampMs: Number(this.sdk.timestamp) * 1e3
|
|
@@ -9,14 +9,14 @@ import {
|
|
|
9
9
|
async function fetchPythPayloads(options) {
|
|
10
10
|
const {
|
|
11
11
|
dataFeedsIds,
|
|
12
|
-
|
|
12
|
+
failOnMissingFeeds,
|
|
13
13
|
historicalTimestampSeconds,
|
|
14
14
|
logger,
|
|
15
15
|
apiProxy,
|
|
16
16
|
customFetch = fetch,
|
|
17
17
|
returnPrices
|
|
18
18
|
} = options;
|
|
19
|
-
const ids = Array.from(new Set(dataFeedsIds));
|
|
19
|
+
const ids = Array.from(new Set(dataFeedsIds)).sort();
|
|
20
20
|
if (ids.length === 0) {
|
|
21
21
|
return [];
|
|
22
22
|
}
|
|
@@ -24,10 +24,10 @@ async function fetchPythPayloads(options) {
|
|
|
24
24
|
api = api.endsWith("/") ? api : `${api}/`;
|
|
25
25
|
const url = new URL(api + (historicalTimestampSeconds ?? "latest"));
|
|
26
26
|
url.searchParams.append("parsed", returnPrices ? "true" : "false");
|
|
27
|
-
if (
|
|
27
|
+
if (!failOnMissingFeeds) {
|
|
28
28
|
url.searchParams.append("ignore_invalid_price_ids", "true");
|
|
29
29
|
}
|
|
30
|
-
for (const id of
|
|
30
|
+
for (const id of ids) {
|
|
31
31
|
url.searchParams.append("ids[]", id);
|
|
32
32
|
}
|
|
33
33
|
const resp = await retry(
|
|
@@ -46,12 +46,12 @@ async function fetchPythPayloads(options) {
|
|
|
46
46
|
);
|
|
47
47
|
const result = respToCalldata(resp, returnPrices);
|
|
48
48
|
if (result.length !== ids.length) {
|
|
49
|
-
if (
|
|
50
|
-
logger?.warn(`expected ${ids.length} price feeds, got ${result.length}`);
|
|
51
|
-
} else {
|
|
49
|
+
if (failOnMissingFeeds) {
|
|
52
50
|
throw new Error(
|
|
53
51
|
`expected ${ids.length} price feeds, got ${result.length}`
|
|
54
52
|
);
|
|
53
|
+
} else {
|
|
54
|
+
logger?.warn(`expected ${ids.length} price feeds, got ${result.length}`);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
return result;
|
|
@@ -15,7 +15,7 @@ async function fetchRedstonePayloads(options) {
|
|
|
15
15
|
uniqueSignersCount,
|
|
16
16
|
historicalTimestampMs,
|
|
17
17
|
gateways,
|
|
18
|
-
|
|
18
|
+
failOnMissingFeeds,
|
|
19
19
|
enableLogging,
|
|
20
20
|
logger,
|
|
21
21
|
returnPrices
|
|
@@ -34,7 +34,7 @@ async function fetchRedstonePayloads(options) {
|
|
|
34
34
|
),
|
|
35
35
|
historicalTimestamp: historicalTimestampMs,
|
|
36
36
|
urls: gateways,
|
|
37
|
-
ignoreMissingFeed:
|
|
37
|
+
ignoreMissingFeed: !failOnMissingFeeds,
|
|
38
38
|
enableEnhancedLogs: enableLogging
|
|
39
39
|
});
|
|
40
40
|
if (metadataTimestampMs) {
|
|
@@ -50,22 +50,22 @@ async function fetchRedstonePayloads(options) {
|
|
|
50
50
|
for (const dataFeedId of dataFeedsIds) {
|
|
51
51
|
const signedDataPackages = packagesByDataFeedId[dataFeedId];
|
|
52
52
|
if (!signedDataPackages) {
|
|
53
|
-
if (
|
|
54
|
-
|
|
55
|
-
continue;
|
|
53
|
+
if (failOnMissingFeeds) {
|
|
54
|
+
throw new Error(`cannot find data packages for ${dataFeedId}`);
|
|
56
55
|
}
|
|
57
|
-
|
|
56
|
+
logger?.warn(`cannot find data packages for ${dataFeedId}`);
|
|
57
|
+
continue;
|
|
58
58
|
}
|
|
59
59
|
if (signedDataPackages.length !== uniqueSignersCount) {
|
|
60
|
-
if (
|
|
61
|
-
|
|
60
|
+
if (failOnMissingFeeds) {
|
|
61
|
+
throw new Error(
|
|
62
62
|
`got ${signedDataPackages.length} data packages for ${dataFeedId}, but expected ${uniqueSignersCount}`
|
|
63
63
|
);
|
|
64
|
-
continue;
|
|
65
64
|
}
|
|
66
|
-
|
|
65
|
+
logger?.warn(
|
|
67
66
|
`got ${signedDataPackages.length} data packages for ${dataFeedId}, but expected ${uniqueSignersCount}`
|
|
68
67
|
);
|
|
68
|
+
continue;
|
|
69
69
|
}
|
|
70
70
|
result.push(
|
|
71
71
|
getCalldataWithTimestamp(
|
|
@@ -1,15 +1,25 @@
|
|
|
1
|
+
import { iPoolV310Abi } from "../../abi/310/generated.js";
|
|
1
2
|
import { ierc20Abi } from "../../abi/iERC20.js";
|
|
2
3
|
import { ierc20ZapperDepositsAbi } from "../../abi/iERC20ZapperDeposits.js";
|
|
3
4
|
import { iethZapperDepositsAbi } from "../../abi/iETHZapperDeposits.js";
|
|
4
5
|
import { iZapperAbi } from "../../abi/iZapper.js";
|
|
5
|
-
import { iPoolV300Abi } from "../../abi/v300.js";
|
|
6
6
|
import {
|
|
7
7
|
KYC_UNDERLYING_DEFAULT,
|
|
8
8
|
KYC_UNDERLYING_ON_DEMAND,
|
|
9
9
|
SDKConstruct
|
|
10
10
|
} from "../base/index.js";
|
|
11
11
|
import { AddressSet, hexEq } from "../index.js";
|
|
12
|
+
import { AddressMap } from "../utils/index.js";
|
|
12
13
|
const NATIVE_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
|
|
14
|
+
const POOL_TOKENS_TO_MIGRATE = new AddressMap([
|
|
15
|
+
// v2 diesels
|
|
16
|
+
["0x6CFaF95457d7688022FC53e7AbE052ef8DFBbdBA", "dDAI"],
|
|
17
|
+
["0xc411dB5f5Eb3f7d552F9B8454B2D74097ccdE6E3", "dUSDC"],
|
|
18
|
+
["0xe753260F1955e8678DCeA8887759e07aa57E8c54", "dWBTC"],
|
|
19
|
+
["0xF21fc650C1B34eb0FDE786D52d23dA99Db3D6278", "dWETH"],
|
|
20
|
+
["0x2158034dB06f06dcB9A786D2F1F8c38781bA779d", "dwstETH"],
|
|
21
|
+
["0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47", "dFRAX"]
|
|
22
|
+
]);
|
|
13
23
|
class PoolService extends SDKConstruct {
|
|
14
24
|
getDepositTokensIn(pool) {
|
|
15
25
|
const underlying = this.#describeUnderlying(pool);
|
|
@@ -68,7 +78,7 @@ class PoolService extends SDKConstruct {
|
|
|
68
78
|
}
|
|
69
79
|
}
|
|
70
80
|
const { zapper } = meta;
|
|
71
|
-
if (zapper
|
|
81
|
+
if (zapper && hexEq(zapper.tokenIn.addr, NATIVE_ADDRESS)) {
|
|
72
82
|
return {
|
|
73
83
|
target: zapper.baseParams.addr,
|
|
74
84
|
abi: iethZapperDepositsAbi,
|
|
@@ -99,14 +109,38 @@ class PoolService extends SDKConstruct {
|
|
|
99
109
|
} else {
|
|
100
110
|
return {
|
|
101
111
|
target: pool,
|
|
102
|
-
abi:
|
|
112
|
+
abi: iPoolV310Abi,
|
|
103
113
|
functionName: "depositWithReferral",
|
|
104
114
|
args: [collateral.balance, wallet, referralCode]
|
|
105
115
|
};
|
|
106
116
|
}
|
|
107
117
|
}
|
|
118
|
+
getWithdrawalTokensIn(pool) {
|
|
119
|
+
const underlying = this.#describeUnderlying(pool);
|
|
120
|
+
if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
|
|
121
|
+
switch (underlying.contractType) {
|
|
122
|
+
case KYC_UNDERLYING_DEFAULT:
|
|
123
|
+
return this.#withdrawalTokensIn(pool, false);
|
|
124
|
+
case KYC_UNDERLYING_ON_DEMAND:
|
|
125
|
+
return [];
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return this.#withdrawalTokensIn(pool, true);
|
|
129
|
+
}
|
|
130
|
+
getWithdrawalTokensOut(pool, tokenIn) {
|
|
131
|
+
const underlying = this.#describeUnderlying(pool);
|
|
132
|
+
if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
|
|
133
|
+
switch (underlying.contractType) {
|
|
134
|
+
case KYC_UNDERLYING_DEFAULT:
|
|
135
|
+
return this.#withdrawalTokensOut(pool, tokenIn, false);
|
|
136
|
+
case KYC_UNDERLYING_ON_DEMAND:
|
|
137
|
+
return [underlying.asset];
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return this.#withdrawalTokensOut(pool, tokenIn, true);
|
|
141
|
+
}
|
|
108
142
|
removeLiquidity(props) {
|
|
109
|
-
const { pool, amount,
|
|
143
|
+
const { pool, amount, meta, wallet, permit } = props;
|
|
110
144
|
const underlying = this.#describeUnderlying(pool);
|
|
111
145
|
if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
|
|
112
146
|
if (underlying.contractType === KYC_UNDERLYING_ON_DEMAND) {
|
|
@@ -118,36 +152,66 @@ class PoolService extends SDKConstruct {
|
|
|
118
152
|
};
|
|
119
153
|
}
|
|
120
154
|
}
|
|
121
|
-
if (zapper) {
|
|
155
|
+
if (meta.zapper) {
|
|
122
156
|
return permit ? {
|
|
123
|
-
target: zapper.
|
|
157
|
+
target: meta.zapper.baseParams.addr,
|
|
124
158
|
abi: iZapperAbi,
|
|
125
159
|
functionName: "redeemWithPermit",
|
|
126
160
|
args: [
|
|
127
161
|
amount,
|
|
128
|
-
|
|
162
|
+
wallet,
|
|
129
163
|
permit.deadline,
|
|
130
164
|
permit.v,
|
|
131
165
|
permit.r,
|
|
132
166
|
permit.s
|
|
133
167
|
]
|
|
134
168
|
} : {
|
|
135
|
-
target: zapper.
|
|
169
|
+
target: meta.zapper.baseParams.addr,
|
|
136
170
|
abi: iZapperAbi,
|
|
137
171
|
functionName: "redeem",
|
|
138
|
-
args: [amount,
|
|
172
|
+
args: [amount, wallet]
|
|
139
173
|
};
|
|
140
174
|
}
|
|
141
175
|
return {
|
|
142
176
|
target: pool,
|
|
143
|
-
abi:
|
|
177
|
+
abi: iPoolV310Abi,
|
|
144
178
|
functionName: "redeem",
|
|
145
|
-
args: [amount,
|
|
179
|
+
args: [amount, wallet, wallet]
|
|
146
180
|
};
|
|
147
181
|
}
|
|
182
|
+
getWithdrawalMetadata(pool, tokenIn, tokenOut) {
|
|
183
|
+
const underlying = this.#describeUnderlying(pool);
|
|
184
|
+
if (this.sdk.tokensMeta.isKYCUnderlying(underlying)) {
|
|
185
|
+
switch (underlying.contractType) {
|
|
186
|
+
case KYC_UNDERLYING_DEFAULT: {
|
|
187
|
+
return this.#withdrawalMetadata(
|
|
188
|
+
"kyc-default",
|
|
189
|
+
pool,
|
|
190
|
+
tokenIn,
|
|
191
|
+
tokenOut,
|
|
192
|
+
false
|
|
193
|
+
);
|
|
194
|
+
}
|
|
195
|
+
case KYC_UNDERLYING_ON_DEMAND:
|
|
196
|
+
return {
|
|
197
|
+
zapper: void 0,
|
|
198
|
+
approveTarget: void 0,
|
|
199
|
+
permissible: false,
|
|
200
|
+
type: "kyc-on-demand"
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
return this.#withdrawalMetadata("classic", pool, tokenIn, tokenOut, true);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Filter out v2 diesel tokens (can come from migration v2 -> v3 zappers)
|
|
208
|
+
* Also omits "migration" zappers (v3 -> v3.1) since they are treated in a different way
|
|
209
|
+
*/
|
|
148
210
|
#getDepositZappers(poolAddr) {
|
|
149
211
|
const zappers = this.sdk.marketRegister.poolZappers(poolAddr);
|
|
150
|
-
return zappers.filter(
|
|
212
|
+
return zappers.filter(
|
|
213
|
+
(z) => z.type !== "migration" && !POOL_TOKENS_TO_MIGRATE.has(z.tokenIn.addr)
|
|
214
|
+
);
|
|
151
215
|
}
|
|
152
216
|
#depositTokensIn(poolAddr, allowDirectDeposit) {
|
|
153
217
|
const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
|
|
@@ -168,15 +232,29 @@ class PoolService extends SDKConstruct {
|
|
|
168
232
|
}
|
|
169
233
|
return result.asArray();
|
|
170
234
|
}
|
|
235
|
+
#withdrawalTokensIn(poolAddr, allowDirectDeposit) {
|
|
236
|
+
const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
|
|
237
|
+
const result = new AddressSet();
|
|
238
|
+
if (allowDirectDeposit && pool) {
|
|
239
|
+
result.add(poolAddr);
|
|
240
|
+
}
|
|
241
|
+
const zappers = this.#getDepositZappers(poolAddr);
|
|
242
|
+
for (const z of zappers) {
|
|
243
|
+
result.add(z.tokenOut.addr);
|
|
244
|
+
}
|
|
245
|
+
if (result.size === 0) {
|
|
246
|
+
throw new Error(
|
|
247
|
+
`No tokensIn found for pool ${this.labelAddress(poolAddr)}`
|
|
248
|
+
);
|
|
249
|
+
}
|
|
250
|
+
return result.asArray();
|
|
251
|
+
}
|
|
171
252
|
#depositTokensOut(poolAddr, tokenIn, allowDirectDeposit) {
|
|
172
253
|
const result = new AddressSet();
|
|
173
254
|
const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
|
|
174
255
|
const zappers = this.#getDepositZappers(poolAddr);
|
|
175
256
|
for (const z of zappers) {
|
|
176
257
|
if (hexEq(z.tokenIn.addr, tokenIn)) {
|
|
177
|
-
if (!hexEq(z.tokenOut.addr, poolAddr)) {
|
|
178
|
-
console.log("z.tokenOut.addr", z.tokenOut.addr);
|
|
179
|
-
}
|
|
180
258
|
result.add(z.tokenOut.addr);
|
|
181
259
|
}
|
|
182
260
|
}
|
|
@@ -190,10 +268,39 @@ class PoolService extends SDKConstruct {
|
|
|
190
268
|
)} on pool ${this.labelAddress(poolAddr)}`
|
|
191
269
|
);
|
|
192
270
|
}
|
|
193
|
-
|
|
271
|
+
const r = result.asArray();
|
|
272
|
+
return r;
|
|
273
|
+
}
|
|
274
|
+
#withdrawalTokensOut(poolAddr, tokenIn, allowDirectDeposit) {
|
|
275
|
+
const result = new AddressSet();
|
|
276
|
+
const { pool } = this.sdk.marketRegister.findByPool(poolAddr);
|
|
277
|
+
const zappers = this.#getDepositZappers(poolAddr);
|
|
278
|
+
for (const z of zappers) {
|
|
279
|
+
if (hexEq(z.tokenOut.addr, tokenIn)) {
|
|
280
|
+
result.add(z.tokenIn.addr);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
if (allowDirectDeposit && hexEq(tokenIn, poolAddr)) {
|
|
284
|
+
result.add(pool.underlying);
|
|
285
|
+
}
|
|
286
|
+
if (result.size === 0) {
|
|
287
|
+
throw new Error(
|
|
288
|
+
`No tokensOut found for tokenIn ${this.labelAddress(
|
|
289
|
+
tokenIn
|
|
290
|
+
)} on pool ${this.labelAddress(poolAddr)}`
|
|
291
|
+
);
|
|
292
|
+
}
|
|
293
|
+
const r = result.asArray();
|
|
294
|
+
return r;
|
|
194
295
|
}
|
|
296
|
+
/**
|
|
297
|
+
* Filter out v2 diesel tokens (can come from migration v2 -> v3 zappers)
|
|
298
|
+
* Also omits "migration" zappers (v3 -> v3.1) since they are treated in a different way
|
|
299
|
+
*/
|
|
195
300
|
#getDepositZapper(poolAddr, tokenIn, tokenOut) {
|
|
196
|
-
const zappers = this.sdk.marketRegister.getZapper(poolAddr, tokenIn, tokenOut)?.filter(
|
|
301
|
+
const zappers = this.sdk.marketRegister.getZapper(poolAddr, tokenIn, tokenOut)?.filter(
|
|
302
|
+
(z) => z.type !== "migration" && !POOL_TOKENS_TO_MIGRATE.has(z.tokenIn.addr)
|
|
303
|
+
);
|
|
197
304
|
if (zappers && zappers.length > 1) {
|
|
198
305
|
throw new Error(
|
|
199
306
|
`Multiple zappers found for tokenIn ${this.labelAddress(
|
|
@@ -226,7 +333,31 @@ class PoolService extends SDKConstruct {
|
|
|
226
333
|
approveTarget: zapper?.baseParams.addr ?? pool.pool.address,
|
|
227
334
|
// TODO: instead of permissible, return permitType зависимости от tokenIn
|
|
228
335
|
// "none" | "eip2612" | "dai_like";
|
|
229
|
-
permissible: !!zapper && tokenIn
|
|
336
|
+
permissible: !!zapper && !hexEq(tokenIn, NATIVE_ADDRESS),
|
|
337
|
+
type
|
|
338
|
+
};
|
|
339
|
+
}
|
|
340
|
+
#withdrawalMetadata(type, poolAddr, tokenIn, tokenOut, allowDirectDeposit) {
|
|
341
|
+
if (!tokenOut) {
|
|
342
|
+
throw new Error("tokenOut is required for classic pool deposit");
|
|
343
|
+
}
|
|
344
|
+
const zapper = this.#getDepositZapper(poolAddr, tokenOut, tokenIn);
|
|
345
|
+
if (!zapper && !allowDirectDeposit) {
|
|
346
|
+
throw new Error(
|
|
347
|
+
`No zapper found for tokenIn ${this.labelAddress(
|
|
348
|
+
tokenOut
|
|
349
|
+
)} and tokenOut ${this.labelAddress(
|
|
350
|
+
tokenIn
|
|
351
|
+
)} on pool ${this.labelAddress(poolAddr)}`
|
|
352
|
+
);
|
|
353
|
+
}
|
|
354
|
+
return {
|
|
355
|
+
zapper,
|
|
356
|
+
// zapper or pool itself
|
|
357
|
+
approveTarget: zapper?.baseParams.addr,
|
|
358
|
+
// TODO: instead of permissible, return permitType зависимости от tokenIn
|
|
359
|
+
// "none" | "eip2612" | "dai_like";
|
|
360
|
+
permissible: !!zapper,
|
|
230
361
|
type
|
|
231
362
|
};
|
|
232
363
|
}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
import { BaseContract } from "../base/index.js";
|
|
2
2
|
import { PERCENTAGE_FACTOR } from "../constants/math.js";
|
|
3
3
|
import { AddressMap, AddressSet, formatBN, isDust } from "../utils/index.js";
|
|
4
|
-
import { Hooks } from "../utils/internal/index.js";
|
|
5
4
|
import { limitLeftover } from "./helpers.js";
|
|
6
5
|
class AbstractRouterContract extends BaseContract {
|
|
7
|
-
hooks = new Hooks();
|
|
8
|
-
addHook = this.hooks.addHook.bind(this.hooks);
|
|
9
|
-
removeHook = this.hooks.removeHook.bind(this.hooks);
|
|
10
6
|
sdk;
|
|
11
7
|
constructor(sdk, args) {
|
|
12
8
|
super(sdk, args);
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { getAddress } from "viem";
|
|
2
2
|
import { gearboxRouterAbi } from "../../abi/router/gearboxRouter.js";
|
|
3
|
-
import { BigIntMath } from "../sdk-legacy/index.js";
|
|
4
3
|
import { AddressMap } from "../utils/AddressMap.js";
|
|
5
4
|
import { formatBN } from "../utils/formatter.js";
|
|
6
5
|
import { isDust } from "../utils/index.js";
|
|
7
6
|
import { AbstractRouterContract } from "./AbstractRouterContract.js";
|
|
8
7
|
import { assetsMap, balancesMap, limitLeftover } from "./helpers.js";
|
|
9
8
|
const abi = gearboxRouterAbi;
|
|
10
|
-
const ERR_NOT_IMPLEMENTED = new Error("Not implemented in router v3.1");
|
|
11
9
|
class RouterV310Contract extends AbstractRouterContract {
|
|
12
10
|
#numSplits = new AddressMap();
|
|
13
11
|
#defaultNumSplits = 4n;
|
|
@@ -141,11 +139,6 @@ class RouterV310Contract extends AbstractRouterContract {
|
|
|
141
139
|
props.creditAccount.creditAccount,
|
|
142
140
|
tData
|
|
143
141
|
]);
|
|
144
|
-
if (props.calls.length > 0 && result.length === 0 && !!props.forceCalls) {
|
|
145
|
-
return {
|
|
146
|
-
calls: [...props.calls]
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
142
|
return {
|
|
150
143
|
calls: [...result]
|
|
151
144
|
};
|
|
@@ -289,27 +282,6 @@ class RouterV310Contract extends AbstractRouterContract {
|
|
|
289
282
|
claimRewards: t.claimRewards
|
|
290
283
|
}));
|
|
291
284
|
}
|
|
292
|
-
/**
|
|
293
|
-
* Implements {@link IRouterContract.findAllSwaps}
|
|
294
|
-
* @deprecated v3.0 legacy method
|
|
295
|
-
*/
|
|
296
|
-
findAllSwaps(_) {
|
|
297
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
298
|
-
}
|
|
299
|
-
/**
|
|
300
|
-
* Implements {@link IRouterContract.getAvailableConnectors}
|
|
301
|
-
* @deprecated v3.0 legacy method
|
|
302
|
-
*/
|
|
303
|
-
getAvailableConnectors(_) {
|
|
304
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* Implements {@link IRouterContract.getFindClosePathInput}
|
|
308
|
-
* @deprecated v3.0 legacy method
|
|
309
|
-
*/
|
|
310
|
-
getFindClosePathInput(_, __, ___) {
|
|
311
|
-
throw ERR_NOT_IMPLEMENTED;
|
|
312
|
-
}
|
|
313
285
|
}
|
|
314
286
|
function balancesAfterOpen(target, targetAmount, expected, leftover) {
|
|
315
287
|
const result = {};
|
|
@@ -323,10 +295,9 @@ function balancesAfterOpen(target, targetAmount, expected, leftover) {
|
|
|
323
295
|
if (t === targetAddr) {
|
|
324
296
|
result[t] = (expected.get(t) ?? 0n) + targetAmount;
|
|
325
297
|
} else {
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
);
|
|
298
|
+
const exp = expected.get(t) ?? 0n;
|
|
299
|
+
const left = limitLeftover(leftover.get(t), t) ?? 0n;
|
|
300
|
+
result[t] = exp < left ? exp : left;
|
|
330
301
|
}
|
|
331
302
|
}
|
|
332
303
|
return result;
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { RouterV300Contract } from "./RouterV300Contract.js";
|
|
1
|
+
import { isV310 } from "../constants/index.js";
|
|
3
2
|
import { RouterV310Contract } from "./RouterV310Contract.js";
|
|
4
3
|
function createRouter(sdk, address, version) {
|
|
5
4
|
const contract = sdk.getContract(address);
|
|
6
5
|
if (contract) {
|
|
7
6
|
return contract;
|
|
8
7
|
}
|
|
9
|
-
if (isV300(version)) {
|
|
10
|
-
return new RouterV300Contract(sdk, address, version);
|
|
11
|
-
}
|
|
12
8
|
if (isV310(version)) {
|
|
13
9
|
return new RouterV310Contract(sdk, address, version);
|
|
14
10
|
}
|
|
@@ -2,9 +2,6 @@ import { AddressMap } from "../utils/index.js";
|
|
|
2
2
|
function balancesMap(assets) {
|
|
3
3
|
return new AddressMap(assets.map(({ token, balance }) => [token, balance]));
|
|
4
4
|
}
|
|
5
|
-
function compareRouterResults(a, b) {
|
|
6
|
-
return a.amount > b.amount ? a : b;
|
|
7
|
-
}
|
|
8
5
|
function assetsMap(assets) {
|
|
9
6
|
return new AddressMap(assets.map((a) => [a.token, a]));
|
|
10
7
|
}
|
|
@@ -20,6 +17,5 @@ function limitLeftover(balance, token) {
|
|
|
20
17
|
export {
|
|
21
18
|
assetsMap,
|
|
22
19
|
balancesMap,
|
|
23
|
-
compareRouterResults,
|
|
24
20
|
limitLeftover
|
|
25
21
|
};
|
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AbiFunctionNotFoundError,
|
|
3
|
-
getAbiItem
|
|
3
|
+
getAbiItem,
|
|
4
|
+
toFunctionSelector,
|
|
5
|
+
toFunctionSignature
|
|
4
6
|
} from "viem";
|
|
5
7
|
import { json_stringify } from "../../sdk/utils/index.js";
|
|
8
|
+
function getFunctionSignature(abi, calldataOrSelector) {
|
|
9
|
+
const selector = calldataOrSelector.slice(0, 10);
|
|
10
|
+
for (const item of abi) {
|
|
11
|
+
if (item.type === "function" && toFunctionSelector(item) === selector) {
|
|
12
|
+
return toFunctionSignature(item);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
throw new Error(`Function with selector ${selector} not found in ABI`);
|
|
16
|
+
}
|
|
6
17
|
function functionArgsToMap(abi, functionName, args) {
|
|
7
18
|
const abiItem = getAbiItem({
|
|
8
19
|
abi,
|
|
@@ -32,6 +43,36 @@ function functionArgsToMap(abi, functionName, args) {
|
|
|
32
43
|
}
|
|
33
44
|
return namedArgs;
|
|
34
45
|
}
|
|
46
|
+
function functionArgsToRecord(abi, functionName, args) {
|
|
47
|
+
const abiItem = getAbiItem({
|
|
48
|
+
abi,
|
|
49
|
+
name: functionName,
|
|
50
|
+
args
|
|
51
|
+
});
|
|
52
|
+
if (!abiItem || abiItem.type !== "function") {
|
|
53
|
+
throw new AbiFunctionNotFoundError(functionName);
|
|
54
|
+
}
|
|
55
|
+
const namedArgs = {};
|
|
56
|
+
if (Array.isArray(args)) {
|
|
57
|
+
args.forEach((value, i) => {
|
|
58
|
+
const input = abiItem.inputs?.[i];
|
|
59
|
+
const key = input?.name || `${i}`;
|
|
60
|
+
namedArgs[key] = value;
|
|
61
|
+
});
|
|
62
|
+
} else {
|
|
63
|
+
Object.entries(args || {}).forEach(([key, value]) => {
|
|
64
|
+
const index = parseInt(key, 10);
|
|
65
|
+
if (!Number.isNaN(index) && abiItem.inputs?.[index]?.name) {
|
|
66
|
+
namedArgs[abiItem.inputs[index].name] = value;
|
|
67
|
+
} else {
|
|
68
|
+
namedArgs[key] = value;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return namedArgs;
|
|
73
|
+
}
|
|
35
74
|
export {
|
|
36
|
-
functionArgsToMap
|
|
75
|
+
functionArgsToMap,
|
|
76
|
+
functionArgsToRecord,
|
|
77
|
+
getFunctionSignature
|
|
37
78
|
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { formatDuration as fmtDuration, intervalToDuration } from "date-fns";
|
|
2
|
+
import Decimal from "decimal.js-light";
|
|
3
|
+
import { LEVERAGE_DECIMALS, PERCENTAGE_FACTOR } from "../constants/index.js";
|
|
2
4
|
const toBigInt = (v) => {
|
|
3
5
|
const value = typeof v === "object" && v.type === "BigNumber" ? v.hex : v.toString();
|
|
4
6
|
return BigInt(value);
|
|
@@ -98,14 +100,48 @@ function formatTimestamp(timestamp, raw = true) {
|
|
|
98
100
|
});
|
|
99
101
|
return raw ? `${result} [${timestamp}]` : result;
|
|
100
102
|
}
|
|
103
|
+
function rayToNumber(num) {
|
|
104
|
+
return Number(toBigInt(num) / 10n ** 21n) / 1e6;
|
|
105
|
+
}
|
|
106
|
+
function toSignificant(num, decimals, precision = 6) {
|
|
107
|
+
if (num === 1n) return "0";
|
|
108
|
+
const divider = new Decimal(10).toPower(decimals);
|
|
109
|
+
const number = new Decimal(num.toString()).div(divider);
|
|
110
|
+
return number.toSignificantDigits(precision, 4).toString();
|
|
111
|
+
}
|
|
112
|
+
function toBN(num, decimals) {
|
|
113
|
+
if (num === "") return 0n;
|
|
114
|
+
const multiplier = new Decimal(10).toPower(decimals);
|
|
115
|
+
const number = new Decimal(num).mul(multiplier);
|
|
116
|
+
return BigInt(number.toFixed(0));
|
|
117
|
+
}
|
|
118
|
+
function shortAddress(address) {
|
|
119
|
+
return address === void 0 ? "" : `${address.slice(0, 6)}...${address.slice(address.length - 4)}`;
|
|
120
|
+
}
|
|
121
|
+
function shortHash(address) {
|
|
122
|
+
return address === void 0 ? "" : `${address.slice(0, 5)}...`;
|
|
123
|
+
}
|
|
124
|
+
function formatPercentage(healthFactor, decimals = 2) {
|
|
125
|
+
return (healthFactor / Number(PERCENTAGE_FACTOR)).toFixed(decimals);
|
|
126
|
+
}
|
|
127
|
+
function formatLeverage(leverage, decimals = 2) {
|
|
128
|
+
return (leverage / Number(LEVERAGE_DECIMALS)).toFixed(decimals);
|
|
129
|
+
}
|
|
101
130
|
export {
|
|
102
131
|
fmtBinaryMask,
|
|
103
132
|
formatBN,
|
|
104
133
|
formatBNvalue,
|
|
105
134
|
formatDuration,
|
|
135
|
+
formatLeverage,
|
|
106
136
|
formatNumberToString_,
|
|
137
|
+
formatPercentage,
|
|
107
138
|
formatTimestamp,
|
|
108
139
|
numberWithCommas,
|
|
109
140
|
percentFmt,
|
|
110
|
-
|
|
141
|
+
rayToNumber,
|
|
142
|
+
shortAddress,
|
|
143
|
+
shortHash,
|
|
144
|
+
toBN,
|
|
145
|
+
toBigInt,
|
|
146
|
+
toSignificant
|
|
111
147
|
};
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
estimateGas,
|
|
3
|
+
sendTransaction
|
|
4
|
+
} from "viem/actions";
|
|
2
5
|
import { getAction } from "viem/utils";
|
|
3
6
|
async function sendRawTx(client, params) {
|
|
4
7
|
const { tx, ...rest } = params;
|
|
@@ -13,6 +16,21 @@ async function sendRawTx(client, params) {
|
|
|
13
16
|
value: BigInt(tx.value)
|
|
14
17
|
});
|
|
15
18
|
}
|
|
19
|
+
async function estimateRawTxGas(client, params) {
|
|
20
|
+
const { tx, ...rest } = params;
|
|
21
|
+
return getAction(
|
|
22
|
+
client,
|
|
23
|
+
estimateGas,
|
|
24
|
+
"estimateGas"
|
|
25
|
+
)({
|
|
26
|
+
...rest,
|
|
27
|
+
account: params.account,
|
|
28
|
+
data: tx.callData,
|
|
29
|
+
to: tx.to,
|
|
30
|
+
value: BigInt(tx.value)
|
|
31
|
+
});
|
|
32
|
+
}
|
|
16
33
|
export {
|
|
34
|
+
estimateRawTxGas,
|
|
17
35
|
sendRawTx
|
|
18
36
|
};
|