@gearbox-protocol/sdk 16.2.0 → 16.3.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/history/assembleOperations.js +3 -3
- package/dist/cjs/history/classifyMulticallOperations.js +7 -7
- package/dist/cjs/history/index.js +13 -0
- package/dist/cjs/history/parseCreditAccountTransaction.js +5 -5
- package/dist/cjs/{preview → history}/trace/errors.js +1 -1
- package/dist/cjs/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
- package/dist/cjs/{preview → history}/trace/extractTransfers.js +3 -3
- package/dist/cjs/{preview → history}/trace/findFacadeCalls.js +3 -3
- package/dist/cjs/history/trace/index.js +14 -0
- package/dist/cjs/model/errors/index.js +37 -0
- package/dist/cjs/model/errors/liquidation-errors.js +32 -0
- package/dist/cjs/model/errors/operation-errors.js +135 -0
- package/dist/cjs/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
- package/dist/cjs/model/errors/prepare-errors.js +108 -0
- package/dist/cjs/model/errors/preview-errors.js +12 -0
- package/dist/cjs/model/index.js +40 -2
- package/dist/cjs/model/positions.js +1 -1
- package/dist/cjs/model/result.js +0 -8
- package/dist/cjs/model/rwa.js +40 -0
- package/dist/cjs/onchain/accounts/index.js +0 -2
- package/dist/cjs/onchain/accounts/intents/guards.js +42 -66
- package/dist/cjs/onchain/accounts/intents/index.js +38 -35
- package/dist/cjs/onchain/accounts/intents/leverage-band.js +1 -1
- package/dist/cjs/onchain/accounts/intents/math.js +19 -15
- package/dist/cjs/onchain/accounts/intents/open-strategy.js +6 -4
- package/dist/cjs/onchain/accounts/intents/plan.js +52 -48
- package/dist/cjs/onchain/accounts/intents/realize.js +26 -24
- package/dist/cjs/onchain/accounts/intents/tail.js +15 -12
- package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +7 -0
- package/dist/cjs/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
- package/dist/cjs/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
- package/dist/cjs/onchain/accounts/intents/view.js +1 -1
- package/dist/cjs/onchain/accounts/withdrawal-compressor/index.js +0 -1
- package/dist/cjs/onchain/index.js +122 -36
- package/dist/cjs/onchain/market/MarketSuite.js +7 -1
- package/dist/cjs/onchain/market/adapters/index.js +1 -0
- package/dist/cjs/onchain/market/credit/CreditSuite.js +47 -15
- package/dist/cjs/onchain/market/index.js +0 -6
- package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +6 -6
- package/dist/cjs/onchain/market/oracle/index.js +0 -2
- package/dist/cjs/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
- package/dist/cjs/onchain/market/rwa/RWARegistry.js +3 -2
- package/dist/cjs/onchain/market/rwa/index.js +0 -4
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +7 -7
- package/dist/cjs/onchain/market/rwa/securitize/constants.js +0 -2
- package/dist/cjs/onchain/market/rwa/securitize/index.js +1 -3
- package/dist/cjs/onchain/market/rwa/securitize/types.js +0 -29
- package/dist/cjs/onchain/market/rwa/types.js +0 -7
- package/dist/cjs/onchain/market/zapper/index.js +0 -1
- package/dist/cjs/onchain/pools/PoolService.js +10 -16
- package/dist/cjs/onchain/preview/index.js +41 -0
- package/dist/cjs/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
- package/dist/cjs/onchain/preview/parse/index.js +14 -0
- package/dist/cjs/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +3 -3
- package/dist/cjs/{preview → onchain/preview}/parse/parseOperationCalldata.js +16 -17
- package/dist/cjs/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
- package/dist/cjs/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +11 -12
- package/dist/cjs/{preview → onchain/preview}/parse/types.js +1 -1
- package/dist/cjs/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
- package/dist/cjs/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
- package/dist/cjs/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
- package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
- package/dist/cjs/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
- package/dist/cjs/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
- package/dist/cjs/onchain/preview/preview/index.js +26 -0
- package/dist/cjs/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +18 -22
- package/dist/cjs/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +22 -28
- package/dist/cjs/onchain/preview/preview/previewOpenStrategyPosition.js +60 -0
- package/dist/cjs/onchain/preview/preview/previewOperation.js +119 -0
- package/dist/cjs/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -32
- package/dist/cjs/onchain/preview/preview/replayInnerOperations.js +109 -0
- package/dist/cjs/onchain/preview/preview/replayMulticall.js +22 -0
- package/dist/cjs/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
- package/dist/cjs/onchain/validation/bundles/checkAccountQuotas.js +20 -0
- package/dist/cjs/onchain/validation/bundles/checkCollateralFunding.js +59 -0
- package/dist/cjs/onchain/validation/bundles/checkCreditOperation.js +65 -0
- package/dist/cjs/onchain/validation/bundles/checkDraw.js +28 -0
- package/dist/cjs/onchain/validation/bundles/checkHealthFactors.js +27 -0
- package/dist/cjs/onchain/validation/bundles/checkLiquidationEligibility.js +33 -0
- package/dist/cjs/onchain/validation/bundles/checkLiquidationFunding.js +29 -0
- package/dist/cjs/onchain/validation/bundles/checkMarket.js +24 -0
- package/dist/cjs/onchain/validation/bundles/checkObtained.js +13 -0
- package/dist/cjs/onchain/validation/bundles/checkPoolFunding.js +22 -0
- package/dist/cjs/onchain/validation/bundles/checkPoolOperation.js +35 -0
- package/dist/cjs/onchain/validation/bundles/checkQuotasAsked.js +20 -0
- package/dist/cjs/onchain/validation/bundles/checkRWAOpenRequirements.js +33 -0
- package/dist/cjs/onchain/validation/bundles/checkRWAOpening.js +24 -0
- package/dist/cjs/onchain/validation/bundles/checkWallet.js +22 -0
- package/dist/cjs/onchain/validation/bundles/checkWalletAllowance.js +32 -0
- package/dist/cjs/onchain/validation/bundles/checkWalletBalance.js +41 -0
- package/dist/cjs/onchain/validation/bundles/index.js +35 -0
- package/dist/cjs/onchain/validation/checkLiquidation.js +22 -0
- package/dist/cjs/onchain/validation/checkOperation.js +62 -0
- package/dist/cjs/onchain/validation/checkSimulation.js +60 -0
- package/dist/cjs/onchain/validation/checks/checkBorrowLimit.js +25 -0
- package/dist/cjs/onchain/validation/checks/checkCollateralised.js +26 -0
- package/dist/cjs/onchain/validation/checks/checkCreditAccountFrozen.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkCreditManagerPaused.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkDebtLimits.js +18 -0
- package/dist/cjs/onchain/validation/checks/checkEmergencyLiquidator.js +13 -0
- package/dist/cjs/onchain/validation/checks/checkForbiddenToken.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkLeverage.js +13 -0
- package/dist/cjs/onchain/validation/checks/checkLiquidatorEligible.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkMarketExpired.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkPoolLiquidity.js +25 -0
- package/dist/cjs/onchain/validation/checks/checkPoolPaused.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkPoolSunset.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkQuotaCount.js +10 -0
- package/dist/cjs/onchain/validation/checks/checkQuotaLimit.js +18 -0
- package/dist/cjs/onchain/validation/checks/index.js +31 -0
- package/dist/cjs/onchain/validation/helpers/amount.js +12 -0
- package/dist/cjs/onchain/validation/helpers/health-factor-limits.js +25 -0
- package/dist/cjs/onchain/validation/helpers/index.js +11 -0
- package/dist/cjs/onchain/validation/{token.js → helpers/token.js} +4 -4
- package/dist/cjs/onchain/validation/index.js +85 -27
- package/dist/cjs/onchain/validation/raise.js +33 -0
- package/dist/cjs/sdk/index.js +6 -11
- package/dist/cjs/sdk/liquidations/LiquidationsNamespace.js +9 -0
- package/dist/cjs/sdk/prepare/PrepareApi.js +40 -50
- package/dist/cjs/sdk/prepare/index.js +7 -11
- package/dist/cjs/sdk/prepare/types.js +0 -4
- package/dist/cjs/sdk/preview/PreviewNamespace.js +24 -13
- package/dist/esm/dev/AccountOpener.js +1 -1
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/history/assembleOperations.js +2 -2
- package/dist/esm/history/classifyMulticallOperations.js +2 -2
- package/dist/esm/history/index.js +6 -1
- package/dist/esm/history/parseCreditAccountTransaction.js +3 -3
- package/dist/esm/{preview → history}/trace/errors.js +1 -1
- package/dist/esm/{preview → history}/trace/extractAdapterCallTraces.js +1 -1
- package/dist/esm/{preview → history}/trace/extractTransfers.js +2 -2
- package/dist/esm/{preview → history}/trace/findFacadeCalls.js +1 -1
- package/dist/esm/model/errors/index.js +7 -0
- package/dist/esm/model/errors/liquidation-errors.js +29 -0
- package/dist/esm/model/errors/operation-errors.js +121 -0
- package/dist/esm/{onchain/market/oracle/errors.js → model/errors/oracle-errors.js} +1 -1
- package/dist/esm/model/errors/prepare-errors.js +97 -0
- package/dist/esm/model/errors/preview-errors.js +11 -0
- package/dist/esm/model/index.js +9 -3
- package/dist/esm/model/positions.js +1 -1
- package/dist/esm/model/result.js +1 -8
- package/dist/esm/model/rwa.js +37 -0
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
- package/dist/esm/onchain/accounts/index.js +1 -2
- package/dist/esm/onchain/accounts/intents/guards.js +29 -52
- package/dist/esm/onchain/accounts/intents/index.js +39 -35
- package/dist/esm/onchain/accounts/intents/leverage-band.js +1 -1
- package/dist/esm/onchain/accounts/intents/math.js +18 -14
- package/dist/esm/onchain/accounts/intents/open-strategy.js +8 -6
- package/dist/esm/onchain/accounts/intents/plan.js +51 -47
- package/dist/esm/onchain/accounts/intents/realize.js +26 -24
- package/dist/esm/onchain/accounts/intents/tail.js +14 -11
- package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +7 -0
- package/dist/esm/onchain/accounts/intents/tests/finish-withdraw.fixtures.js +6 -6
- package/dist/esm/onchain/accounts/intents/tests/withdraw.fixtures.js +12 -12
- package/dist/esm/onchain/accounts/intents/view.js +1 -1
- package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
- package/dist/esm/onchain/accounts/withdrawal-compressor/index.js +0 -1
- package/dist/esm/onchain/base/TokensMeta.js +3 -3
- package/dist/esm/onchain/core/createAddressProvider.js +1 -1
- package/dist/esm/onchain/index.js +61 -10
- package/dist/esm/onchain/market/MarketSuite.js +7 -1
- package/dist/esm/onchain/market/adapters/contracts/AccountMigratorAdapterContract.js +1 -1
- package/dist/esm/onchain/market/adapters/contracts/ERC4626AdapterContract.js +1 -1
- package/dist/esm/onchain/market/adapters/index.js +1 -0
- package/dist/esm/onchain/market/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/onchain/market/credit/CreditSuite.js +47 -15
- package/dist/esm/onchain/market/index.js +3 -5
- package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +1 -1
- package/dist/esm/onchain/market/oracle/index.js +1 -2
- package/dist/esm/onchain/market/pool/PoolQuotaKeeperV310Contract.js +8 -0
- package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
- package/dist/esm/onchain/market/rwa/RWARegistry.js +2 -1
- package/dist/esm/onchain/market/rwa/index.js +3 -4
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +2 -2
- package/dist/esm/onchain/market/rwa/securitize/constants.js +1 -2
- package/dist/esm/onchain/market/rwa/securitize/index.js +3 -3
- package/dist/esm/onchain/market/rwa/securitize/types.js +1 -29
- package/dist/esm/onchain/market/rwa/types.js +1 -7
- package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/index.js +0 -1
- package/dist/esm/onchain/pools/PoolService.js +10 -16
- package/dist/esm/onchain/preview/index.js +20 -0
- package/dist/esm/{preview → onchain/preview}/parse/classifyInnerOperations.js +2 -3
- package/dist/esm/{preview → onchain/preview}/parse/index.js +0 -1
- package/dist/esm/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.js +1 -1
- package/dist/esm/{preview → onchain/preview}/parse/parseOperationCalldata.js +10 -11
- package/dist/esm/{preview → onchain/preview}/parse/parsePoolOperationCalldata.js +3 -3
- package/dist/esm/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.js +8 -9
- package/dist/esm/{preview → onchain/preview}/parse/types.js +1 -1
- package/dist/esm/{preview → onchain/preview}/preview/CreditAccountState.js +3 -4
- package/dist/esm/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.js +10 -11
- package/dist/esm/{preview → onchain/preview}/preview/detectCloseOrRepay.js +2 -3
- package/dist/esm/{preview → onchain/preview}/preview/detectDelayedClaim.js +4 -5
- package/dist/esm/{preview → onchain/preview}/preview/detectDelayedOperation.js +5 -6
- package/dist/esm/{preview → onchain/preview}/preview/estimateClaimableAt.js +1 -1
- package/dist/esm/{preview → onchain/preview}/preview/index.js +3 -4
- package/dist/esm/{preview → onchain/preview}/preview/previewAdjustStrategyPosition.js +17 -21
- package/dist/esm/{preview → onchain/preview}/preview/previewExitOrRepayStrategyPosition.js +20 -26
- package/dist/esm/{preview → onchain/preview}/preview/previewOpenStrategyPosition.js +25 -15
- package/dist/esm/{preview → onchain/preview}/preview/previewOperation.js +54 -35
- package/dist/esm/{preview/simulate/simulatePoolOperation.js → onchain/preview/preview/previewPoolPositionOperation.js} +46 -30
- package/dist/esm/onchain/preview/preview/replayInnerOperations.js +107 -0
- package/dist/esm/onchain/preview/preview/replayMulticall.js +21 -0
- package/dist/esm/{preview → onchain/preview}/preview/unwrapNativeCollateral.js +11 -14
- package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/esm/onchain/validation/bundles/checkAccountQuotas.js +19 -0
- package/dist/esm/onchain/validation/bundles/checkCollateralFunding.js +58 -0
- package/dist/esm/onchain/validation/bundles/checkCreditOperation.js +64 -0
- package/dist/esm/onchain/validation/bundles/checkDraw.js +27 -0
- package/dist/esm/onchain/validation/bundles/checkHealthFactors.js +26 -0
- package/dist/esm/onchain/validation/bundles/checkLiquidationEligibility.js +32 -0
- package/dist/esm/onchain/validation/bundles/checkLiquidationFunding.js +28 -0
- package/dist/esm/onchain/validation/bundles/checkMarket.js +23 -0
- package/dist/esm/onchain/validation/bundles/checkObtained.js +12 -0
- package/dist/esm/onchain/validation/bundles/checkPoolFunding.js +21 -0
- package/dist/esm/onchain/validation/bundles/checkPoolOperation.js +34 -0
- package/dist/esm/onchain/validation/bundles/checkQuotasAsked.js +19 -0
- package/dist/esm/onchain/validation/bundles/checkRWAOpenRequirements.js +32 -0
- package/dist/esm/onchain/validation/bundles/checkRWAOpening.js +23 -0
- package/dist/esm/onchain/validation/bundles/checkWallet.js +21 -0
- package/dist/esm/onchain/validation/bundles/checkWalletAllowance.js +31 -0
- package/dist/esm/onchain/validation/bundles/checkWalletBalance.js +40 -0
- package/dist/esm/onchain/validation/bundles/index.js +18 -0
- package/dist/esm/onchain/validation/checkLiquidation.js +21 -0
- package/dist/esm/onchain/validation/checkOperation.js +61 -0
- package/dist/esm/onchain/validation/checkSimulation.js +59 -0
- package/dist/esm/onchain/validation/checks/checkBorrowLimit.js +24 -0
- package/dist/esm/onchain/validation/checks/checkCollateralised.js +25 -0
- package/dist/esm/onchain/validation/checks/checkCreditAccountFrozen.js +9 -0
- package/dist/esm/onchain/validation/checks/checkCreditManagerPaused.js +9 -0
- package/dist/esm/onchain/validation/checks/checkDebtLimits.js +17 -0
- package/dist/esm/onchain/validation/checks/checkEmergencyLiquidator.js +12 -0
- package/dist/esm/onchain/validation/checks/checkForbiddenToken.js +9 -0
- package/dist/esm/onchain/validation/checks/checkLeverage.js +12 -0
- package/dist/esm/onchain/validation/checks/checkLiquidatorEligible.js +9 -0
- package/dist/esm/onchain/validation/checks/checkMarketExpired.js +9 -0
- package/dist/esm/onchain/validation/checks/checkPoolLiquidity.js +24 -0
- package/dist/esm/onchain/validation/checks/checkPoolPaused.js +9 -0
- package/dist/esm/onchain/validation/checks/checkPoolSunset.js +9 -0
- package/dist/esm/onchain/validation/checks/checkQuotaCount.js +9 -0
- package/dist/esm/onchain/validation/checks/checkQuotaLimit.js +17 -0
- package/dist/esm/onchain/validation/checks/index.js +16 -0
- package/dist/esm/onchain/validation/helpers/amount.js +11 -0
- package/dist/esm/onchain/validation/helpers/health-factor-limits.js +21 -0
- package/dist/esm/onchain/validation/helpers/index.js +4 -0
- package/dist/esm/onchain/validation/{token.js → helpers/token.js} +3 -3
- package/dist/esm/onchain/validation/index.js +43 -4
- package/dist/esm/onchain/validation/raise.js +31 -0
- package/dist/esm/sdk/index.js +2 -3
- package/dist/esm/sdk/liquidations/LiquidationsNamespace.js +9 -0
- package/dist/esm/sdk/prepare/PrepareApi.js +25 -35
- package/dist/esm/sdk/prepare/index.js +3 -3
- package/dist/esm/sdk/prepare/types.js +1 -2
- package/dist/esm/sdk/preview/PreviewNamespace.js +24 -13
- package/dist/types/history/assembleOperations.d.ts +4 -5
- package/dist/types/history/classifyMulticallOperations.d.ts +3 -4
- package/dist/types/history/index.d.ts +8 -2
- package/dist/types/history/mapOperations.d.ts +1 -1
- package/dist/types/{preview → history}/trace/errors.d.ts +1 -1
- package/dist/types/{preview → history}/trace/extractAdapterCallTraces.d.ts +1 -1
- package/dist/types/{preview → history}/trace/extractTransfers.d.ts +2 -3
- package/dist/types/{preview → history}/trace/findFacadeCalls.d.ts +1 -1
- package/dist/types/{preview → history}/trace/types.d.ts +1 -1
- package/dist/types/history/types.d.ts +2 -3
- package/dist/types/model/errors/base.d.ts +28 -0
- package/dist/types/model/errors/index.d.ts +7 -0
- package/dist/types/model/errors/liquidation-errors.d.ts +45 -0
- package/dist/types/model/errors/operation-errors.d.ts +216 -0
- package/dist/types/{onchain/market/oracle/errors.d.ts → model/errors/oracle-errors.d.ts} +3 -5
- package/dist/types/model/errors/prepare-errors.d.ts +131 -0
- package/dist/types/model/errors/preview-errors.d.ts +72 -0
- package/dist/types/model/index.d.ts +11 -4
- package/dist/types/model/opportunities.d.ts +3 -2
- package/dist/types/model/positions.d.ts +2 -2
- package/dist/types/model/previews.d.ts +52 -113
- package/dist/types/model/result.d.ts +4 -8
- package/dist/types/model/rwa.d.ts +143 -0
- package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +3 -1
- package/dist/types/onchain/accounts/index.d.ts +2 -4
- package/dist/types/onchain/accounts/intents/guards.d.ts +8 -18
- package/dist/types/onchain/accounts/intents/index.d.ts +20 -19
- package/dist/types/onchain/accounts/intents/leverage-band.d.ts +1 -1
- package/dist/types/onchain/accounts/intents/math.d.ts +6 -6
- package/dist/types/onchain/accounts/intents/operations.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/plan.d.ts +9 -9
- package/dist/types/onchain/accounts/intents/tail.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/testing/expect.d.ts +3 -3
- package/dist/types/onchain/accounts/intents/tests/finish-withdraw.fixtures.d.ts +6 -6
- package/dist/types/onchain/accounts/intents/tests/withdraw.fixtures.d.ts +12 -12
- package/dist/types/onchain/accounts/intents/types.d.ts +32 -30
- package/dist/types/onchain/accounts/types.d.ts +2 -1
- package/dist/types/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.d.ts +1 -1
- package/dist/types/onchain/accounts/withdrawal-compressor/index.d.ts +1 -2
- package/dist/types/onchain/accounts/withdrawal-compressor/types.d.ts +1 -1
- package/dist/types/onchain/index.d.ts +68 -13
- package/dist/types/onchain/market/MarketSuite.d.ts +5 -1
- package/dist/types/onchain/market/adapters/index.d.ts +2 -1
- package/dist/types/onchain/market/adapters/transfers.d.ts +0 -7
- package/dist/types/onchain/market/credit/CreditSuite.d.ts +20 -8
- package/dist/types/onchain/market/credit/index.d.ts +2 -2
- package/dist/types/onchain/market/credit/types.d.ts +11 -1
- package/dist/types/onchain/market/index.d.ts +6 -7
- package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +1 -1
- package/dist/types/onchain/market/oracle/index.d.ts +1 -2
- package/dist/types/onchain/market/oracle/types.d.ts +1 -1
- package/dist/types/onchain/market/pool/PoolQuotaKeeperV310Contract.d.ts +5 -0
- package/dist/types/onchain/market/rwa/index.d.ts +4 -4
- package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +3 -2
- package/dist/types/onchain/market/rwa/securitize/constants.d.ts +1 -2
- package/dist/types/onchain/market/rwa/securitize/index.d.ts +3 -3
- package/dist/types/onchain/market/rwa/securitize/types.d.ts +4 -110
- package/dist/types/onchain/market/rwa/types.d.ts +6 -32
- package/dist/types/onchain/market/zapper/ZapperContract.d.ts +1 -1
- package/dist/types/onchain/market/zapper/index.d.ts +1 -2
- package/dist/types/onchain/market/zapper/types.d.ts +1 -1
- package/dist/types/onchain/pools/types.d.ts +2 -2
- package/dist/types/onchain/preview/index.d.ts +24 -0
- package/dist/types/{preview → onchain/preview}/parse/classifyInnerOperations.d.ts +4 -4
- package/dist/types/{preview → onchain/preview}/parse/index.d.ts +2 -4
- package/dist/types/{preview → onchain/preview}/parse/parseFacadeOperationCalldata.d.ts +4 -4
- package/dist/types/onchain/preview/parse/parseOperationCalldata.d.ts +18 -0
- package/dist/types/{preview → onchain/preview}/parse/parsePoolOperationCalldata.d.ts +7 -7
- package/dist/types/{preview → onchain/preview}/parse/parseRWAFactoryOperationCalldata.d.ts +4 -4
- package/dist/types/{preview → onchain/preview}/parse/types-adapters.d.ts +5 -16
- package/dist/types/{preview → onchain/preview}/parse/types-facades.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/parse/types-pools.d.ts +1 -1
- package/dist/types/{preview → onchain/preview}/parse/types-rwa.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/parse/types.d.ts +3 -3
- package/dist/types/{preview → onchain/preview}/preview/CreditAccountState.d.ts +5 -5
- package/dist/types/{preview → onchain/preview}/preview/buildDelayedStrategyPositionOperationPreview.d.ts +5 -5
- package/dist/types/{preview → onchain/preview}/preview/detectCloseOrRepay.d.ts +1 -1
- package/dist/types/{preview → onchain/preview}/preview/detectDelayedClaim.d.ts +8 -8
- package/dist/types/{preview → onchain/preview}/preview/detectDelayedOperation.d.ts +9 -9
- package/dist/types/{preview → onchain/preview}/preview/estimateClaimableAt.d.ts +6 -6
- package/dist/types/{preview → onchain/preview}/preview/index.d.ts +3 -4
- package/dist/types/onchain/preview/preview/previewAdjustStrategyPosition.d.ts +20 -0
- package/dist/types/onchain/preview/preview/previewExitOrRepayStrategyPosition.d.ts +21 -0
- package/dist/types/onchain/preview/preview/previewOpenStrategyPosition.d.ts +14 -0
- package/dist/types/onchain/preview/preview/previewOperation.d.ts +32 -0
- package/dist/types/onchain/preview/preview/previewPoolPositionOperation.d.ts +13 -0
- package/dist/types/{preview → onchain/preview}/preview/replayInnerOperations.d.ts +11 -11
- package/dist/types/{preview → onchain/preview}/preview/replayMulticall.d.ts +10 -10
- package/dist/types/{preview → onchain/preview}/preview/unwrapNativeCollateral.d.ts +10 -20
- package/dist/types/onchain/validation/bundles/checkAccountQuotas.d.ts +16 -0
- package/dist/types/onchain/validation/bundles/checkCollateralFunding.d.ts +22 -0
- package/dist/types/onchain/validation/bundles/checkCreditOperation.d.ts +31 -0
- package/dist/types/onchain/validation/bundles/checkDraw.d.ts +20 -0
- package/dist/types/onchain/validation/bundles/checkHealthFactors.d.ts +39 -0
- package/dist/types/onchain/validation/bundles/checkLiquidationEligibility.d.ts +20 -0
- package/dist/types/onchain/validation/bundles/checkLiquidationFunding.d.ts +18 -0
- package/dist/types/onchain/validation/bundles/checkMarket.d.ts +15 -0
- package/dist/types/onchain/validation/bundles/checkObtained.d.ts +9 -0
- package/dist/types/onchain/validation/bundles/checkPoolFunding.d.ts +19 -0
- package/dist/types/onchain/validation/bundles/checkPoolOperation.d.ts +31 -0
- package/dist/types/onchain/validation/bundles/checkQuotasAsked.d.ts +10 -0
- package/dist/types/onchain/validation/bundles/checkRWAOpenRequirements.d.ts +21 -0
- package/dist/types/onchain/validation/bundles/checkRWAOpening.d.ts +19 -0
- package/dist/types/onchain/validation/bundles/checkWallet.d.ts +23 -0
- package/dist/types/onchain/validation/bundles/checkWalletAllowance.d.ts +18 -0
- package/dist/types/onchain/validation/bundles/checkWalletBalance.d.ts +17 -0
- package/dist/types/onchain/validation/bundles/index.d.ts +18 -0
- package/dist/types/onchain/validation/checkLiquidation.d.ts +23 -0
- package/dist/types/onchain/validation/checkOperation.d.ts +32 -0
- package/dist/types/onchain/validation/checkSimulation.d.ts +56 -0
- package/dist/types/onchain/validation/checks/checkBorrowLimit.d.ts +21 -0
- package/dist/types/onchain/validation/checks/checkCollateralised.d.ts +25 -0
- package/dist/types/onchain/validation/checks/checkCreditAccountFrozen.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkCreditManagerPaused.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkDebtLimits.d.ts +21 -0
- package/dist/types/onchain/validation/checks/checkEmergencyLiquidator.d.ts +17 -0
- package/dist/types/onchain/validation/checks/checkForbiddenToken.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkLeverage.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkLiquidatorEligible.d.ts +13 -0
- package/dist/types/onchain/validation/checks/checkMarketExpired.d.ts +14 -0
- package/dist/types/onchain/validation/checks/checkPoolLiquidity.d.ts +20 -0
- package/dist/types/onchain/validation/checks/checkPoolPaused.d.ts +12 -0
- package/dist/types/onchain/validation/checks/checkPoolSunset.d.ts +13 -0
- package/dist/types/onchain/validation/checks/checkQuotaCount.d.ts +11 -0
- package/dist/types/onchain/validation/checks/checkQuotaLimit.d.ts +18 -0
- package/dist/types/onchain/validation/checks/index.d.ts +16 -0
- package/dist/types/onchain/validation/helpers/amount.d.ts +7 -0
- package/dist/types/onchain/validation/helpers/health-factor-limits.d.ts +21 -0
- package/dist/types/onchain/validation/helpers/index.d.ts +4 -0
- package/dist/types/onchain/validation/{token.d.ts → helpers/token.d.ts} +4 -4
- package/dist/types/onchain/validation/index.d.ts +43 -4
- package/dist/types/onchain/validation/raise.d.ts +33 -0
- package/dist/types/sdk/execute/types.d.ts +2 -2
- package/dist/types/sdk/index.d.ts +5 -6
- package/dist/types/sdk/liquidations/LiquidationsNamespace.d.ts +5 -0
- package/dist/types/sdk/liquidations/types.d.ts +8 -0
- package/dist/types/sdk/prepare/PrepareApi.d.ts +5 -4
- package/dist/types/sdk/prepare/index.d.ts +5 -5
- package/dist/types/sdk/prepare/types.d.ts +41 -22
- package/dist/types/sdk/preview/PreviewNamespace.d.ts +13 -3
- package/dist/types/sdk/preview/index.d.ts +2 -2
- package/dist/types/sdk/preview/types.d.ts +30 -7
- package/package.json +1 -6
- package/dist/cjs/onchain/accounts/withdrawal-compressor/errors.js +0 -1
- package/dist/cjs/onchain/market/zapper/errors.js +0 -1
- package/dist/cjs/onchain/validation/checks.js +0 -258
- package/dist/cjs/onchain/validation/refusal.js +0 -39
- package/dist/cjs/preview/index.js +0 -86
- package/dist/cjs/preview/package.json +0 -1
- package/dist/cjs/preview/parse/errors.js +0 -1
- package/dist/cjs/preview/parse/index.js +0 -15
- package/dist/cjs/preview/prerequisites/AllowancePrerequisite.js +0 -38
- package/dist/cjs/preview/prerequisites/BalancePrerequisite.js +0 -52
- package/dist/cjs/preview/prerequisites/Prerequisite.js +0 -52
- package/dist/cjs/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -53
- package/dist/cjs/preview/prerequisites/buildCollateralPrerequisites.js +0 -63
- package/dist/cjs/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -19
- package/dist/cjs/preview/prerequisites/buildPoolPrerequisites.js +0 -76
- package/dist/cjs/preview/prerequisites/buildRWAPrerequisites.js +0 -39
- package/dist/cjs/preview/prerequisites/checkPrerequisites.js +0 -74
- package/dist/cjs/preview/prerequisites/helpers.js +0 -23
- package/dist/cjs/preview/prerequisites/index.js +0 -12
- package/dist/cjs/preview/preview/errors.js +0 -85
- package/dist/cjs/preview/preview/index.js +0 -33
- package/dist/cjs/preview/preview/previewOpenStrategyPosition.js +0 -50
- package/dist/cjs/preview/preview/previewOperation.js +0 -100
- package/dist/cjs/preview/preview/previewPoolPositionOperation.js +0 -49
- package/dist/cjs/preview/preview/replayInnerOperations.js +0 -109
- package/dist/cjs/preview/preview/replayMulticall.js +0 -19
- package/dist/cjs/preview/simulate/errors.js +0 -73
- package/dist/cjs/preview/simulate/index.js +0 -11
- package/dist/cjs/preview/simulate/simulateFacadeOperation.js +0 -15
- package/dist/cjs/preview/simulate/simulateOperation.js +0 -29
- package/dist/cjs/preview/simulate/simulateRWAOperation.js +0 -15
- package/dist/cjs/preview/simulate/types.js +0 -1
- package/dist/cjs/preview/trace/index.js +0 -14
- package/dist/cjs/preview/trace/types.js +0 -1
- package/dist/cjs/preview/types.js +0 -1
- package/dist/cjs/preview/validate/checkOperation.js +0 -187
- package/dist/cjs/preview/validate/checkSimulation.js +0 -39
- package/dist/cjs/preview/validate/index.js +0 -8
- package/dist/cjs/sdk/prepare/errors.js +0 -114
- package/dist/esm/onchain/accounts/withdrawal-compressor/errors.js +0 -1
- package/dist/esm/onchain/market/zapper/errors.js +0 -1
- package/dist/esm/onchain/validation/checks.js +0 -238
- package/dist/esm/onchain/validation/refusal.js +0 -36
- package/dist/esm/preview/index.js +0 -38
- package/dist/esm/preview/package.json +0 -1
- package/dist/esm/preview/parse/errors.js +0 -1
- package/dist/esm/preview/prerequisites/AllowancePrerequisite.js +0 -37
- package/dist/esm/preview/prerequisites/BalancePrerequisite.js +0 -51
- package/dist/esm/preview/prerequisites/Prerequisite.js +0 -51
- package/dist/esm/preview/prerequisites/RWAOpenRequirementsPrerequisite.js +0 -52
- package/dist/esm/preview/prerequisites/buildCollateralPrerequisites.js +0 -62
- package/dist/esm/preview/prerequisites/buildPartialLiquidationPrerequisites.js +0 -18
- package/dist/esm/preview/prerequisites/buildPoolPrerequisites.js +0 -75
- package/dist/esm/preview/prerequisites/buildRWAPrerequisites.js +0 -38
- package/dist/esm/preview/prerequisites/checkPrerequisites.js +0 -73
- package/dist/esm/preview/prerequisites/helpers.js +0 -22
- package/dist/esm/preview/prerequisites/index.js +0 -7
- package/dist/esm/preview/preview/errors.js +0 -79
- package/dist/esm/preview/preview/previewPoolPositionOperation.js +0 -48
- package/dist/esm/preview/preview/replayInnerOperations.js +0 -107
- package/dist/esm/preview/preview/replayMulticall.js +0 -18
- package/dist/esm/preview/simulate/errors.js +0 -71
- package/dist/esm/preview/simulate/index.js +0 -6
- package/dist/esm/preview/simulate/simulateFacadeOperation.js +0 -14
- package/dist/esm/preview/simulate/simulateOperation.js +0 -28
- package/dist/esm/preview/simulate/simulateRWAOperation.js +0 -14
- package/dist/esm/preview/simulate/types.js +0 -1
- package/dist/esm/preview/trace/types.js +0 -1
- package/dist/esm/preview/types.js +0 -1
- package/dist/esm/preview/validate/checkOperation.js +0 -183
- package/dist/esm/preview/validate/checkSimulation.js +0 -38
- package/dist/esm/preview/validate/index.js +0 -3
- package/dist/esm/sdk/prepare/errors.js +0 -108
- package/dist/types/model/errors.d.ts +0 -46
- package/dist/types/onchain/accounts/withdrawal-compressor/errors.d.ts +0 -20
- package/dist/types/onchain/market/zapper/errors.d.ts +0 -18
- package/dist/types/onchain/validation/checks.d.ts +0 -164
- package/dist/types/onchain/validation/refusal.d.ts +0 -242
- package/dist/types/preview/index.d.ts +0 -47
- package/dist/types/preview/parse/errors.d.ts +0 -29
- package/dist/types/preview/parse/parseOperationCalldata.d.ts +0 -18
- package/dist/types/preview/prerequisites/AllowancePrerequisite.d.ts +0 -26
- package/dist/types/preview/prerequisites/BalancePrerequisite.d.ts +0 -29
- package/dist/types/preview/prerequisites/Prerequisite.d.ts +0 -26
- package/dist/types/preview/prerequisites/RWAOpenRequirementsPrerequisite.d.ts +0 -55
- package/dist/types/preview/prerequisites/buildCollateralPrerequisites.d.ts +0 -20
- package/dist/types/preview/prerequisites/buildPartialLiquidationPrerequisites.d.ts +0 -12
- package/dist/types/preview/prerequisites/buildPoolPrerequisites.d.ts +0 -12
- package/dist/types/preview/prerequisites/buildRWAPrerequisites.d.ts +0 -26
- package/dist/types/preview/prerequisites/checkPrerequisites.d.ts +0 -28
- package/dist/types/preview/prerequisites/helpers.d.ts +0 -10
- package/dist/types/preview/prerequisites/index.d.ts +0 -7
- package/dist/types/preview/prerequisites/types.d.ts +0 -53
- package/dist/types/preview/preview/errors.d.ts +0 -44
- package/dist/types/preview/preview/previewAdjustStrategyPosition.d.ts +0 -19
- package/dist/types/preview/preview/previewExitOrRepayStrategyPosition.d.ts +0 -18
- package/dist/types/preview/preview/previewOpenStrategyPosition.d.ts +0 -12
- package/dist/types/preview/preview/previewOperation.d.ts +0 -32
- package/dist/types/preview/preview/previewPoolPositionOperation.d.ts +0 -13
- package/dist/types/preview/simulate/errors.d.ts +0 -52
- package/dist/types/preview/simulate/index.d.ts +0 -7
- package/dist/types/preview/simulate/simulateFacadeOperation.d.ts +0 -16
- package/dist/types/preview/simulate/simulateOperation.d.ts +0 -12
- package/dist/types/preview/simulate/simulatePoolOperation.d.ts +0 -42
- package/dist/types/preview/simulate/simulateRWAOperation.d.ts +0 -16
- package/dist/types/preview/simulate/types.d.ts +0 -48
- package/dist/types/preview/types.d.ts +0 -65
- package/dist/types/preview/validate/checkOperation.d.ts +0 -71
- package/dist/types/preview/validate/checkSimulation.d.ts +0 -32
- package/dist/types/preview/validate/index.d.ts +0 -3
- package/dist/types/sdk/prepare/errors.d.ts +0 -343
- /package/dist/cjs/{preview/prerequisites → history/trace}/types.js +0 -0
- /package/dist/cjs/model/{errors.js → errors/base.js} +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-adapters.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-facades.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-pools.js +0 -0
- /package/dist/cjs/{preview → onchain/preview}/parse/types-rwa.js +0 -0
- /package/dist/esm/{preview → history}/trace/index.js +0 -0
- /package/dist/esm/{preview/prerequisites → history/trace}/types.js +0 -0
- /package/dist/esm/model/{errors.js → errors/base.js} +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-adapters.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-facades.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-pools.js +0 -0
- /package/dist/esm/{preview → onchain/preview}/parse/types-rwa.js +0 -0
- /package/dist/types/{preview → history}/trace/index.d.ts +0 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { liquidatorNotEligible } from "../../../model/errors/liquidation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
//#region src/onchain/validation/checks/checkLiquidatorEligible.ts
|
|
4
|
+
/** The compressor's KYC check of this wallet against the liquidated assets. */
|
|
5
|
+
function checkLiquidatorEligible(args) {
|
|
6
|
+
return args.eligible ? [] : [liquidatorNotEligible(args.kycProtocol, args.kycToken)];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkLiquidatorEligible };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { marketExpired } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
//#region src/onchain/validation/checks/checkMarketExpired.ts
|
|
4
|
+
/** Past its expiration date the facade takes no more multicalls. */
|
|
5
|
+
function checkMarketExpired(args) {
|
|
6
|
+
return args.isExpired ? [marketExpired(args.creditManager, args.expirationDate)] : [];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkMarketExpired };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { insufficientPoolLiquidity } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { amountOf } from "../helpers/amount.js";
|
|
4
|
+
import "../helpers/index.js";
|
|
5
|
+
//#region src/onchain/validation/checks/checkPoolLiquidity.ts
|
|
6
|
+
/**
|
|
7
|
+
* What the pool holds, against what is being taken out of it.
|
|
8
|
+
*
|
|
9
|
+
* The operator is not `checkBorrowLimit`'s: a pool holding exactly the amount
|
|
10
|
+
* asked for still cannot serve it, so equality is already a refusal. That is
|
|
11
|
+
* the rule the legacy withdrawal validator enforced and it is preserved to the
|
|
12
|
+
* unit.
|
|
13
|
+
*/
|
|
14
|
+
function checkPoolLiquidity(args) {
|
|
15
|
+
const { requested, available, underlying } = args;
|
|
16
|
+
if (requested < available) return [];
|
|
17
|
+
return [insufficientPoolLiquidity({
|
|
18
|
+
requested: amountOf(underlying, requested),
|
|
19
|
+
available: amountOf(underlying, available),
|
|
20
|
+
limit: "poolAvailableLiquidity"
|
|
21
|
+
})];
|
|
22
|
+
}
|
|
23
|
+
//#endregion
|
|
24
|
+
export { checkPoolLiquidity };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { poolPaused } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
//#region src/onchain/validation/checks/checkPoolPaused.ts
|
|
4
|
+
/** A paused pool neither takes deposits nor serves withdrawals. */
|
|
5
|
+
function checkPoolPaused(args) {
|
|
6
|
+
return args.isPaused ? [poolPaused(args.pool)] : [];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkPoolPaused };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { poolSunset } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
//#region src/onchain/validation/checks/checkPoolSunset.ts
|
|
4
|
+
/** A pool winding down still serves withdrawals, so only what puts money in is refused. */
|
|
5
|
+
function checkPoolSunset(args) {
|
|
6
|
+
return args.isSunset && args.isDeposit ? [poolSunset(args.pool)] : [];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkPoolSunset };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { quotaCountExceeded } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
//#region src/onchain/validation/checks/checkQuotaCount.ts
|
|
4
|
+
/** How many quoted tokens the facade enables at once. */
|
|
5
|
+
function checkQuotaCount(args) {
|
|
6
|
+
return args.count > args.max ? [quotaCountExceeded(args.count, args.max)] : [];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { checkQuotaCount };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { quotaLimitReached } from "../../../model/errors/operation-errors.js";
|
|
2
|
+
import "../../../model/index.js";
|
|
3
|
+
import { amountOf } from "../helpers/amount.js";
|
|
4
|
+
import "../helpers/index.js";
|
|
5
|
+
//#region src/onchain/validation/checks/checkQuotaLimit.ts
|
|
6
|
+
/** The room the keeper still has for a token's quota, in the underlying. */
|
|
7
|
+
function checkQuotaLimit(args) {
|
|
8
|
+
const { token, requested, available, underlying } = args;
|
|
9
|
+
if (requested !== void 0 && requested <= available) return [];
|
|
10
|
+
return [quotaLimitReached({
|
|
11
|
+
token,
|
|
12
|
+
requested: requested === void 0 ? void 0 : amountOf(underlying, requested),
|
|
13
|
+
available: amountOf(underlying, available)
|
|
14
|
+
})];
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { checkQuotaLimit };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { checkBorrowLimit } from "./checkBorrowLimit.js";
|
|
2
|
+
import { checkCollateralised } from "./checkCollateralised.js";
|
|
3
|
+
import { checkCreditAccountFrozen } from "./checkCreditAccountFrozen.js";
|
|
4
|
+
import { checkCreditManagerPaused } from "./checkCreditManagerPaused.js";
|
|
5
|
+
import { checkDebtLimits } from "./checkDebtLimits.js";
|
|
6
|
+
import { checkEmergencyLiquidator } from "./checkEmergencyLiquidator.js";
|
|
7
|
+
import { checkForbiddenToken } from "./checkForbiddenToken.js";
|
|
8
|
+
import { checkLeverage } from "./checkLeverage.js";
|
|
9
|
+
import { checkLiquidatorEligible } from "./checkLiquidatorEligible.js";
|
|
10
|
+
import { checkMarketExpired } from "./checkMarketExpired.js";
|
|
11
|
+
import { checkPoolLiquidity } from "./checkPoolLiquidity.js";
|
|
12
|
+
import { checkPoolPaused } from "./checkPoolPaused.js";
|
|
13
|
+
import { checkPoolSunset } from "./checkPoolSunset.js";
|
|
14
|
+
import { checkQuotaCount } from "./checkQuotaCount.js";
|
|
15
|
+
import { checkQuotaLimit } from "./checkQuotaLimit.js";
|
|
16
|
+
export { checkBorrowLimit, checkCollateralised, checkCreditAccountFrozen, checkCreditManagerPaused, checkDebtLimits, checkEmergencyLiquidator, checkForbiddenToken, checkLeverage, checkLiquidatorEligible, checkMarketExpired, checkPoolLiquidity, checkPoolPaused, checkPoolSunset, checkQuotaCount, checkQuotaLimit };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/onchain/validation/helpers/health-factor-limits.ts
|
|
2
|
+
/**
|
|
3
|
+
* The health-factor thresholds this codebase holds an account to.
|
|
4
|
+
*
|
|
5
|
+
* They are deliberately different numbers for different jobs: the facade's is
|
|
6
|
+
* what a transaction must clear to land, a form's is what makes a position
|
|
7
|
+
* worth signing, and a sizing helper leaves a margin above both.
|
|
8
|
+
**/
|
|
9
|
+
/** A factor at or below this is refused; kept for the callers that size on it. */
|
|
10
|
+
const MIN_HF_LIMITED = 10100n;
|
|
11
|
+
/** The same threshold as a `required` argument — the lowest factor that passes. */
|
|
12
|
+
const MIN_HEALTH_FACTOR_FORM = 10101;
|
|
13
|
+
/** The threshold the facade itself enforces: an account may end exactly at 1.0. */
|
|
14
|
+
const MIN_HEALTH_FACTOR_FACADE = 1e4;
|
|
15
|
+
/**
|
|
16
|
+
* The safe-price threshold a form holds an account to. A step above the
|
|
17
|
+
* facade's, because a factor of exactly 1.0 at safe prices is already refused.
|
|
18
|
+
**/
|
|
19
|
+
const MIN_SAFE_HEALTH_FACTOR_FORM = 10001;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_SAFE_HEALTH_FACTOR_FORM };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { amountOf } from "./amount.js";
|
|
2
|
+
import { MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_SAFE_HEALTH_FACTOR_FORM } from "./health-factor-limits.js";
|
|
3
|
+
import { toToken, toTokenAmount } from "./token.js";
|
|
4
|
+
export { MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_SAFE_HEALTH_FACTOR_FORM, amountOf, toToken, toTokenAmount };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { shortAddress } from "
|
|
2
|
-
import { amountOf } from "./
|
|
3
|
-
//#region src/onchain/validation/token.ts
|
|
1
|
+
import { shortAddress } from "../../utils/formatter.js";
|
|
2
|
+
import { amountOf } from "./amount.js";
|
|
3
|
+
//#region src/onchain/validation/helpers/token.ts
|
|
4
4
|
/**
|
|
5
5
|
* The token behind an address, for the refusal details that inline one.
|
|
6
6
|
*
|
|
@@ -1,4 +1,43 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { toToken, toTokenAmount } from "./token.js";
|
|
4
|
-
|
|
1
|
+
import { amountOf } from "./helpers/amount.js";
|
|
2
|
+
import { MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_SAFE_HEALTH_FACTOR_FORM } from "./helpers/health-factor-limits.js";
|
|
3
|
+
import { toToken, toTokenAmount } from "./helpers/token.js";
|
|
4
|
+
import "./helpers/index.js";
|
|
5
|
+
import { checkBorrowLimit } from "./checks/checkBorrowLimit.js";
|
|
6
|
+
import { checkCollateralised } from "./checks/checkCollateralised.js";
|
|
7
|
+
import { checkCreditAccountFrozen } from "./checks/checkCreditAccountFrozen.js";
|
|
8
|
+
import { checkCreditManagerPaused } from "./checks/checkCreditManagerPaused.js";
|
|
9
|
+
import { checkDebtLimits } from "./checks/checkDebtLimits.js";
|
|
10
|
+
import { checkEmergencyLiquidator } from "./checks/checkEmergencyLiquidator.js";
|
|
11
|
+
import { checkForbiddenToken } from "./checks/checkForbiddenToken.js";
|
|
12
|
+
import { checkLeverage } from "./checks/checkLeverage.js";
|
|
13
|
+
import { checkLiquidatorEligible } from "./checks/checkLiquidatorEligible.js";
|
|
14
|
+
import { checkMarketExpired } from "./checks/checkMarketExpired.js";
|
|
15
|
+
import { checkPoolLiquidity } from "./checks/checkPoolLiquidity.js";
|
|
16
|
+
import { checkPoolPaused } from "./checks/checkPoolPaused.js";
|
|
17
|
+
import { checkPoolSunset } from "./checks/checkPoolSunset.js";
|
|
18
|
+
import { checkQuotaCount } from "./checks/checkQuotaCount.js";
|
|
19
|
+
import { checkQuotaLimit } from "./checks/checkQuotaLimit.js";
|
|
20
|
+
import "./checks/index.js";
|
|
21
|
+
import { checkAccountQuotas } from "./bundles/checkAccountQuotas.js";
|
|
22
|
+
import { checkWalletAllowance } from "./bundles/checkWalletAllowance.js";
|
|
23
|
+
import { checkWalletBalance } from "./bundles/checkWalletBalance.js";
|
|
24
|
+
import { checkCollateralFunding } from "./bundles/checkCollateralFunding.js";
|
|
25
|
+
import { checkDraw } from "./bundles/checkDraw.js";
|
|
26
|
+
import { checkHealthFactors } from "./bundles/checkHealthFactors.js";
|
|
27
|
+
import { checkMarket } from "./bundles/checkMarket.js";
|
|
28
|
+
import { checkObtained } from "./bundles/checkObtained.js";
|
|
29
|
+
import { checkQuotasAsked } from "./bundles/checkQuotasAsked.js";
|
|
30
|
+
import { checkRWAOpenRequirements } from "./bundles/checkRWAOpenRequirements.js";
|
|
31
|
+
import { checkRWAOpening } from "./bundles/checkRWAOpening.js";
|
|
32
|
+
import { checkCreditOperation } from "./bundles/checkCreditOperation.js";
|
|
33
|
+
import { checkLiquidationEligibility } from "./bundles/checkLiquidationEligibility.js";
|
|
34
|
+
import { checkLiquidationFunding } from "./bundles/checkLiquidationFunding.js";
|
|
35
|
+
import { checkWallet } from "./bundles/checkWallet.js";
|
|
36
|
+
import { checkPoolFunding } from "./bundles/checkPoolFunding.js";
|
|
37
|
+
import { checkPoolOperation } from "./bundles/checkPoolOperation.js";
|
|
38
|
+
import "./bundles/index.js";
|
|
39
|
+
import { checkLiquidation } from "./checkLiquidation.js";
|
|
40
|
+
import { checkOperation } from "./checkOperation.js";
|
|
41
|
+
import { checkSimulation } from "./checkSimulation.js";
|
|
42
|
+
import { raise } from "./raise.js";
|
|
43
|
+
export { MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_SAFE_HEALTH_FACTOR_FORM, amountOf, checkAccountQuotas, checkBorrowLimit, checkCollateralFunding, checkCollateralised, checkCreditAccountFrozen, checkCreditManagerPaused, checkCreditOperation, checkDebtLimits, checkDraw, checkEmergencyLiquidator, checkForbiddenToken, checkHealthFactors, checkLeverage, checkLiquidation, checkLiquidationEligibility, checkLiquidationFunding, checkLiquidatorEligible, checkMarket, checkMarketExpired, checkObtained, checkOperation, checkPoolFunding, checkPoolLiquidity, checkPoolOperation, checkPoolPaused, checkPoolSunset, checkQuotaCount, checkQuotaLimit, checkQuotasAsked, checkRWAOpenRequirements, checkRWAOpening, checkSimulation, checkWallet, checkWalletAllowance, checkWalletBalance, raise, toToken, toTokenAmount };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
//#region src/onchain/validation/raise.ts
|
|
2
|
+
/**
|
|
3
|
+
* Engine-internal throw: planners and guards raise one error object, and the
|
|
4
|
+
* service boundary turns it into {@link SDKError}.
|
|
5
|
+
**/
|
|
6
|
+
var IntentPreviewError = class IntentPreviewError extends Error {
|
|
7
|
+
error;
|
|
8
|
+
constructor(error, message) {
|
|
9
|
+
super(message ?? error.message);
|
|
10
|
+
this.name = "IntentPreviewError";
|
|
11
|
+
this.error = error;
|
|
12
|
+
}
|
|
13
|
+
/** The same wrap the checks hand out, with an optional engine-side sentence. */
|
|
14
|
+
static of(error, message) {
|
|
15
|
+
return new IntentPreviewError(error, message);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Throws the first error a check found, with the sentence the engine logs for
|
|
20
|
+
* it. An empty array is a pass.
|
|
21
|
+
*
|
|
22
|
+
* Returns normally when there is nothing to raise, so it cannot narrow a type
|
|
23
|
+
* the way a bare `throw` does — a site that guards a value for the code below
|
|
24
|
+
* it keeps throwing directly.
|
|
25
|
+
**/
|
|
26
|
+
function raise(errors, message) {
|
|
27
|
+
const [first] = errors;
|
|
28
|
+
if (first) throw IntentPreviewError.of(first, message);
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { IntentPreviewError, raise };
|
package/dist/esm/sdk/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noStrategyTargetCollateral, unexpectedFailure } from "../model/errors/prepare-errors.js";
|
|
2
2
|
import { AllSourcesFailedError } from "./errors/AllSourcesFailedError.js";
|
|
3
3
|
import { SourceChainMismatchError } from "./errors/SourceChainMismatchError.js";
|
|
4
4
|
import { assertSameChains } from "./errors/assertSameChains.js";
|
|
@@ -14,7 +14,6 @@ import { LiquidationsNamespace } from "./liquidations/LiquidationsNamespace.js";
|
|
|
14
14
|
import "./liquidations/index.js";
|
|
15
15
|
import { ExecuteApi } from "./execute/ExecuteApi.js";
|
|
16
16
|
import "./execute/index.js";
|
|
17
|
-
import { creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noStrategyTargetCollateral, toRefusalError, unexpectedFailure } from "./prepare/errors.js";
|
|
18
17
|
import { PrepareApi } from "./prepare/PrepareApi.js";
|
|
19
18
|
import "./prepare/index.js";
|
|
20
19
|
import { filterResponse } from "./utils/filterResponse.js";
|
|
@@ -28,4 +27,4 @@ import { PreviewNamespace } from "./preview/PreviewNamespace.js";
|
|
|
28
27
|
import "./preview/index.js";
|
|
29
28
|
import { DEFAULT_MAX_STATE_AGE, GearboxSDK } from "./GearboxSDK.js";
|
|
30
29
|
import "./types.js";
|
|
31
|
-
export { AbstractNamespace, AllSourcesFailedError, AnalyticsNamespace, DEFAULT_MAX_OFFCHAIN_LAG, DEFAULT_MAX_STATE_AGE, ExecuteApi, GearboxSDK,
|
|
30
|
+
export { AbstractNamespace, AllSourcesFailedError, AnalyticsNamespace, DEFAULT_MAX_OFFCHAIN_LAG, DEFAULT_MAX_STATE_AGE, ExecuteApi, GearboxSDK, LiquidationsNamespace, MissingSourceError, NoSourceServedError, OpportunitiesNamespace, PositionsNamespace, PrepareApi, PreviewNamespace, SourceChainMismatchError, SourceUnavailableError, assertSameChains, creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, everyChainFailed, filterResponse, mergeChainList, mergeChainOne, noStrategyTargetCollateral, unexpectedFailure };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { toChainIds } from "../../onchain/chain/chains.js";
|
|
2
|
+
import { checkLiquidation } from "../../onchain/validation/checkLiquidation.js";
|
|
2
3
|
import "../../onchain/index.js";
|
|
3
4
|
//#region src/sdk/liquidations/LiquidationsNamespace.ts
|
|
4
5
|
/**
|
|
@@ -39,6 +40,14 @@ var LiquidationsNamespace = class {
|
|
|
39
40
|
await this.#ensureFresh?.(props.chainIds);
|
|
40
41
|
return this.#onchain.liquidations.getLiquidationPositions(props);
|
|
41
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* {@inheritDoc ILiquidations.checkLiquidation}
|
|
45
|
+
**/
|
|
46
|
+
async checkLiquidation(props, options) {
|
|
47
|
+
await this.#ensureFresh?.([props.details.chainId]);
|
|
48
|
+
const sdk = this.#onchain.chain(props.details.chainId);
|
|
49
|
+
return checkLiquidation(sdk, props, options);
|
|
50
|
+
}
|
|
42
51
|
};
|
|
43
52
|
//#endregion
|
|
44
53
|
export { LiquidationsNamespace };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { hexEq } from "../../onchain/utils/hex.js";
|
|
2
2
|
import { MultichainConstruct } from "../../onchain/base/MultichainConstruct.js";
|
|
3
|
+
import { creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noRecordedIntent, noStrategyTargetCollateral, unexpectedFailure, unsupportedTokenPair } from "../../model/errors/prepare-errors.js";
|
|
3
4
|
import { sdkErr, sdkOk } from "../../model/result.js";
|
|
4
5
|
import "../../model/index.js";
|
|
5
|
-
import { toToken } from "../../onchain/validation/token.js";
|
|
6
|
+
import { toToken } from "../../onchain/validation/helpers/token.js";
|
|
6
7
|
import { toCreditAccountSlice } from "../../onchain/accounts/intents/utils/credit-account-slice.js";
|
|
7
8
|
import { CreditAccountOperationsService } from "../../onchain/accounts/intents/index.js";
|
|
8
9
|
import "../../onchain/index.js";
|
|
9
|
-
import { creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noStrategyTargetCollateral, toRefusalError, unexpectedFailure } from "./errors.js";
|
|
10
10
|
import { withdrawableCollaterals } from "./withdrawable-collaterals.js";
|
|
11
11
|
import { isAddressEqual } from "viem";
|
|
12
12
|
//#region src/sdk/prepare/PrepareApi.ts
|
|
@@ -39,7 +39,7 @@ var PrepareApi = class extends MultichainConstruct {
|
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
41
|
* The chain an async method reads, revalidated first so the state it is
|
|
42
|
-
* about to weigh is no older than the SDK's freshness
|
|
42
|
+
* about to weigh is no older than the SDK's freshness threshold.
|
|
43
43
|
**/
|
|
44
44
|
async #chain(chainId) {
|
|
45
45
|
await this.#ensureFresh?.([this.sdk.chain(chainId).chainId]);
|
|
@@ -53,10 +53,7 @@ var PrepareApi = class extends MultichainConstruct {
|
|
|
53
53
|
const sdk = await this.#chain(position.chainId);
|
|
54
54
|
const at = stateBlock(sdk);
|
|
55
55
|
const intent = resumable(params.intent ?? params.claimable.intent);
|
|
56
|
-
if (!intent) return sdkErr(
|
|
57
|
-
reason: "noRecordedIntent",
|
|
58
|
-
detail: void 0
|
|
59
|
-
}));
|
|
56
|
+
if (!intent) return sdkErr(noRecordedIntent());
|
|
60
57
|
const creditAccount = await slice(sdk, position.creditAccount);
|
|
61
58
|
if (!creditAccount) return sdkErr(creditAccountNotFound(position.creditAccount));
|
|
62
59
|
return finalized(await service(sdk).finishIntent({
|
|
@@ -348,7 +345,7 @@ var PrepareApi = class extends MultichainConstruct {
|
|
|
348
345
|
/**
|
|
349
346
|
* Shared path of the two flows that sell a position asset, and therefore
|
|
350
347
|
* have two routes to offer: one account read, one intent, both routes
|
|
351
|
-
* quoted. Every
|
|
348
|
+
* quoted. Every error, the crash wrap included, carries `errors` so a
|
|
352
349
|
* form can say which routes were ruled out and why.
|
|
353
350
|
*
|
|
354
351
|
* @typeParam X - The codes the calling flow can raise beyond the shared
|
|
@@ -451,43 +448,39 @@ function toClaimableWithdrawal(claimable) {
|
|
|
451
448
|
};
|
|
452
449
|
}
|
|
453
450
|
/**
|
|
454
|
-
* The engine's
|
|
451
|
+
* The engine's error as one flow's failure half.
|
|
455
452
|
*
|
|
456
|
-
* The engine answers with the open union of every
|
|
453
|
+
* The engine answers with the open union of every error it can raise
|
|
457
454
|
* anywhere; which of them a given flow actually reaches is the engine trace
|
|
458
455
|
* written into the public signatures. This cast is the one place the open
|
|
459
456
|
* union is narrowed onto them — a code added to or removed from a flow has to
|
|
460
457
|
* move its signature, which `types.test-d.ts` pins.
|
|
461
458
|
**/
|
|
462
|
-
function
|
|
463
|
-
return
|
|
459
|
+
function methodError(result) {
|
|
460
|
+
return result;
|
|
464
461
|
}
|
|
465
462
|
/**
|
|
466
|
-
* A flow with two routes,
|
|
463
|
+
* A flow with two routes, stopped before either could be quoted: the error is
|
|
467
464
|
* the same one any other flow would report, with nothing to say about the
|
|
468
465
|
* routes because neither was reached.
|
|
469
466
|
**/
|
|
470
467
|
function neitherRoute(error) {
|
|
471
468
|
return sdkErr({
|
|
472
469
|
...error,
|
|
473
|
-
|
|
474
|
-
instant: void 0,
|
|
475
|
-
delayed: void 0
|
|
476
|
-
}
|
|
470
|
+
errors: {}
|
|
477
471
|
});
|
|
478
472
|
}
|
|
479
473
|
/**
|
|
480
474
|
* The engine's answer, as the envelope the namespace speaks in: what the
|
|
481
475
|
* operation comes to under `data`, stamped with the block it was computed
|
|
482
|
-
* from, or the
|
|
483
|
-
* {@link refusal}.
|
|
476
|
+
* from, or the error carrying its own numbers.
|
|
484
477
|
*
|
|
485
478
|
* The engine keeps its `ok` union — it is the shape the planners, the guards
|
|
486
479
|
* and their tests are written against — and the boundary is the one place the
|
|
487
480
|
* two vocabularies meet.
|
|
488
481
|
**/
|
|
489
482
|
function planned(result, at) {
|
|
490
|
-
if (!result.ok) return
|
|
483
|
+
if (!result.ok) return methodError(result);
|
|
491
484
|
const { operations, state, calls } = result;
|
|
492
485
|
return sdkOk({
|
|
493
486
|
operations,
|
|
@@ -503,7 +496,7 @@ function planned(result, at) {
|
|
|
503
496
|
* built on finished the withdrawal, or left part of it queued for another one.
|
|
504
497
|
**/
|
|
505
498
|
function finalized(result, at) {
|
|
506
|
-
if (!result.ok) return
|
|
499
|
+
if (!result.ok) return methodError(result);
|
|
507
500
|
const { operations, state, calls, remainder } = result;
|
|
508
501
|
return sdkOk({
|
|
509
502
|
operations,
|
|
@@ -520,24 +513,24 @@ function opened(result, at) {
|
|
|
520
513
|
return result.ok ? sdkOk({
|
|
521
514
|
state: result.state,
|
|
522
515
|
...at
|
|
523
|
-
}) :
|
|
516
|
+
}) : methodError(result);
|
|
524
517
|
}
|
|
525
518
|
/**
|
|
526
519
|
* {@inheritDoc planned}
|
|
527
520
|
*
|
|
528
|
-
* Both routes are payload,
|
|
521
|
+
* Both routes are payload, error and all: `errors` says why a missing one is
|
|
529
522
|
* missing, and it stays on the error when neither route answered, since that is
|
|
530
523
|
* the same question asked of a request that has no viable half at all.
|
|
531
524
|
**/
|
|
532
525
|
function routed(result, at) {
|
|
533
526
|
if (!result.ok) {
|
|
534
|
-
const {
|
|
527
|
+
const { errors, error } = result;
|
|
535
528
|
return sdkErr({
|
|
536
|
-
...
|
|
537
|
-
|
|
529
|
+
...error,
|
|
530
|
+
errors
|
|
538
531
|
});
|
|
539
532
|
}
|
|
540
|
-
const { instant, delayed,
|
|
533
|
+
const { instant, delayed, errors } = result;
|
|
541
534
|
return sdkOk({
|
|
542
535
|
instant: instant && {
|
|
543
536
|
operations: instant.operations,
|
|
@@ -552,7 +545,7 @@ function routed(result, at) {
|
|
|
552
545
|
delayed: delayed.delayed,
|
|
553
546
|
...at
|
|
554
547
|
},
|
|
555
|
-
|
|
548
|
+
errors,
|
|
556
549
|
...at
|
|
557
550
|
});
|
|
558
551
|
}
|
|
@@ -578,19 +571,16 @@ async function lpState(sdk, pool, wallet, simulation, moved) {
|
|
|
578
571
|
};
|
|
579
572
|
}
|
|
580
573
|
/**
|
|
581
|
-
* A pool route the market does not offer, as the
|
|
574
|
+
* A pool route the market does not offer, as the error a caller reads.
|
|
582
575
|
*
|
|
583
576
|
* `to` is absent where {@link lpRoute} found no output to name at all, which
|
|
584
577
|
* is the usual way of it; both are present where a pair exists but nothing of
|
|
585
578
|
* ours implements it.
|
|
586
579
|
**/
|
|
587
580
|
function unroutable(sdk, from, to) {
|
|
588
|
-
return sdkErr(
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
from: toToken(sdk, from),
|
|
592
|
-
to: to === void 0 ? void 0 : toToken(sdk, to)
|
|
593
|
-
}
|
|
581
|
+
return sdkErr(unsupportedTokenPair({
|
|
582
|
+
from: toToken(sdk, from),
|
|
583
|
+
to: to === void 0 ? void 0 : toToken(sdk, to)
|
|
594
584
|
}));
|
|
595
585
|
}
|
|
596
586
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noStrategyTargetCollateral, unexpectedFailure } from "../../model/errors/prepare-errors.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
3
|
import { PrepareApi } from "./PrepareApi.js";
|
|
4
4
|
import "./types.js";
|
|
5
|
-
export {
|
|
5
|
+
export { PrepareApi, creditAccountNotEmpty, creditAccountNotFound, emptyOpenTakesNothing, noStrategyTargetCollateral, unexpectedFailure };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { IntentPreviewError, raise, refuse };
|
|
1
|
+
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "../../
|
|
1
|
+
import { checkOperation } from "../../onchain/validation/checkOperation.js";
|
|
2
|
+
import { checkSimulation } from "../../onchain/validation/checkSimulation.js";
|
|
3
|
+
import { previewOperation } from "../../onchain/preview/preview/previewOperation.js";
|
|
4
|
+
import "../../onchain/index.js";
|
|
3
5
|
//#region src/sdk/preview/PreviewNamespace.ts
|
|
4
6
|
/**
|
|
5
7
|
* {@inheritDoc IPreview}
|
|
@@ -7,11 +9,9 @@ import "../../preview/index.js";
|
|
|
7
9
|
var PreviewNamespace = class {
|
|
8
10
|
#onchain;
|
|
9
11
|
#ensureFresh;
|
|
10
|
-
#logger;
|
|
11
12
|
constructor(onchain, options) {
|
|
12
13
|
this.#onchain = onchain;
|
|
13
14
|
this.#ensureFresh = options.ensureFresh;
|
|
14
|
-
this.#logger = options.logger?.child?.({ name: "Preview" }) ?? options.logger;
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* {@inheritDoc IPreview.previewOperation}
|
|
@@ -19,16 +19,27 @@ var PreviewNamespace = class {
|
|
|
19
19
|
async previewOperation(input, options) {
|
|
20
20
|
await this.#ensureFresh?.([input.chainId]);
|
|
21
21
|
const sdk = this.#onchain.chain(input.chainId);
|
|
22
|
-
return previewOperation(
|
|
22
|
+
return previewOperation(sdk, input, options);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* {@inheritDoc IPreview.checkOperation}
|
|
26
|
+
**/
|
|
27
|
+
async checkOperation(props, options) {
|
|
28
|
+
const { chainId, ...input } = props;
|
|
29
|
+
await this.#ensureFresh?.([chainId]);
|
|
30
|
+
const sdk = this.#onchain.chain(chainId);
|
|
31
|
+
return checkOperation({
|
|
23
32
|
sdk,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
33
|
+
...input
|
|
34
|
+
}, options);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* {@inheritDoc IPreview.checkSimulation}
|
|
38
|
+
**/
|
|
39
|
+
async checkSimulation(props, options) {
|
|
40
|
+
await this.#ensureFresh?.([props.chainId]);
|
|
41
|
+
const sdk = this.#onchain.chain(props.chainId);
|
|
42
|
+
return checkSimulation(sdk, props, options);
|
|
32
43
|
}
|
|
33
44
|
};
|
|
34
45
|
//#endregion
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { AddressMap } from "../onchain/utils/AddressMap.js";
|
|
2
|
+
import { TokenTransfer } from "../onchain/market/adapters/transfers.js";
|
|
2
3
|
import { ChainContractsRegister } from "../onchain/base/ChainContractsRegister.js";
|
|
3
4
|
import "../onchain/index.js";
|
|
4
|
-
import {
|
|
5
|
-
import "
|
|
6
|
-
import
|
|
7
|
-
import { FacadeParsedCall } from "../preview/trace/types.js";
|
|
8
|
-
import "../preview/trace/index.js";
|
|
5
|
+
import { WithdrawCollateralEventInfo } from "./trace/extractTransfers.js";
|
|
6
|
+
import { FacadeParsedCall } from "./trace/types.js";
|
|
7
|
+
import "./trace/index.js";
|
|
9
8
|
import { HistoryFacadeMetadata, OuterFacadeOperation } from "./types.js";
|
|
10
9
|
import { Address } from "viem";
|
|
11
10
|
//#region src/history/assembleOperations.d.ts
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { AddressMap } from "../onchain/utils/AddressMap.js";
|
|
2
2
|
import { ParsedCallV2 } from "../onchain/base/types.js";
|
|
3
3
|
import { CallTrace } from "../onchain/utils/trace.js";
|
|
4
|
+
import { TokenTransfer } from "../onchain/market/adapters/transfers.js";
|
|
4
5
|
import { ChainContractsRegister } from "../onchain/base/ChainContractsRegister.js";
|
|
5
6
|
import "../onchain/index.js";
|
|
6
|
-
import {
|
|
7
|
-
import "
|
|
8
|
-
import { WithdrawCollateralEventInfo } from "../preview/trace/extractTransfers.js";
|
|
9
|
-
import "../preview/trace/index.js";
|
|
7
|
+
import { WithdrawCollateralEventInfo } from "./trace/extractTransfers.js";
|
|
8
|
+
import "./trace/index.js";
|
|
10
9
|
import { InnerOperation } from "./types.js";
|
|
11
10
|
import { Address } from "viem";
|
|
12
11
|
//#region src/history/classifyMulticallOperations.d.ts
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
import { AddCollateralOp, DecreaseDebtOp, FacadeOperationMetadata, IncreaseDebtOp, InnerFacadeOperation, OperationMetadata, UpdateQuotaOp, WithdrawCollateralOp } from "../preview/parse/types-facades.js";
|
|
1
|
+
import { AddCollateralOp, DecreaseDebtOp, FacadeOperationMetadata, IncreaseDebtOp, InnerFacadeOperation, OperationMetadata, UpdateQuotaOp, WithdrawCollateralOp } from "../onchain/preview/parse/types-facades.js";
|
|
2
|
+
import { TransferAlignmentError, UnexpectedFacadeEventOrderError, UnknownAdapterError, UnknownFacadeCallError, WithdrawCollateralAlignmentError } from "./trace/errors.js";
|
|
3
|
+
import { extractAdapterCallTraces } from "./trace/extractAdapterCallTraces.js";
|
|
4
|
+
import { ExtractTransfersResult, WithdrawCollateralEventInfo, extractTransfers } from "./trace/extractTransfers.js";
|
|
5
|
+
import { FacadeCallType, FacadeParsedCall } from "./trace/types.js";
|
|
6
|
+
import { findFacadeCalls } from "./trace/findFacadeCalls.js";
|
|
7
|
+
import "./trace/index.js";
|
|
2
8
|
import { AdapterOperation, CloseCreditAccountOperation, CreditAccountOperation, DirectTokenTransferOperation, HistoryAdapterExt, HistoryFacadeMetadata, InnerOperation, LiquidateCreditAccountOperation, MulticallOperation, OpenCreditAccountOperation, OuterFacadeOperation, PartialLiquidationOperation } from "./types.js";
|
|
3
9
|
import { OperationVisitor, mapOperations } from "./mapOperations.js";
|
|
4
10
|
import { parseCreditAccountTransaction } from "./parseCreditAccountTransaction.js";
|
|
5
11
|
import { DeploymentLike, PopulateContractsRegisterOptions, populateContractsRegister } from "./populateContractsRegister.js";
|
|
6
12
|
import { LegacyApiOperation, LegacyMulticallOp, LegacyVisitorParams, createLegacyVisitor, toLegacyOperations } from "./toLegacyOperation.js";
|
|
7
|
-
export { AdapterOperation, type AddCollateralOp, CloseCreditAccountOperation, CreditAccountOperation, type DecreaseDebtOp, DeploymentLike, DirectTokenTransferOperation, type FacadeOperationMetadata, HistoryAdapterExt, HistoryFacadeMetadata, type IncreaseDebtOp, type InnerFacadeOperation, InnerOperation, LegacyApiOperation, LegacyMulticallOp, LegacyVisitorParams, LiquidateCreditAccountOperation, MulticallOperation, OpenCreditAccountOperation, type OperationMetadata, OperationVisitor, OuterFacadeOperation, PartialLiquidationOperation, PopulateContractsRegisterOptions, type UpdateQuotaOp, type WithdrawCollateralOp, createLegacyVisitor, mapOperations, parseCreditAccountTransaction, populateContractsRegister, toLegacyOperations };
|
|
13
|
+
export { AdapterOperation, type AddCollateralOp, CloseCreditAccountOperation, CreditAccountOperation, type DecreaseDebtOp, DeploymentLike, DirectTokenTransferOperation, ExtractTransfersResult, FacadeCallType, type FacadeOperationMetadata, FacadeParsedCall, HistoryAdapterExt, HistoryFacadeMetadata, type IncreaseDebtOp, type InnerFacadeOperation, InnerOperation, LegacyApiOperation, LegacyMulticallOp, LegacyVisitorParams, LiquidateCreditAccountOperation, MulticallOperation, OpenCreditAccountOperation, type OperationMetadata, OperationVisitor, OuterFacadeOperation, PartialLiquidationOperation, PopulateContractsRegisterOptions, TransferAlignmentError, UnexpectedFacadeEventOrderError, UnknownAdapterError, UnknownFacadeCallError, type UpdateQuotaOp, WithdrawCollateralAlignmentError, WithdrawCollateralEventInfo, type WithdrawCollateralOp, createLegacyVisitor, extractAdapterCallTraces, extractTransfers, findFacadeCalls, mapOperations, parseCreditAccountTransaction, populateContractsRegister, toLegacyOperations };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AddCollateralOp, DecreaseDebtOp, IncreaseDebtOp, UpdateQuotaOp, WithdrawCollateralOp } from "../preview/parse/types-facades.js";
|
|
1
|
+
import { AddCollateralOp, DecreaseDebtOp, IncreaseDebtOp, UpdateQuotaOp, WithdrawCollateralOp } from "../onchain/preview/parse/types-facades.js";
|
|
2
2
|
import { AdapterOperation, CloseCreditAccountOperation, CreditAccountOperation, DirectTokenTransferOperation, HistoryFacadeMetadata, LiquidateCreditAccountOperation, MulticallOperation, OpenCreditAccountOperation, PartialLiquidationOperation } from "./types.js";
|
|
3
3
|
//#region src/history/mapOperations.d.ts
|
|
4
4
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CallTrace } from "../../onchain/utils/trace.js";
|
|
2
|
-
//#region src/
|
|
2
|
+
//#region src/history/trace/extractAdapterCallTraces.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* Extracts the user multicall's adapter-level call traces from a single facade
|
|
5
5
|
* call trace.
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { AddressMap } from "../../onchain/utils/AddressMap.js";
|
|
2
|
+
import { TokenTransfer } from "../../onchain/market/adapters/transfers.js";
|
|
2
3
|
import "../../onchain/index.js";
|
|
3
|
-
import { TokenTransfer } from "../parse/types-adapters.js";
|
|
4
|
-
import "../parse/index.js";
|
|
5
4
|
import { Address, Log } from "viem";
|
|
6
|
-
//#region src/
|
|
5
|
+
//#region src/history/trace/extractTransfers.d.ts
|
|
7
6
|
type RawLog = Log<bigint | number, number, false>;
|
|
8
7
|
/**
|
|
9
8
|
* Effective `withdrawCollateral` outcome decoded from the facade's
|