@gearbox-protocol/sdk 15.1.0-next.1 → 15.1.0-next.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/abi/iExpirable.js +15 -0
- package/dist/cjs/common-utils/utils/apy/get-single-quota-borrow-rate.js +2 -0
- package/dist/cjs/common-utils/utils/creditAccount/calc-health-factor.js +24 -22
- package/dist/cjs/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +2 -0
- package/dist/cjs/common-utils/utils/creditAccount/get-time-to-liquidation.js +8 -5
- package/dist/cjs/common-utils/utils/creditAccount/liquidation-price.js +21 -11
- package/dist/cjs/dev/AccountOpener.js +0 -1
- package/dist/cjs/dev/compareOpportunities.js +218 -0
- package/dist/cjs/model/charts.js +147 -0
- package/dist/cjs/model/charts.schema.js +240 -0
- package/dist/cjs/model/index.js +35 -22
- package/dist/cjs/model/liquidations.schema.js +1 -1
- package/dist/cjs/model/notices.schema.js +25 -0
- package/dist/cjs/model/opportunities.schema.js +1 -1
- package/dist/cjs/model/positions.schema.js +48 -2
- package/dist/cjs/new-sdk/AbstractNamespace.js +34 -4
- package/dist/cjs/new-sdk/GearboxSDK.js +72 -3
- package/dist/cjs/new-sdk/execute/ExecuteApi.js +95 -0
- package/dist/cjs/new-sdk/execute/index.js +3 -0
- package/dist/cjs/new-sdk/index.js +7 -0
- package/dist/cjs/new-sdk/opportunities/OpportunitiesNamespace.js +29 -6
- package/dist/cjs/new-sdk/positions/PositionsNamespace.js +3 -6
- package/dist/cjs/new-sdk/simulate/SimulateApi.js +361 -0
- package/dist/cjs/new-sdk/simulate/index.js +4 -0
- package/dist/cjs/new-sdk/utils/index.js +0 -1
- package/dist/cjs/offchain/AbstractOffchainNamespace.js +10 -7
- package/dist/cjs/offchain/GearboxAPI.js +7 -0
- package/dist/cjs/offchain/index.js +3 -0
- package/dist/cjs/offchain/notices/OffchainNotices.js +27 -0
- package/dist/cjs/offchain/notices/index.js +3 -0
- package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +4 -8
- package/dist/cjs/offchain/positions/OffchainPositions.js +12 -12
- package/dist/cjs/preview/preview/CreditAccountState.js +14 -1
- package/dist/cjs/preview/preview/buildDelayedPreview.js +16 -6
- package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +9 -2
- package/dist/cjs/preview/preview/previewOpenCreditAccount.js +11 -3
- package/dist/cjs/preview/preview/previewOperation.js +1 -1
- package/dist/cjs/sdk/MultichainSDK.js +3 -4
- package/dist/cjs/sdk/OnchainSDK.js +42 -13
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +2 -8
- package/dist/cjs/sdk/accounts/credit-account-compressor/CreditAccountCompressor.js +2 -90
- package/dist/cjs/sdk/accounts/index.js +5 -2
- package/dist/cjs/sdk/accounts/intents/guards.js +114 -0
- package/dist/cjs/sdk/accounts/intents/index.js +216 -358
- package/dist/cjs/sdk/accounts/intents/math.js +56 -0
- package/dist/cjs/sdk/accounts/intents/open-strategy.js +133 -0
- package/dist/cjs/sdk/accounts/intents/operations.js +165 -0
- package/dist/cjs/sdk/accounts/intents/plan.js +373 -0
- package/dist/cjs/sdk/accounts/intents/realize.js +301 -0
- package/dist/cjs/sdk/accounts/intents/testing/delayed.js +50 -0
- package/dist/cjs/sdk/accounts/intents/testing/market.js +166 -0
- package/dist/cjs/sdk/accounts/intents/testing/sdk-mock.js +194 -35
- package/dist/cjs/sdk/accounts/intents/tests/add-collateral.fixtures.js +123 -0
- package/dist/cjs/sdk/accounts/intents/tests/adjust-leverage.fixtures.js +254 -0
- package/dist/cjs/sdk/accounts/intents/tests/deposit.fixtures.js +324 -0
- package/dist/cjs/sdk/accounts/intents/tests/finish-decrease-leverage.fixtures.js +242 -0
- package/dist/cjs/sdk/accounts/intents/tests/finish-withdraw.fixtures.js +383 -0
- package/dist/cjs/sdk/accounts/intents/tests/open-strategy.fixtures.js +133 -0
- package/dist/cjs/sdk/accounts/intents/tests/withdraw-asset.fixtures.js +131 -0
- package/dist/cjs/sdk/accounts/intents/tests/withdraw.fixtures.js +426 -0
- package/dist/cjs/sdk/accounts/intents/types.js +16 -0
- package/dist/cjs/sdk/accounts/intents/utils/adjust-state-to-snapshot.js +18 -0
- package/dist/cjs/sdk/accounts/intents/utils/credit-account-slice.js +45 -0
- package/dist/cjs/sdk/accounts/intents/utils/index.js +17 -8
- package/dist/cjs/sdk/accounts/intents/utils/ledger.js +94 -0
- package/dist/cjs/sdk/accounts/intents/utils/pick-token.js +72 -0
- package/dist/cjs/sdk/accounts/intents/utils/quotas-for-update.js +27 -0
- package/dist/cjs/sdk/accounts/intents/utils/router-path.js +86 -0
- package/dist/cjs/sdk/accounts/intents/view.js +38 -0
- package/dist/cjs/sdk/accounts/liquidations/LiquidationsService.js +0 -3
- package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +29 -18
- package/dist/cjs/sdk/base/BaseContract.js +1 -1
- package/dist/cjs/sdk/base/TokensMeta.js +78 -27
- package/dist/cjs/sdk/index.js +30 -7
- package/dist/cjs/sdk/market/MarketRegister.js +16 -7
- package/dist/cjs/sdk/market/ZapperRegister.js +56 -25
- package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +1 -12
- package/dist/cjs/sdk/market/credit/CreditSuite.js +28 -9
- package/dist/cjs/sdk/market/credit/index.js +3 -0
- package/dist/cjs/sdk/market/credit/isStrategyCollateral.js +50 -0
- package/dist/cjs/sdk/market/index.js +17 -0
- package/dist/cjs/sdk/market/math.js +57 -44
- package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +10 -3
- package/dist/cjs/sdk/market/pool/PoolV310Contract.js +15 -1
- package/dist/cjs/sdk/market/rwa/RWARegistry.js +22 -0
- package/dist/cjs/sdk/opportunities/index.js +0 -13
- package/dist/cjs/sdk/options.js +1 -5
- package/dist/cjs/sdk/pools/PoolService.js +132 -3
- package/dist/cjs/sdk/pools/index.js +2 -0
- package/dist/cjs/sdk/positions/PositionsService.js +213 -1
- package/dist/cjs/sdk/positions/calcBorrowRate.js +43 -0
- package/dist/cjs/sdk/positions/calcHealthFactor.js +52 -0
- package/dist/cjs/sdk/positions/calcLiquidationPrice.js +23 -0
- package/dist/cjs/sdk/positions/calcLiquidationPriceForTarget.js +30 -0
- package/dist/cjs/sdk/positions/calcTimeToLiquidationMs.js +19 -0
- package/dist/cjs/sdk/positions/index.js +12 -1
- package/dist/cjs/sdk/positions/types.js +31 -0
- package/dist/cjs/sdk/utils/abi-decode.js +2 -2
- package/dist/cjs/sdk/utils/viem/executeMulticallBatches.js +32 -0
- package/dist/cjs/sdk/utils/viem/index.js +2 -0
- package/dist/esm/abi/iExpirable.js +14 -0
- package/dist/esm/common-utils/utils/apy/get-single-quota-borrow-rate.js +2 -0
- package/dist/esm/common-utils/utils/creditAccount/calc-health-factor.js +24 -22
- package/dist/esm/common-utils/utils/creditAccount/calc-quota-borrow-rate.js +2 -0
- package/dist/esm/common-utils/utils/creditAccount/get-time-to-liquidation.js +8 -5
- package/dist/esm/common-utils/utils/creditAccount/liquidation-price.js +21 -11
- package/dist/esm/dev/AccountOpener.js +1 -2
- package/dist/esm/dev/compareOpportunities.js +216 -0
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/model/charts.js +140 -0
- package/dist/esm/model/charts.schema.js +226 -0
- package/dist/esm/model/index.js +9 -7
- package/dist/esm/model/liquidations.schema.js +1 -1
- package/dist/esm/model/notices.schema.js +23 -0
- package/dist/esm/model/opportunities.schema.js +1 -1
- package/dist/esm/model/positions.schema.js +46 -4
- package/dist/esm/new-sdk/AbstractNamespace.js +34 -4
- package/dist/esm/new-sdk/GearboxSDK.js +72 -4
- package/dist/esm/new-sdk/execute/ExecuteApi.js +94 -0
- package/dist/esm/new-sdk/execute/index.js +2 -0
- package/dist/esm/new-sdk/index.js +6 -2
- package/dist/esm/new-sdk/opportunities/OpportunitiesNamespace.js +29 -6
- package/dist/esm/new-sdk/positions/PositionsNamespace.js +3 -6
- package/dist/esm/new-sdk/simulate/SimulateApi.js +360 -0
- package/dist/esm/new-sdk/simulate/index.js +3 -0
- package/dist/esm/new-sdk/utils/index.js +0 -1
- package/dist/esm/offchain/AbstractOffchainNamespace.js +10 -7
- package/dist/esm/offchain/GearboxAPI.js +7 -0
- package/dist/esm/offchain/index.js +3 -1
- package/dist/esm/offchain/notices/OffchainNotices.js +26 -0
- package/dist/esm/offchain/notices/index.js +2 -0
- package/dist/esm/offchain/opportunities/OffchainOpportunities.js +4 -8
- package/dist/esm/offchain/positions/OffchainPositions.js +12 -12
- package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +1 -1
- package/dist/esm/preview/preview/CreditAccountState.js +14 -1
- package/dist/esm/preview/preview/buildDelayedPreview.js +16 -6
- package/dist/esm/preview/preview/previewAdjustCreditAccount.js +9 -2
- package/dist/esm/preview/preview/previewOpenCreditAccount.js +11 -3
- package/dist/esm/preview/preview/previewOperation.js +1 -1
- package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
- package/dist/esm/preview/trace/extractTransfers.js +1 -1
- package/dist/esm/sdk/MultichainSDK.js +3 -4
- package/dist/esm/sdk/OnchainSDK.js +42 -13
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +4 -10
- package/dist/esm/sdk/accounts/credit-account-compressor/CreditAccountCompressor.js +2 -90
- package/dist/esm/sdk/accounts/index.js +3 -2
- package/dist/esm/sdk/accounts/intents/guards.js +108 -0
- package/dist/esm/sdk/accounts/intents/index.js +214 -358
- package/dist/esm/sdk/accounts/intents/math.js +51 -0
- package/dist/esm/sdk/accounts/intents/open-strategy.js +132 -0
- package/dist/esm/sdk/accounts/intents/operations.js +153 -0
- package/dist/esm/sdk/accounts/intents/plan.js +361 -0
- package/dist/esm/sdk/accounts/intents/realize.js +300 -0
- package/dist/esm/sdk/accounts/intents/testing/delayed.js +38 -0
- package/dist/esm/sdk/accounts/intents/testing/market.js +148 -0
- package/dist/esm/sdk/accounts/intents/testing/sdk-mock.js +194 -35
- package/dist/esm/sdk/accounts/intents/tests/add-collateral.fixtures.js +110 -0
- package/dist/esm/sdk/accounts/intents/tests/adjust-leverage.fixtures.js +234 -0
- package/dist/esm/sdk/accounts/intents/tests/deposit.fixtures.js +302 -0
- package/dist/esm/sdk/accounts/intents/tests/finish-decrease-leverage.fixtures.js +220 -0
- package/dist/esm/sdk/accounts/intents/tests/finish-withdraw.fixtures.js +355 -0
- package/dist/esm/sdk/accounts/intents/tests/open-strategy.fixtures.js +119 -0
- package/dist/esm/sdk/accounts/intents/tests/withdraw-asset.fixtures.js +117 -0
- package/dist/esm/sdk/accounts/intents/tests/withdraw.fixtures.js +402 -0
- package/dist/esm/sdk/accounts/intents/types.js +16 -1
- package/dist/esm/sdk/accounts/intents/utils/adjust-state-to-snapshot.js +17 -0
- package/dist/esm/sdk/accounts/intents/utils/credit-account-slice.js +43 -0
- package/dist/esm/sdk/accounts/intents/utils/index.js +9 -7
- package/dist/esm/sdk/accounts/intents/utils/ledger.js +93 -0
- package/dist/esm/sdk/accounts/intents/utils/pick-token.js +68 -0
- package/dist/esm/sdk/accounts/intents/utils/quotas-for-update.js +27 -1
- package/dist/esm/sdk/accounts/intents/utils/router-path.js +85 -0
- package/dist/esm/sdk/accounts/intents/view.js +37 -0
- package/dist/esm/sdk/accounts/liquidations/LiquidationsService.js +1 -4
- package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +29 -18
- package/dist/esm/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
- package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
- package/dist/esm/sdk/base/BaseContract.js +1 -1
- package/dist/esm/sdk/base/TokensMeta.js +80 -29
- package/dist/esm/sdk/chain/detectNetwork.js +1 -1
- package/dist/esm/sdk/core/createAddressProvider.js +1 -1
- package/dist/esm/sdk/index.js +13 -4
- package/dist/esm/sdk/market/MarketRegister.js +16 -7
- package/dist/esm/sdk/market/ZapperRegister.js +56 -25
- package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +2 -13
- package/dist/esm/sdk/market/credit/CreditSuite.js +29 -10
- package/dist/esm/sdk/market/credit/index.js +2 -1
- package/dist/esm/sdk/market/credit/isStrategyCollateral.js +48 -0
- package/dist/esm/sdk/market/index.js +3 -1
- package/dist/esm/sdk/market/math.js +52 -40
- package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +10 -3
- package/dist/esm/sdk/market/pool/PoolV310Contract.js +17 -3
- package/dist/esm/sdk/market/rwa/RWARegistry.js +22 -0
- package/dist/esm/sdk/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/sdk/market/zapper/ZapperContract.js +1 -1
- package/dist/esm/sdk/opportunities/index.js +1 -2
- package/dist/esm/sdk/options.js +1 -5
- package/dist/esm/sdk/pools/PoolService.js +133 -6
- package/dist/esm/sdk/pools/index.js +2 -2
- package/dist/esm/sdk/positions/PositionsService.js +213 -1
- package/dist/esm/sdk/positions/calcBorrowRate.js +42 -0
- package/dist/esm/sdk/positions/calcHealthFactor.js +51 -0
- package/dist/esm/sdk/positions/calcLiquidationPrice.js +22 -0
- package/dist/esm/sdk/positions/calcLiquidationPriceForTarget.js +29 -0
- package/dist/esm/sdk/positions/calcTimeToLiquidationMs.js +18 -0
- package/dist/esm/sdk/positions/index.js +7 -2
- package/dist/esm/sdk/positions/types.js +31 -1
- package/dist/esm/sdk/utils/abi-decode.js +2 -2
- package/dist/esm/sdk/utils/viem/executeMulticallBatches.js +31 -0
- package/dist/esm/sdk/utils/viem/index.js +2 -1
- package/dist/esm/sdk/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/types/abi/iExpirable.d.ts +14 -0
- package/dist/types/common-utils/utils/apy/get-single-quota-borrow-rate.d.ts +2 -0
- package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +3 -0
- package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +2 -0
- package/dist/types/common-utils/utils/creditAccount/get-time-to-liquidation.d.ts +6 -1
- package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +3 -0
- package/dist/types/dev/compareOpportunities.d.ts +153 -0
- package/dist/types/model/charts.d.ts +349 -0
- package/dist/types/model/charts.schema.d.ts +364 -0
- package/dist/types/model/index.d.ts +8 -6
- package/dist/types/model/notices.d.ts +29 -0
- package/dist/types/model/notices.schema.d.ts +23 -0
- package/dist/types/model/opportunities.d.ts +9 -9
- package/dist/types/model/positions.d.ts +133 -7
- package/dist/types/model/positions.schema.d.ts +128 -1
- package/dist/types/new-sdk/AbstractNamespace.d.ts +15 -2
- package/dist/types/new-sdk/GearboxSDK.d.ts +14 -2
- package/dist/types/new-sdk/execute/ExecuteApi.d.ts +108 -0
- package/dist/types/new-sdk/execute/index.d.ts +2 -0
- package/dist/types/new-sdk/index.d.ts +8 -4
- package/dist/types/new-sdk/opportunities/OpportunitiesNamespace.d.ts +19 -7
- package/dist/types/new-sdk/opportunities/types.d.ts +30 -9
- package/dist/types/new-sdk/positions/PositionsNamespace.d.ts +4 -5
- package/dist/types/new-sdk/positions/types.d.ts +9 -9
- package/dist/types/new-sdk/simulate/SimulateApi.d.ts +90 -0
- package/dist/types/new-sdk/simulate/index.d.ts +3 -0
- package/dist/types/new-sdk/simulate/types.d.ts +508 -0
- package/dist/types/new-sdk/types.d.ts +35 -1
- package/dist/types/new-sdk/utils/index.d.ts +1 -2
- package/dist/types/offchain/AbstractOffchainNamespace.d.ts +5 -21
- package/dist/types/offchain/GearboxAPI.d.ts +6 -0
- package/dist/types/offchain/index.d.ts +4 -2
- package/dist/types/offchain/notices/OffchainNotices.d.ts +19 -0
- package/dist/types/offchain/notices/index.d.ts +2 -0
- package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +8 -4
- package/dist/types/offchain/positions/OffchainPositions.d.ts +8 -6
- package/dist/types/preview/preview/CreditAccountState.d.ts +6 -0
- package/dist/types/preview/preview/buildDelayedPreview.d.ts +5 -1
- package/dist/types/preview/preview/types.d.ts +4 -2
- package/dist/types/sdk/MultichainSDK.d.ts +0 -5
- package/dist/types/sdk/OnchainSDK.d.ts +1 -5
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -7
- package/dist/types/sdk/accounts/credit-account-compressor/CreditAccountCompressor.d.ts +3 -12
- package/dist/types/sdk/accounts/credit-account-compressor/index.d.ts +2 -2
- package/dist/types/sdk/accounts/credit-account-compressor/types.d.ts +1 -19
- package/dist/types/sdk/accounts/index.d.ts +7 -5
- package/dist/types/sdk/accounts/intents/guards.d.ts +72 -0
- package/dist/types/sdk/accounts/intents/index.d.ts +130 -15
- package/dist/types/sdk/accounts/intents/math.d.ts +46 -0
- package/dist/types/sdk/accounts/intents/open-strategy.d.ts +64 -0
- package/dist/types/sdk/accounts/intents/operations.d.ts +215 -0
- package/dist/types/sdk/accounts/intents/plan.d.ts +189 -0
- package/dist/types/sdk/accounts/intents/realize.d.ts +35 -0
- package/dist/types/sdk/accounts/intents/testing/delayed.d.ts +50 -0
- package/dist/types/sdk/accounts/intents/testing/expect.d.ts +17 -21
- package/dist/types/sdk/accounts/intents/testing/market.d.ts +91 -0
- package/dist/types/sdk/accounts/intents/testing/sdk-mock.d.ts +64 -16
- package/dist/types/sdk/accounts/intents/tests/add-collateral.fixtures.d.ts +45 -0
- package/dist/types/sdk/accounts/intents/tests/adjust-leverage.fixtures.d.ts +56 -0
- package/dist/types/sdk/accounts/intents/tests/deposit.fixtures.d.ts +64 -0
- package/dist/types/sdk/accounts/intents/tests/finish-decrease-leverage.fixtures.d.ts +107 -0
- package/dist/types/sdk/accounts/intents/tests/finish-withdraw.fixtures.d.ts +136 -0
- package/dist/types/sdk/accounts/intents/tests/open-strategy.fixtures.d.ts +56 -0
- package/dist/types/sdk/accounts/intents/tests/withdraw-asset.fixtures.d.ts +60 -0
- package/dist/types/sdk/accounts/intents/tests/withdraw.fixtures.d.ts +79 -0
- package/dist/types/sdk/accounts/intents/types.d.ts +369 -43
- package/dist/types/sdk/accounts/intents/utils/adjust-state-to-snapshot.d.ts +13 -0
- package/dist/types/sdk/accounts/intents/utils/assemble-operation-calls.d.ts +1 -1
- package/dist/types/sdk/accounts/intents/utils/credit-account-slice.d.ts +29 -0
- package/dist/types/sdk/accounts/intents/utils/index.d.ts +7 -5
- package/dist/types/sdk/accounts/intents/utils/ledger.d.ts +41 -0
- package/dist/types/sdk/accounts/intents/utils/pick-token.d.ts +55 -0
- package/dist/types/sdk/accounts/intents/utils/quotas-for-update.d.ts +15 -4
- package/dist/types/sdk/accounts/intents/utils/router-path.d.ts +70 -0
- package/dist/types/sdk/accounts/intents/view.d.ts +15 -0
- package/dist/types/sdk/accounts/types.d.ts +17 -14
- package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +6 -0
- package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +18 -0
- package/dist/types/sdk/base/TokensMeta.d.ts +44 -1
- package/dist/types/sdk/base/index.d.ts +2 -2
- package/dist/types/sdk/base/token-types.d.ts +12 -1
- package/dist/types/sdk/index.d.ts +28 -19
- package/dist/types/sdk/market/MarketRegister.d.ts +7 -3
- package/dist/types/sdk/market/ZapperRegister.d.ts +20 -2
- package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +0 -4
- package/dist/types/sdk/market/credit/CreditSuite.d.ts +6 -3
- package/dist/types/sdk/market/credit/index.d.ts +2 -1
- package/dist/types/sdk/market/credit/isStrategyCollateral.d.ts +74 -0
- package/dist/types/sdk/market/credit/types.d.ts +2 -9
- package/dist/types/sdk/market/index.d.ts +4 -2
- package/dist/types/sdk/market/math.d.ts +44 -34
- package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +6 -2
- package/dist/types/sdk/market/oracle/types.d.ts +10 -2
- package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +5 -0
- package/dist/types/sdk/market/pool/types.d.ts +5 -0
- package/dist/types/sdk/market/rwa/RWARegistry.d.ts +13 -0
- package/dist/types/sdk/market/types.d.ts +5 -1
- package/dist/types/sdk/opportunities/index.d.ts +1 -2
- package/dist/types/sdk/options.d.ts +0 -1
- package/dist/types/sdk/pools/PoolService.d.ts +32 -2
- package/dist/types/sdk/pools/index.d.ts +3 -3
- package/dist/types/sdk/pools/types.d.ts +109 -4
- package/dist/types/sdk/positions/PositionsService.d.ts +33 -2
- package/dist/types/sdk/positions/calcBorrowRate.d.ts +40 -0
- package/dist/types/sdk/positions/calcHealthFactor.d.ts +55 -0
- package/dist/types/sdk/positions/calcLiquidationPrice.d.ts +12 -0
- package/dist/types/sdk/positions/calcLiquidationPriceForTarget.d.ts +43 -0
- package/dist/types/sdk/positions/calcTimeToLiquidationMs.d.ts +16 -0
- package/dist/types/sdk/positions/index.d.ts +7 -2
- package/dist/types/sdk/positions/types.d.ts +58 -1
- package/dist/types/sdk/types/state.d.ts +6 -0
- package/dist/types/sdk/utils/viem/executeMulticallBatches.d.ts +39 -0
- package/dist/types/sdk/utils/viem/index.d.ts +3 -2
- package/package.json +2 -1
- package/dist/cjs/model/history.js +0 -53
- package/dist/cjs/model/history.schema.js +0 -128
- package/dist/cjs/sdk/accounts/intents/intents/index.js +0 -14
- package/dist/cjs/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.js +0 -121
- package/dist/cjs/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.js +0 -15
- package/dist/cjs/sdk/accounts/intents/intents/resume/close/close.fixtures.js +0 -108
- package/dist/cjs/sdk/accounts/intents/intents/resume/close/close.js +0 -51
- package/dist/cjs/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.js +0 -130
- package/dist/cjs/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.js +0 -83
- package/dist/cjs/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.js +0 -117
- package/dist/cjs/sdk/accounts/intents/intents/resume/deposit/deposit.js +0 -15
- package/dist/cjs/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.js +0 -95
- package/dist/cjs/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.js +0 -15
- package/dist/cjs/sdk/accounts/intents/intents/resume/index.js +0 -13
- package/dist/cjs/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.js +0 -138
- package/dist/cjs/sdk/accounts/intents/intents/resume/withdraw/withdraw.js +0 -161
- package/dist/cjs/sdk/accounts/intents/operations/add-collateral/index.js +0 -17
- package/dist/cjs/sdk/accounts/intents/operations/claim-delayed/index.js +0 -54
- package/dist/cjs/sdk/accounts/intents/operations/close-credit-account/index.js +0 -26
- package/dist/cjs/sdk/accounts/intents/operations/decrease-debt/index.js +0 -12
- package/dist/cjs/sdk/accounts/intents/operations/increase-debt/index.js +0 -12
- package/dist/cjs/sdk/accounts/intents/operations/index.js +0 -27
- package/dist/cjs/sdk/accounts/intents/operations/quota-update/index.js +0 -22
- package/dist/cjs/sdk/accounts/intents/operations/repay-credit-account/index.js +0 -22
- package/dist/cjs/sdk/accounts/intents/operations/start-delayed-withdrawal/index.js +0 -18
- package/dist/cjs/sdk/accounts/intents/operations/swap/index.js +0 -18
- package/dist/cjs/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +0 -27
- package/dist/cjs/sdk/accounts/intents/operations/withdraw-collateral/index.js +0 -43
- package/dist/cjs/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +0 -27
- package/dist/cjs/sdk/accounts/intents/quoters/close.js +0 -58
- package/dist/cjs/sdk/accounts/intents/quoters/index.js +0 -7
- package/dist/cjs/sdk/accounts/intents/quoters/swap.js +0 -79
- package/dist/cjs/sdk/accounts/intents/testing/expect.js +0 -167
- package/dist/cjs/sdk/accounts/intents/testing/resume.js +0 -172
- package/dist/cjs/sdk/accounts/intents/utils/simulate-adjust-state.js +0 -39
- package/dist/cjs/sdk/accounts/intents/utils/simulate-assets.js +0 -69
- package/dist/cjs/sdk/accounts/intents/utils/with-quota-update.js +0 -13
- package/dist/esm/model/history.js +0 -49
- package/dist/esm/model/history.schema.js +0 -116
- package/dist/esm/sdk/accounts/intents/intents/index.js +0 -8
- package/dist/esm/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.js +0 -107
- package/dist/esm/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.js +0 -14
- package/dist/esm/sdk/accounts/intents/intents/resume/close/close.fixtures.js +0 -94
- package/dist/esm/sdk/accounts/intents/intents/resume/close/close.js +0 -50
- package/dist/esm/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.js +0 -114
- package/dist/esm/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.js +0 -82
- package/dist/esm/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.js +0 -110
- package/dist/esm/sdk/accounts/intents/intents/resume/deposit/deposit.js +0 -14
- package/dist/esm/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.js +0 -88
- package/dist/esm/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.js +0 -14
- package/dist/esm/sdk/accounts/intents/intents/resume/index.js +0 -7
- package/dist/esm/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.js +0 -121
- package/dist/esm/sdk/accounts/intents/intents/resume/withdraw/withdraw.js +0 -160
- package/dist/esm/sdk/accounts/intents/operations/add-collateral/index.js +0 -16
- package/dist/esm/sdk/accounts/intents/operations/claim-delayed/index.js +0 -52
- package/dist/esm/sdk/accounts/intents/operations/close-credit-account/index.js +0 -25
- package/dist/esm/sdk/accounts/intents/operations/decrease-debt/index.js +0 -11
- package/dist/esm/sdk/accounts/intents/operations/increase-debt/index.js +0 -11
- package/dist/esm/sdk/accounts/intents/operations/index.js +0 -14
- package/dist/esm/sdk/accounts/intents/operations/quota-update/index.js +0 -21
- package/dist/esm/sdk/accounts/intents/operations/repay-credit-account/index.js +0 -21
- package/dist/esm/sdk/accounts/intents/operations/start-delayed-withdrawal/index.js +0 -17
- package/dist/esm/sdk/accounts/intents/operations/swap/index.js +0 -17
- package/dist/esm/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +0 -26
- package/dist/esm/sdk/accounts/intents/operations/withdraw-collateral/index.js +0 -42
- package/dist/esm/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +0 -26
- package/dist/esm/sdk/accounts/intents/quoters/close.js +0 -56
- package/dist/esm/sdk/accounts/intents/quoters/index.js +0 -3
- package/dist/esm/sdk/accounts/intents/quoters/swap.js +0 -77
- package/dist/esm/sdk/accounts/intents/testing/expect.js +0 -162
- package/dist/esm/sdk/accounts/intents/testing/resume.js +0 -157
- package/dist/esm/sdk/accounts/intents/utils/simulate-adjust-state.js +0 -38
- package/dist/esm/sdk/accounts/intents/utils/simulate-assets.js +0 -68
- package/dist/esm/sdk/accounts/intents/utils/with-quota-update.js +0 -12
- package/dist/types/model/history.d.ts +0 -153
- package/dist/types/model/history.schema.d.ts +0 -95
- package/dist/types/new-sdk/utils/history.d.ts +0 -18
- package/dist/types/sdk/accounts/intents/intents/index.d.ts +0 -8
- package/dist/types/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.d.ts +0 -13
- package/dist/types/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.d.ts +0 -38
- package/dist/types/sdk/accounts/intents/intents/resume/close/close.d.ts +0 -26
- package/dist/types/sdk/accounts/intents/intents/resume/close/close.fixtures.d.ts +0 -63
- package/dist/types/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.d.ts +0 -26
- package/dist/types/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.d.ts +0 -86
- package/dist/types/sdk/accounts/intents/intents/resume/deposit/deposit.d.ts +0 -13
- package/dist/types/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.d.ts +0 -48
- package/dist/types/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.d.ts +0 -13
- package/dist/types/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.d.ts +0 -46
- package/dist/types/sdk/accounts/intents/intents/resume/index.d.ts +0 -7
- package/dist/types/sdk/accounts/intents/intents/resume/withdraw/withdraw.d.ts +0 -33
- package/dist/types/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.d.ts +0 -68
- package/dist/types/sdk/accounts/intents/operations/add-collateral/index.d.ts +0 -23
- package/dist/types/sdk/accounts/intents/operations/claim-delayed/index.d.ts +0 -55
- package/dist/types/sdk/accounts/intents/operations/close-credit-account/index.d.ts +0 -22
- package/dist/types/sdk/accounts/intents/operations/decrease-debt/index.d.ts +0 -18
- package/dist/types/sdk/accounts/intents/operations/increase-debt/index.d.ts +0 -18
- package/dist/types/sdk/accounts/intents/operations/index.d.ts +0 -14
- package/dist/types/sdk/accounts/intents/operations/quota-update/index.d.ts +0 -24
- package/dist/types/sdk/accounts/intents/operations/repay-credit-account/index.d.ts +0 -31
- package/dist/types/sdk/accounts/intents/operations/start-delayed-withdrawal/index.d.ts +0 -23
- package/dist/types/sdk/accounts/intents/operations/swap/index.d.ts +0 -28
- package/dist/types/sdk/accounts/intents/operations/types.d.ts +0 -21
- package/dist/types/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.d.ts +0 -30
- package/dist/types/sdk/accounts/intents/operations/withdraw-collateral/index.d.ts +0 -36
- package/dist/types/sdk/accounts/intents/operations/wrap-rwa-collateral/index.d.ts +0 -30
- package/dist/types/sdk/accounts/intents/quoters/close.d.ts +0 -43
- package/dist/types/sdk/accounts/intents/quoters/index.d.ts +0 -3
- package/dist/types/sdk/accounts/intents/quoters/swap.d.ts +0 -43
- package/dist/types/sdk/accounts/intents/testing/resume.d.ts +0 -84
- package/dist/types/sdk/accounts/intents/utils/simulate-adjust-state.d.ts +0 -19
- package/dist/types/sdk/accounts/intents/utils/simulate-assets.d.ts +0 -21
- package/dist/types/sdk/accounts/intents/utils/with-quota-update.d.ts +0 -16
- /package/dist/cjs/{new-sdk/utils/history.js → model/notices.js} +0 -0
- /package/dist/cjs/{sdk/accounts/intents/operations → new-sdk/simulate}/types.js +0 -0
- /package/dist/esm/{new-sdk/utils/history.js → model/notices.js} +0 -0
- /package/dist/esm/{sdk/accounts/intents/operations → new-sdk/simulate}/types.js +0 -0
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
//#region src/sdk/accounts/intents/operations/swap/index.ts
|
|
3
|
-
/** One-to-one swap op (withdraw resume conversion legs). */
|
|
4
|
-
function buildSwapOperation(input, option) {
|
|
5
|
-
if (option.kind === "onchain" && input.calls.length === 0) throw new Error("swap: missing router calls");
|
|
6
|
-
return {
|
|
7
|
-
type: "swap",
|
|
8
|
-
from: [{
|
|
9
|
-
token: input.tokenIn,
|
|
10
|
-
balance: input.amountIn
|
|
11
|
-
}],
|
|
12
|
-
tokenOut: input.tokenOut,
|
|
13
|
-
amountOut: input.amountOut,
|
|
14
|
-
calls: input.calls
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
//#endregion
|
|
18
|
-
exports.buildSwapOperation = buildSwapOperation;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
//#region src/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.ts
|
|
3
|
-
/** One-to-one swap op (withdraw resume conversion legs). */
|
|
4
|
-
async function buildUnwrapRwaCollateralOperation(input, option) {
|
|
5
|
-
if (option.kind === "onchain") {
|
|
6
|
-
const calls = await input.sdk.accounts.assembleRWAUnwrapCalls(input.amountIn, input.creditAccount.creditManager);
|
|
7
|
-
if (!calls) throw new Error("unwrapRwaCollateral: no wrap calls found");
|
|
8
|
-
return {
|
|
9
|
-
type: "unwrapRwaCollateral",
|
|
10
|
-
tokenIn: input.tokenIn,
|
|
11
|
-
amount: input.amountIn,
|
|
12
|
-
tokenOut: input.tokenOut,
|
|
13
|
-
amountOut: input.amountOut,
|
|
14
|
-
calls
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
return {
|
|
18
|
-
type: "unwrapRwaCollateral",
|
|
19
|
-
tokenIn: input.tokenIn,
|
|
20
|
-
amount: input.amountIn,
|
|
21
|
-
tokenOut: input.tokenOut,
|
|
22
|
-
amountOut: input.amountOut,
|
|
23
|
-
calls: []
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
//#endregion
|
|
27
|
-
exports.buildUnwrapRwaCollateralOperation = buildUnwrapRwaCollateralOperation;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_intents_utils_common = require("../../utils/common.js");
|
|
3
|
-
require("../../utils/index.js");
|
|
4
|
-
const require_sdk_accounts_intents_operations_unwrap_rwa_collateral_index = require("../unwrap-rwa-collateral/index.js");
|
|
5
|
-
//#region src/sdk/accounts/intents/operations/withdraw-collateral/index.ts
|
|
6
|
-
/**
|
|
7
|
-
* Partial-withdraw tail: RWA forced unwrap, then withdrawCollateral to wallet.
|
|
8
|
-
*
|
|
9
|
-
* When withdrawing the wrapped RWA underlying, forces unwrap to `rwa.asset`
|
|
10
|
-
* and withdraws the unwrapped asset instead — even if the intent asked for
|
|
11
|
-
* underlying (mirrors legacy `resolveRwaForcedUnwrapWithdraw`).
|
|
12
|
-
*/
|
|
13
|
-
async function buildWithdrawCollateralOperation(input, option) {
|
|
14
|
-
const { token, amount, to, underlying, creditAccount, sdk } = input;
|
|
15
|
-
if (amount <= 0n) throw new Error("Nothing to withdraw");
|
|
16
|
-
const buildWithdraw = (withdrawToken, withdrawAmount) => {
|
|
17
|
-
let calls = [];
|
|
18
|
-
if (option.kind === "onchain") {
|
|
19
|
-
if (to === void 0) throw new Error("withdrawCollateral.to is required for onchain calls");
|
|
20
|
-
calls = [sdk.accounts.prepareWithdrawToken(creditAccount.creditFacade, withdrawToken, withdrawAmount, to)];
|
|
21
|
-
}
|
|
22
|
-
return {
|
|
23
|
-
type: "withdrawCollateral",
|
|
24
|
-
token: withdrawToken,
|
|
25
|
-
amount: withdrawAmount,
|
|
26
|
-
to,
|
|
27
|
-
calls
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
|
-
const rwa = require_sdk_accounts_intents_utils_common.eq(token, underlying) ? sdk.tokensMeta.rwaUnderlyings.get(underlying) : void 0;
|
|
31
|
-
if (!rwa) return [buildWithdraw(token, amount)];
|
|
32
|
-
const amountOut = require_sdk_accounts_intents_utils_common.toTargetDecimals(amount, underlying, rwa.asset, sdk);
|
|
33
|
-
return [await require_sdk_accounts_intents_operations_unwrap_rwa_collateral_index.buildUnwrapRwaCollateralOperation({
|
|
34
|
-
amountIn: amount,
|
|
35
|
-
tokenIn: underlying,
|
|
36
|
-
tokenOut: rwa.asset,
|
|
37
|
-
amountOut,
|
|
38
|
-
creditAccount,
|
|
39
|
-
sdk
|
|
40
|
-
}, option), buildWithdraw(rwa.asset, amountOut)];
|
|
41
|
-
}
|
|
42
|
-
//#endregion
|
|
43
|
-
exports.buildWithdrawCollateralOperation = buildWithdrawCollateralOperation;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
//#region src/sdk/accounts/intents/operations/wrap-rwa-collateral/index.ts
|
|
3
|
-
/** One-to-one wrap op (decrease-leverage resume repay from rwa.asset). */
|
|
4
|
-
async function buildWrapRwaCollateralOperation(input, option) {
|
|
5
|
-
if (option.kind === "onchain") {
|
|
6
|
-
const calls = await input.sdk.accounts.assembleRWAWrapCalls(input.amountIn, input.creditAccount.creditManager);
|
|
7
|
-
if (!calls) throw new Error("wrapRwaCollateral: no wrap calls found");
|
|
8
|
-
return {
|
|
9
|
-
type: "wrapRwaCollateral",
|
|
10
|
-
tokenIn: input.tokenIn,
|
|
11
|
-
amount: input.amountIn,
|
|
12
|
-
tokenOut: input.tokenOut,
|
|
13
|
-
amountOut: input.amountOut,
|
|
14
|
-
calls
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
return {
|
|
18
|
-
type: "wrapRwaCollateral",
|
|
19
|
-
tokenIn: input.tokenIn,
|
|
20
|
-
amount: input.amountIn,
|
|
21
|
-
tokenOut: input.tokenOut,
|
|
22
|
-
amountOut: input.amountOut,
|
|
23
|
-
calls: []
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
//#endregion
|
|
27
|
-
exports.buildWrapRwaCollateralOperation = buildWrapRwaCollateralOperation;
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_utils_bigint_math = require("../../../utils/bigint-math.js");
|
|
3
|
-
const require_sdk_accounts_intents_utils_common = require("../utils/common.js");
|
|
4
|
-
const require_sdk_accounts_intents_utils_convert_amount = require("../utils/convert-amount.js");
|
|
5
|
-
require("../utils/index.js");
|
|
6
|
-
//#region src/sdk/accounts/intents/quoters/close.ts
|
|
7
|
-
/**
|
|
8
|
-
* Offchain quoter: debt is repaid from NON-underlying value
|
|
9
|
-
* (`amount = Σ convert(non-underlying → underlying) − debt`, clamped at 0),
|
|
10
|
-
* underlying already on the account goes straight to the wallet
|
|
11
|
-
* (`underlyingBalance = underlying + amount`). No router involved.
|
|
12
|
-
*/
|
|
13
|
-
function createCloseOracleQuoter(args) {
|
|
14
|
-
const { sdk, creditAccount } = args;
|
|
15
|
-
const underlyingLc = creditAccount.underlying.toLowerCase();
|
|
16
|
-
return async ({ assets, debt }) => {
|
|
17
|
-
const convert = require_sdk_accounts_intents_utils_convert_amount.convertAmount(sdk, creditAccount.creditManager);
|
|
18
|
-
const underlyingBalance = assets.find((a) => require_sdk_accounts_intents_utils_common.eq(a.token, underlyingLc))?.balance ?? 0n;
|
|
19
|
-
const assetsSum = assets.reduce((acc, a) => acc + convert(a.token, creditAccount.underlying, a.balance), 0n);
|
|
20
|
-
const totalToRepay = require_sdk_utils_bigint_math.BigIntMath.max(assetsSum - underlyingBalance, 0n);
|
|
21
|
-
const amount = require_sdk_utils_bigint_math.BigIntMath.max(totalToRepay - debt, 0n);
|
|
22
|
-
return {
|
|
23
|
-
amount,
|
|
24
|
-
minAmount: amount,
|
|
25
|
-
underlyingBalance: underlyingBalance + amount,
|
|
26
|
-
calls: []
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Onchain quoter: router close path over post-claim balances
|
|
32
|
-
* (phantom already spent). `amount` mirrors legacy
|
|
33
|
-
* `patchCloseOperationReceiveAmount` (debt 0n — closed preview is zeroed).
|
|
34
|
-
*/
|
|
35
|
-
function createRouterCloseQuoter(args) {
|
|
36
|
-
const { sdk, creditAccount, slippage } = args;
|
|
37
|
-
const creditManager = sdk.marketRegister.findCreditManager(creditAccount.creditManager);
|
|
38
|
-
const router = sdk.routerFor({ creditFacade: creditAccount.creditFacade });
|
|
39
|
-
return async ({ assets }) => {
|
|
40
|
-
return await router.findBestClosePath({
|
|
41
|
-
creditAccount: require_sdk_accounts_intents_utils_common.toRouterCaSlice(creditAccount, assets),
|
|
42
|
-
creditManager: {
|
|
43
|
-
address: creditManager.creditManager.address.toLowerCase(),
|
|
44
|
-
creditFacade: creditManager.creditFacade.address.toLowerCase(),
|
|
45
|
-
collateralTokens: creditManager.creditManager.collateralTokens.map((t) => t.toLowerCase())
|
|
46
|
-
},
|
|
47
|
-
slippage,
|
|
48
|
-
balances: {
|
|
49
|
-
expectedBalances: assets,
|
|
50
|
-
leftoverBalances: [],
|
|
51
|
-
tokensToClaim: []
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
//#endregion
|
|
57
|
-
exports.createCloseOracleQuoter = createCloseOracleQuoter;
|
|
58
|
-
exports.createRouterCloseQuoter = createRouterCloseQuoter;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_intents_quoters_close = require("./close.js");
|
|
3
|
-
const require_sdk_accounts_intents_quoters_swap = require("./swap.js");
|
|
4
|
-
exports.createCloseOracleQuoter = require_sdk_accounts_intents_quoters_close.createCloseOracleQuoter;
|
|
5
|
-
exports.createOracleSwapQuoter = require_sdk_accounts_intents_quoters_swap.createOracleSwapQuoter;
|
|
6
|
-
exports.createRouterCloseQuoter = require_sdk_accounts_intents_quoters_close.createRouterCloseQuoter;
|
|
7
|
-
exports.createRouterSwapQuoter = require_sdk_accounts_intents_quoters_swap.createRouterSwapQuoter;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_intents_utils_common = require("../utils/common.js");
|
|
3
|
-
const require_sdk_accounts_intents_utils_convert_amount = require("../utils/convert-amount.js");
|
|
4
|
-
require("../utils/index.js");
|
|
5
|
-
//#region src/sdk/accounts/intents/quoters/swap.ts
|
|
6
|
-
/**
|
|
7
|
-
* Offchain quoter: oracle prices via {@link convertAmount} (with an RWA
|
|
8
|
-
* bridge through the wrapped underlying when `rwa.asset` has no direct pool
|
|
9
|
-
* price).
|
|
10
|
-
*/
|
|
11
|
-
function createOracleSwapQuoter(args) {
|
|
12
|
-
const { sdk, creditAccount } = args;
|
|
13
|
-
const { creditManager } = creditAccount;
|
|
14
|
-
const convert = require_sdk_accounts_intents_utils_convert_amount.convertAmount(sdk, creditManager);
|
|
15
|
-
return async ({ from, tokenOut }) => {
|
|
16
|
-
if (!from[0]) return {
|
|
17
|
-
amount: 0n,
|
|
18
|
-
minAmount: 0n,
|
|
19
|
-
calls: []
|
|
20
|
-
};
|
|
21
|
-
let amount = 0n;
|
|
22
|
-
for (const entry of from) amount += convert(entry.token, tokenOut, entry.balance);
|
|
23
|
-
return {
|
|
24
|
-
amount,
|
|
25
|
-
minAmount: amount,
|
|
26
|
-
calls: []
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Onchain quoter: a full token-in spend uses `findOneTokenPath`; a partial
|
|
32
|
-
* spend uses `findManyToOnePath` with the exact post-operations balance and
|
|
33
|
-
* leftover. RWA wrap/unwrap calls are resolved by the router.
|
|
34
|
-
*/
|
|
35
|
-
function createRouterSwapQuoter(args) {
|
|
36
|
-
const { sdk, creditAccount, slippage } = args;
|
|
37
|
-
const creditManager = sdk.marketRegister.findCreditManager(creditAccount.creditManager);
|
|
38
|
-
const cmSlice = {
|
|
39
|
-
address: creditManager.creditManager.address.toLowerCase(),
|
|
40
|
-
creditFacade: creditManager.creditFacade.address.toLowerCase(),
|
|
41
|
-
collateralTokens: creditManager.creditManager.collateralTokens.map((t) => t.toLowerCase())
|
|
42
|
-
};
|
|
43
|
-
const router = sdk.routerFor({ creditFacade: creditManager.creditFacade.address });
|
|
44
|
-
return async (request) => {
|
|
45
|
-
const input = request.from[0];
|
|
46
|
-
if (!input) return {
|
|
47
|
-
amount: 0n,
|
|
48
|
-
minAmount: 0n,
|
|
49
|
-
calls: []
|
|
50
|
-
};
|
|
51
|
-
const leftover = request.tokenInBalance - input.balance;
|
|
52
|
-
if (leftover < 0n) throw new Error("createRouterSwapQuoter: swap amount exceeds token-in balance");
|
|
53
|
-
if (leftover > 0n) return await router.findManyToOnePath({
|
|
54
|
-
creditAccount: require_sdk_accounts_intents_utils_common.toRouterCaSlice(creditAccount),
|
|
55
|
-
creditManager: cmSlice,
|
|
56
|
-
expectedBalances: [{
|
|
57
|
-
token: input.token,
|
|
58
|
-
balance: request.tokenInBalance
|
|
59
|
-
}],
|
|
60
|
-
leftoverBalances: [{
|
|
61
|
-
token: input.token,
|
|
62
|
-
balance: leftover
|
|
63
|
-
}],
|
|
64
|
-
target: request.tokenOut,
|
|
65
|
-
slippage
|
|
66
|
-
});
|
|
67
|
-
return await router.findOneTokenPath({
|
|
68
|
-
creditAccount: require_sdk_accounts_intents_utils_common.toRouterCaSlice(creditAccount),
|
|
69
|
-
creditManager: cmSlice,
|
|
70
|
-
tokenIn: input.token,
|
|
71
|
-
tokenOut: request.tokenOut,
|
|
72
|
-
amount: input.balance,
|
|
73
|
-
slippage
|
|
74
|
-
});
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
//#endregion
|
|
78
|
-
exports.createOracleSwapQuoter = createOracleSwapQuoter;
|
|
79
|
-
exports.createRouterSwapQuoter = createRouterSwapQuoter;
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_intents_testing_sdk_mock = require("./sdk-mock.js");
|
|
3
|
-
let vitest = require("vitest");
|
|
4
|
-
//#region src/sdk/accounts/intents/testing/expect.ts
|
|
5
|
-
function expectedCalls(expected) {
|
|
6
|
-
return expected.calls ?? [];
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Fills sentinel `calls` for onchain resume expectations. Shared fixtures keep
|
|
10
|
-
* `calls: []` for offchain; onchain tests map through this helper.
|
|
11
|
-
*/
|
|
12
|
-
function withOnchainOpCalls(ops) {
|
|
13
|
-
return ops.map((op) => {
|
|
14
|
-
switch (op.type) {
|
|
15
|
-
case "claimDelayedWithdrawal": return {
|
|
16
|
-
...op,
|
|
17
|
-
calls: [require_sdk_accounts_intents_testing_sdk_mock.MOCK_CLAIM_CALL]
|
|
18
|
-
};
|
|
19
|
-
case "changeQuota": return {
|
|
20
|
-
...op,
|
|
21
|
-
calls: [require_sdk_accounts_intents_testing_sdk_mock.CA_OP_CALLS.changeQuota]
|
|
22
|
-
};
|
|
23
|
-
case "decreaseDebt": return {
|
|
24
|
-
...op,
|
|
25
|
-
calls: [require_sdk_accounts_intents_testing_sdk_mock.CA_OP_CALLS.decreaseDebt]
|
|
26
|
-
};
|
|
27
|
-
case "withdrawCollateral": return {
|
|
28
|
-
...op,
|
|
29
|
-
calls: [require_sdk_accounts_intents_testing_sdk_mock.CA_OP_CALLS.withdrawCollateral]
|
|
30
|
-
};
|
|
31
|
-
case "swap": return {
|
|
32
|
-
...op,
|
|
33
|
-
calls: op.calls?.length ? op.calls : [require_sdk_accounts_intents_testing_sdk_mock.MOCK_ROUTER_CALL]
|
|
34
|
-
};
|
|
35
|
-
case "wrapRwaCollateral": return {
|
|
36
|
-
...op,
|
|
37
|
-
calls: op.calls?.length ? op.calls : [require_sdk_accounts_intents_testing_sdk_mock.MOCK_RWA_WRAP_CALL]
|
|
38
|
-
};
|
|
39
|
-
case "unwrapRwaCollateral": return {
|
|
40
|
-
...op,
|
|
41
|
-
calls: op.calls?.length ? op.calls : [require_sdk_accounts_intents_testing_sdk_mock.MOCK_RWA_UNWRAP_CALL]
|
|
42
|
-
};
|
|
43
|
-
case "closeCreditAccount": return {
|
|
44
|
-
...op,
|
|
45
|
-
calls: op.calls?.length ? op.calls : [require_sdk_accounts_intents_testing_sdk_mock.MOCK_CLOSE_CALL]
|
|
46
|
-
};
|
|
47
|
-
default: return op;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
function matchOp(actual, expected, index) {
|
|
52
|
-
(0, vitest.expect)(actual.type, `op[${index}].type`).toBe(expected.type);
|
|
53
|
-
switch (expected.type) {
|
|
54
|
-
case "claimDelayedWithdrawal":
|
|
55
|
-
if (actual.type !== "claimDelayedWithdrawal") return;
|
|
56
|
-
(0, vitest.expect)(actual.token, `op[${index}].token`).toBe(expected.token);
|
|
57
|
-
(0, vitest.expect)(actual.withdrawalPhantomToken, `op[${index}].withdrawalPhantomToken`).toBe(expected.withdrawalPhantomToken);
|
|
58
|
-
(0, vitest.expect)(actual.withdrawalTokenSpent, `op[${index}].withdrawalTokenSpent`).toBe(expected.withdrawalTokenSpent);
|
|
59
|
-
(0, vitest.expect)(actual.outputs, `op[${index}].outputs`).toEqual(expected.outputs);
|
|
60
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
61
|
-
break;
|
|
62
|
-
case "changeQuota":
|
|
63
|
-
if (actual.type !== "changeQuota") return;
|
|
64
|
-
(0, vitest.expect)(actual.quotaIncrease, `op[${index}].quotaIncrease`).toEqual(expected.quotaIncrease);
|
|
65
|
-
(0, vitest.expect)(actual.quotaDecrease, `op[${index}].quotaDecrease`).toEqual(expected.quotaDecrease);
|
|
66
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
67
|
-
break;
|
|
68
|
-
case "closeCreditAccount":
|
|
69
|
-
if (actual.type !== "closeCreditAccount") return;
|
|
70
|
-
(0, vitest.expect)(actual.amount, `op[${index}].amount`).toBe(expected.amount);
|
|
71
|
-
(0, vitest.expect)(actual.minAmount, `op[${index}].minAmount`).toBe(expected.minAmount);
|
|
72
|
-
(0, vitest.expect)(actual.underlyingBalance, `op[${index}].underlyingBalance`).toBe(expected.underlyingBalance);
|
|
73
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
74
|
-
break;
|
|
75
|
-
case "swap":
|
|
76
|
-
if (actual.type !== "swap") return;
|
|
77
|
-
(0, vitest.expect)(actual.from, `op[${index}].from`).toEqual(expected.from);
|
|
78
|
-
(0, vitest.expect)(actual.tokenOut, `op[${index}].tokenOut`).toBe(expected.tokenOut);
|
|
79
|
-
(0, vitest.expect)(actual.amountOut, `op[${index}].amountOut`).toBe(expected.amountOut);
|
|
80
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
81
|
-
break;
|
|
82
|
-
case "decreaseDebt":
|
|
83
|
-
if (actual.type !== "decreaseDebt") return;
|
|
84
|
-
(0, vitest.expect)(actual.amount, `op[${index}].amount`).toBe(expected.amount);
|
|
85
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
86
|
-
break;
|
|
87
|
-
case "withdrawCollateral":
|
|
88
|
-
if (actual.type !== "withdrawCollateral") return;
|
|
89
|
-
(0, vitest.expect)(actual.token, `op[${index}].token`).toBe(expected.token);
|
|
90
|
-
(0, vitest.expect)(actual.amount, `op[${index}].amount`).toBe(expected.amount);
|
|
91
|
-
(0, vitest.expect)(actual.to, `op[${index}].to`).toBe(expected.to);
|
|
92
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
93
|
-
break;
|
|
94
|
-
case "unwrapRwaCollateral":
|
|
95
|
-
if (actual.type !== "unwrapRwaCollateral") return;
|
|
96
|
-
(0, vitest.expect)(actual.tokenIn, `op[${index}].tokenIn`).toBe(expected.tokenIn);
|
|
97
|
-
(0, vitest.expect)(actual.tokenOut, `op[${index}].tokenOut`).toBe(expected.tokenOut);
|
|
98
|
-
(0, vitest.expect)(actual.amount, `op[${index}].amount`).toBe(expected.amount);
|
|
99
|
-
(0, vitest.expect)(actual.amountOut, `op[${index}].amountOut`).toBe(expected.amountOut);
|
|
100
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
101
|
-
break;
|
|
102
|
-
case "wrapRwaCollateral":
|
|
103
|
-
if (actual.type !== "wrapRwaCollateral") return;
|
|
104
|
-
(0, vitest.expect)(actual.tokenIn, `op[${index}].tokenIn`).toBe(expected.tokenIn);
|
|
105
|
-
(0, vitest.expect)(actual.tokenOut, `op[${index}].tokenOut`).toBe(expected.tokenOut);
|
|
106
|
-
(0, vitest.expect)(actual.amount, `op[${index}].amount`).toBe(expected.amount);
|
|
107
|
-
(0, vitest.expect)(actual.amountOut, `op[${index}].amountOut`).toBe(expected.amountOut);
|
|
108
|
-
(0, vitest.expect)(actual.calls, `op[${index}].calls`).toEqual(expectedCalls(expected));
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
/** Asserts exact operations on a raw op array (type + tokens + amounts). */
|
|
112
|
-
function expectOpsArrayExact(ops, expected) {
|
|
113
|
-
(0, vitest.expect)(ops.length, "operations.length").toBe(expected.length);
|
|
114
|
-
for (let i = 0; i < expected.length; i++) {
|
|
115
|
-
const actual = ops[i];
|
|
116
|
-
const exp = expected[i];
|
|
117
|
-
if (actual === void 0 || exp === void 0) {
|
|
118
|
-
vitest.expect.fail(`missing op at index ${i}`);
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
matchOp(actual, exp, i);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
/** Asserts exact calls on a raw MultiCall array (target + callData). */
|
|
125
|
-
function expectCallsArrayExact(calls, expected, label = "calls") {
|
|
126
|
-
(0, vitest.expect)(calls.length, `${label}.length`).toBe(expected.length);
|
|
127
|
-
for (let i = 0; i < expected.length; i++) {
|
|
128
|
-
const actual = calls[i];
|
|
129
|
-
const exp = expected[i];
|
|
130
|
-
if (actual === void 0 || exp === void 0) {
|
|
131
|
-
vitest.expect.fail(`missing call at index ${i}`);
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
(0, vitest.expect)(actual.target, `${label}[${i}].target`).toBe(exp.target);
|
|
135
|
-
(0, vitest.expect)(actual.callData, `${label}[${i}].callData`).toBe(exp.callData);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Asserts a successful adjust-style resume preview: ok, instant branch present,
|
|
140
|
-
* exact calls (empty unless `expectedCalls` is provided), metrics from the
|
|
141
|
-
* post-claim CA, and exact operations (incl. changeQuota).
|
|
142
|
-
* Returns the adjust preview state for further asset/quota assertions.
|
|
143
|
-
*/
|
|
144
|
-
function expectAdjustResumePreview(result, args) {
|
|
145
|
-
(0, vitest.expect)(result.ok).toBe(true);
|
|
146
|
-
if (!result.ok) throw new Error("expected ok resume preview");
|
|
147
|
-
(0, vitest.expect)(result.instant, "instant branch").toBeDefined();
|
|
148
|
-
if (!result.instant) throw new Error("expected instant branch");
|
|
149
|
-
if (args.expectedCalls) expectCallsArrayExact(result.instant.calls, args.expectedCalls);
|
|
150
|
-
else (0, vitest.expect)(result.instant.calls).toEqual([]);
|
|
151
|
-
const state = result.instant.preview.min;
|
|
152
|
-
(0, vitest.expect)(state.kind).toBe("adjust");
|
|
153
|
-
if (state.kind !== "adjust") throw new Error("expected adjust preview state");
|
|
154
|
-
(0, vitest.expect)(state.totalValue).toBe(args.totalValue);
|
|
155
|
-
(0, vitest.expect)(state.accountDebt).toBe(args.accountDebt);
|
|
156
|
-
expectOpsArrayExact(result.instant.operations, args.expectedOps);
|
|
157
|
-
return state;
|
|
158
|
-
}
|
|
159
|
-
function assetBalance(assets, token) {
|
|
160
|
-
return assets.find((a) => a.token === token)?.balance ?? 0n;
|
|
161
|
-
}
|
|
162
|
-
//#endregion
|
|
163
|
-
exports.assetBalance = assetBalance;
|
|
164
|
-
exports.expectAdjustResumePreview = expectAdjustResumePreview;
|
|
165
|
-
exports.expectCallsArrayExact = expectCallsArrayExact;
|
|
166
|
-
exports.expectOpsArrayExact = expectOpsArrayExact;
|
|
167
|
-
exports.withOnchainOpCalls = withOnchainOpCalls;
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_utils_formatter = require("../../../utils/formatter.js");
|
|
3
|
-
require("../../../index.js");
|
|
4
|
-
const require_sdk_accounts_intents_testing_sdk_mock = require("./sdk-mock.js");
|
|
5
|
-
//#region src/sdk/accounts/intents/testing/resume.ts
|
|
6
|
-
/**
|
|
7
|
-
* Shared kit for claim-only resume fixtures (add collateral, increase
|
|
8
|
-
* leverage, deposit, deposit+increase).
|
|
9
|
-
*
|
|
10
|
-
* Unlike the legacy props (which echoed `creditAccount.totalValue`), the
|
|
11
|
-
* service computes totalValue from CA token balances via the price oracle.
|
|
12
|
-
* Each case's base balance is therefore `postClaimTotalValue − claimed value
|
|
13
|
-
* in UND`, so the derived totalValue matches the legacy expectation exactly.
|
|
14
|
-
*/
|
|
15
|
-
const UND_DECIMALS = 8;
|
|
16
|
-
const TOK_DECIMALS = 18;
|
|
17
|
-
const UND = "0x3333333333333333333333333333333333333333";
|
|
18
|
-
const ANY = "0x1111111111111111111111111111111111111111";
|
|
19
|
-
const ANY2 = "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
|
20
|
-
const RWA_ASSET = "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
|
|
21
|
-
const RESUME_FIXTURE_PHANTOM = "0xcccccccccccccccccccccccccccccccccccccccc";
|
|
22
|
-
const CREDIT_MANAGER = "0xdddddddddddddddddddddddddddddddddddddddd";
|
|
23
|
-
const CREDIT_FACADE = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
|
24
|
-
const CREDIT_ACCOUNT = "0xacacacacacacacacacacacacacacacacacacacac";
|
|
25
|
-
const PRICES = {
|
|
26
|
-
[UND]: require_sdk_utils_formatter.toBN("2", 8),
|
|
27
|
-
[ANY]: require_sdk_utils_formatter.toBN("1", 8),
|
|
28
|
-
[ANY2]: require_sdk_utils_formatter.toBN("1", 8),
|
|
29
|
-
[RWA_ASSET]: require_sdk_utils_formatter.toBN("2", 8)
|
|
30
|
-
};
|
|
31
|
-
const DECIMALS = {
|
|
32
|
-
[UND]: 8,
|
|
33
|
-
[ANY]: 18,
|
|
34
|
-
[ANY2]: 18,
|
|
35
|
-
[RWA_ASSET]: 8
|
|
36
|
-
};
|
|
37
|
-
const QUOTAS = {
|
|
38
|
-
[ANY]: {
|
|
39
|
-
token: ANY,
|
|
40
|
-
rate: 500n,
|
|
41
|
-
limit: require_sdk_utils_formatter.toBN("999999999999999", 18),
|
|
42
|
-
isActive: true
|
|
43
|
-
},
|
|
44
|
-
[ANY2]: {
|
|
45
|
-
token: ANY2,
|
|
46
|
-
rate: 500n,
|
|
47
|
-
limit: require_sdk_utils_formatter.toBN("999999999999999", 18),
|
|
48
|
-
isActive: true
|
|
49
|
-
},
|
|
50
|
-
[RWA_ASSET]: {
|
|
51
|
-
token: RWA_ASSET,
|
|
52
|
-
rate: 500n,
|
|
53
|
-
limit: require_sdk_utils_formatter.toBN("999999999999999", 8),
|
|
54
|
-
isActive: true
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
const LIQUIDATION_THRESHOLDS = {
|
|
58
|
-
[UND]: 9800,
|
|
59
|
-
[ANY]: 9200,
|
|
60
|
-
[ANY2]: 9200,
|
|
61
|
-
[RWA_ASSET]: 9200
|
|
62
|
-
};
|
|
63
|
-
const MAX_DEBT = require_sdk_utils_formatter.toBN("200000", 8);
|
|
64
|
-
/** Claimed proceeds converted to UND (mirrors the mock price oracle). */
|
|
65
|
-
function claimedValueInUnd(amount, token) {
|
|
66
|
-
return amount * PRICES[token] * 10n ** BigInt(8) / (PRICES[UND] * 10n ** BigInt(DECIMALS[token]));
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Mock sdk for a resume case. The fixture phantom token gets the claimed
|
|
70
|
-
* token's decimals so the offchain `toTargetDecimals` rescale stays identity
|
|
71
|
-
* (its `10n * decimals` factor is only correct for equal decimals).
|
|
72
|
-
* `closePath` configures the router `findBestClosePath` result (close resume).
|
|
73
|
-
*/
|
|
74
|
-
function buildResumeSdk(c, extras) {
|
|
75
|
-
const phantom = extras?.phantom ?? "0xcccccccccccccccccccccccccccccccccccccccc";
|
|
76
|
-
return require_sdk_accounts_intents_testing_sdk_mock.buildMockSdk({
|
|
77
|
-
prices: {
|
|
78
|
-
...PRICES,
|
|
79
|
-
...extras?.extraPrices
|
|
80
|
-
},
|
|
81
|
-
decimals: {
|
|
82
|
-
...DECIMALS,
|
|
83
|
-
...extras?.extraDecimals,
|
|
84
|
-
[phantom]: extras?.extraDecimals?.[c.claimedToken] ?? DECIMALS[c.claimedToken]
|
|
85
|
-
},
|
|
86
|
-
quotas: QUOTAS,
|
|
87
|
-
liquidationThresholds: LIQUIDATION_THRESHOLDS,
|
|
88
|
-
maxDebt: MAX_DEBT,
|
|
89
|
-
creditManager: CREDIT_MANAGER,
|
|
90
|
-
creditFacade: CREDIT_FACADE,
|
|
91
|
-
underlying: UND,
|
|
92
|
-
closePath: extras?.closePath,
|
|
93
|
-
rwaAssets: extras?.rwaAssets
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
function buildOffchainOptions(c) {
|
|
97
|
-
return {
|
|
98
|
-
kind: "offchain",
|
|
99
|
-
phantomSpent: c.claimedAmount,
|
|
100
|
-
withdrawalConfig: {
|
|
101
|
-
creditManager: CREDIT_MANAGER,
|
|
102
|
-
token: c.claimedToken,
|
|
103
|
-
withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
|
|
104
|
-
underlying: c.claimedToken,
|
|
105
|
-
withdrawalLength: 0n
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
function buildOnchainOptions(c) {
|
|
110
|
-
return {
|
|
111
|
-
kind: "onchain",
|
|
112
|
-
claimableWithdrawal: {
|
|
113
|
-
token: c.claimedToken,
|
|
114
|
-
withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
|
|
115
|
-
withdrawalTokenSpent: c.claimedAmount,
|
|
116
|
-
outputs: [{
|
|
117
|
-
token: c.claimedToken,
|
|
118
|
-
amount: c.claimedAmount,
|
|
119
|
-
isDelayed: false
|
|
120
|
-
}],
|
|
121
|
-
claimCalls: [require_sdk_accounts_intents_testing_sdk_mock.MOCK_CLAIM_CALL]
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
function buildClaimResumeProps(args) {
|
|
126
|
-
const { intent, case: c, sdk, options } = args;
|
|
127
|
-
return {
|
|
128
|
-
intent,
|
|
129
|
-
creditAccount: {
|
|
130
|
-
creditAccount: CREDIT_ACCOUNT,
|
|
131
|
-
creditManager: CREDIT_MANAGER,
|
|
132
|
-
creditFacade: CREDIT_FACADE,
|
|
133
|
-
underlying: UND,
|
|
134
|
-
enabledTokensMask: 0n,
|
|
135
|
-
totalDebtUSD: 0n,
|
|
136
|
-
accountDebt: c.postClaimDebt,
|
|
137
|
-
tokens: [{
|
|
138
|
-
token: RESUME_FIXTURE_PHANTOM,
|
|
139
|
-
balance: c.claimedAmount,
|
|
140
|
-
quota: 0n,
|
|
141
|
-
mask: 0n,
|
|
142
|
-
success: true
|
|
143
|
-
}, ...c.baseAssets ?? [{
|
|
144
|
-
token: "0x3333333333333333333333333333333333333333",
|
|
145
|
-
balance: c.postClaimTotalValue - claimedValueInUnd(c.claimedAmount, c.claimedToken),
|
|
146
|
-
quota: 0n,
|
|
147
|
-
mask: 0n,
|
|
148
|
-
success: true
|
|
149
|
-
}]]
|
|
150
|
-
},
|
|
151
|
-
sdk,
|
|
152
|
-
quotaReserve: void 0,
|
|
153
|
-
options,
|
|
154
|
-
slippage: void 0
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
//#endregion
|
|
158
|
-
exports.ANY = ANY;
|
|
159
|
-
exports.ANY2 = ANY2;
|
|
160
|
-
exports.CREDIT_ACCOUNT = CREDIT_ACCOUNT;
|
|
161
|
-
exports.CREDIT_FACADE = CREDIT_FACADE;
|
|
162
|
-
exports.CREDIT_MANAGER = CREDIT_MANAGER;
|
|
163
|
-
exports.RESUME_FIXTURE_PHANTOM = RESUME_FIXTURE_PHANTOM;
|
|
164
|
-
exports.RWA_ASSET = RWA_ASSET;
|
|
165
|
-
exports.TOK_DECIMALS = TOK_DECIMALS;
|
|
166
|
-
exports.UND = UND;
|
|
167
|
-
exports.UND_DECIMALS = UND_DECIMALS;
|
|
168
|
-
exports.buildClaimResumeProps = buildClaimResumeProps;
|
|
169
|
-
exports.buildOffchainOptions = buildOffchainOptions;
|
|
170
|
-
exports.buildOnchainOptions = buildOnchainOptions;
|
|
171
|
-
exports.buildResumeSdk = buildResumeSdk;
|
|
172
|
-
exports.claimedValueInUnd = claimedValueInUnd;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_intents_utils_quotas_for_update = require("./quotas-for-update.js");
|
|
3
|
-
const require_sdk_accounts_intents_utils_simulate_assets = require("./simulate-assets.js");
|
|
4
|
-
//#region src/sdk/accounts/intents/utils/simulate-adjust-state.ts
|
|
5
|
-
function simulateState(props) {
|
|
6
|
-
const market = props.sdk.marketRegister.findByCreditManager(props.creditAccount.creditManager);
|
|
7
|
-
const convert = (token, to, amount) => market.priceOracle.convert(token, to, amount);
|
|
8
|
-
const creditManager = props.sdk.marketRegister.findCreditManager(props.creditAccount.creditManager);
|
|
9
|
-
const { assets, totalValue, debt } = require_sdk_accounts_intents_utils_simulate_assets.simulateOperationAssets({
|
|
10
|
-
initialAssets: props.creditAccount.tokens,
|
|
11
|
-
operations: props.operations,
|
|
12
|
-
underlyingToken: props.creditAccount.underlying,
|
|
13
|
-
debt: props.creditAccount.accountDebt,
|
|
14
|
-
convert
|
|
15
|
-
});
|
|
16
|
-
const quotaResult = require_sdk_accounts_intents_utils_quotas_for_update.getQuotasForUpdate({
|
|
17
|
-
assetsBefore: props.creditAccount.tokens,
|
|
18
|
-
assetsAfter: assets,
|
|
19
|
-
liquidationThresholds: creditManager.creditManager.liquidationThresholds,
|
|
20
|
-
quotas: market.pool.pqk.quotas,
|
|
21
|
-
initialQuotas: props.creditAccount.tokens,
|
|
22
|
-
quotaReserve: props.quotaReserve,
|
|
23
|
-
underlyingToken: props.creditAccount.underlying,
|
|
24
|
-
maxDebt: creditManager.creditFacade.maxDebt,
|
|
25
|
-
convert
|
|
26
|
-
});
|
|
27
|
-
return {
|
|
28
|
-
state: {
|
|
29
|
-
kind: "adjust",
|
|
30
|
-
totalValue,
|
|
31
|
-
accountDebt: debt,
|
|
32
|
-
assets,
|
|
33
|
-
quotas: quotaResult.desiredQuota
|
|
34
|
-
},
|
|
35
|
-
quotaResult
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
//#endregion
|
|
39
|
-
exports.simulateState = simulateState;
|