@gearbox-protocol/sdk 16.0.0-next.28 → 16.0.0-next.29
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/onchain/accounts/intents/open-strategy.js +1 -0
- package/dist/cjs/onchain/accounts/intents/realize.js +2 -1
- package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +15 -0
- package/dist/cjs/onchain/index.js +6 -0
- package/dist/cjs/onchain/market/credit/creditOperationMarket.js +32 -0
- package/dist/cjs/onchain/market/credit/index.js +3 -0
- package/dist/cjs/onchain/market/index.js +5 -0
- package/dist/cjs/onchain/market/oracle/collateralPriceInUnderlying.js +27 -0
- package/dist/cjs/onchain/market/oracle/index.js +2 -0
- package/dist/cjs/onchain/positions/PositionsService.js +17 -2
- package/dist/cjs/onchain/positions/calcLiquidationPrice.js +14 -4
- package/dist/cjs/onchain/positions/index.js +1 -0
- package/dist/cjs/preview/preview/buildDelayedStrategyVerify.js +2 -2
- package/dist/cjs/preview/preview/previewExitOrRepayStrategyVerify.js +3 -4
- package/dist/cjs/preview/preview/previewOperation.js +3 -2
- package/dist/esm/dev/AccountOpener.js +1 -1
- package/dist/esm/dev/withdrawalUtils.js +1 -1
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -2
- package/dist/esm/onchain/accounts/intents/open-strategy.js +1 -0
- package/dist/esm/onchain/accounts/intents/realize.js +2 -1
- package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +14 -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/base/TokensMeta.js +3 -3
- package/dist/esm/onchain/core/createAddressProvider.js +1 -1
- package/dist/esm/onchain/index.js +4 -2
- 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/credit/CreditFacadeV310BaseContract.js +1 -1
- package/dist/esm/onchain/market/credit/creditOperationMarket.js +30 -0
- package/dist/esm/onchain/market/credit/index.js +2 -1
- package/dist/esm/onchain/market/index.js +3 -1
- package/dist/esm/onchain/market/oracle/collateralPriceInUnderlying.js +26 -0
- package/dist/esm/onchain/market/oracle/index.js +2 -1
- package/dist/esm/onchain/market/pool/PoolV310Contract.js +1 -1
- package/dist/esm/onchain/market/zapper/IETHZapperContract.js +1 -1
- package/dist/esm/onchain/market/zapper/ZapperContract.js +1 -1
- package/dist/esm/onchain/positions/PositionsService.js +18 -3
- package/dist/esm/onchain/positions/calcLiquidationPrice.js +14 -5
- package/dist/esm/onchain/positions/index.js +2 -2
- package/dist/esm/onchain/utils/viem/simulateWithPriceUpdates.js +1 -1
- package/dist/esm/preview/preview/buildDelayedStrategyVerify.js +2 -2
- package/dist/esm/preview/preview/previewExitOrRepayStrategyVerify.js +3 -4
- package/dist/esm/preview/preview/previewOperation.js +3 -2
- package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
- package/dist/esm/preview/trace/extractTransfers.js +1 -1
- package/dist/types/model/index.d.ts +2 -2
- package/dist/types/model/previews.d.ts +40 -41
- package/dist/types/onchain/accounts/intents/open-strategy.d.ts +12 -0
- package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +11 -0
- package/dist/types/onchain/accounts/intents/types.d.ts +12 -0
- package/dist/types/onchain/index.d.ts +4 -2
- package/dist/types/onchain/market/credit/creditOperationMarket.d.ts +23 -0
- package/dist/types/onchain/market/credit/index.d.ts +2 -1
- package/dist/types/onchain/market/index.d.ts +3 -1
- package/dist/types/onchain/market/oracle/collateralPriceInUnderlying.d.ts +19 -0
- package/dist/types/onchain/market/oracle/index.d.ts +2 -1
- package/dist/types/onchain/positions/PositionsService.d.ts +8 -0
- package/dist/types/onchain/positions/calcLiquidationPrice.d.ts +10 -1
- package/dist/types/onchain/positions/index.d.ts +2 -2
- package/package.json +1 -1
|
@@ -13,6 +13,17 @@ let vitest = require("vitest");
|
|
|
13
13
|
* from their inputs, so `result.calls` pins down which ops reached the
|
|
14
14
|
* assembler and in which order.
|
|
15
15
|
*/
|
|
16
|
+
/** Market configurator the mock market is governed by — the curator's address. */
|
|
17
|
+
const MOCK_MARKET_CONFIGURATOR = "0x00000000000000000000000000000000000c0f16";
|
|
18
|
+
/**
|
|
19
|
+
* Liquidation fees of the mock suite: a 3% premium (the manager reports its
|
|
20
|
+
* complement) on top of a 1.5% protocol fee, so the discount a screen shows is
|
|
21
|
+
* 450bps.
|
|
22
|
+
*/
|
|
23
|
+
const MOCK_LIQUIDATION_FEES = {
|
|
24
|
+
feeLiquidation: 150,
|
|
25
|
+
liquidationDiscount: 9700
|
|
26
|
+
};
|
|
16
27
|
/** Recognizable router call embedded in routed leg results. */
|
|
17
28
|
const MOCK_ROUTER_CALL = {
|
|
18
29
|
target: "0x9999999999999999999999999999999999999999",
|
|
@@ -206,6 +217,8 @@ function buildMockSdk(args) {
|
|
|
206
217
|
const expirationDate = args.expirationDate ?? 0;
|
|
207
218
|
const creditManagerSuite = {
|
|
208
219
|
name: "TestCreditManager",
|
|
220
|
+
marketConfigurator: { address: MOCK_MARKET_CONFIGURATOR },
|
|
221
|
+
liquidationFees: () => MOCK_LIQUIDATION_FEES,
|
|
209
222
|
creditManager: {
|
|
210
223
|
address: args.creditManager,
|
|
211
224
|
liquidationThresholds,
|
|
@@ -391,6 +404,8 @@ function payloadOf(slice) {
|
|
|
391
404
|
exports.CA_OP_CALLS = CA_OP_CALLS;
|
|
392
405
|
exports.MOCK_CLAIM_CALL = MOCK_CLAIM_CALL;
|
|
393
406
|
exports.MOCK_CLOSE_CALL = MOCK_CLOSE_CALL;
|
|
407
|
+
exports.MOCK_LIQUIDATION_FEES = MOCK_LIQUIDATION_FEES;
|
|
408
|
+
exports.MOCK_MARKET_CONFIGURATOR = MOCK_MARKET_CONFIGURATOR;
|
|
394
409
|
exports.MOCK_REQUEST_CALL = MOCK_REQUEST_CALL;
|
|
395
410
|
exports.MOCK_ROUTER_CALL = MOCK_ROUTER_CALL;
|
|
396
411
|
exports.MOCK_RWA_UNWRAP_CALL = MOCK_RWA_UNWRAP_CALL;
|
|
@@ -139,6 +139,7 @@ const require_onchain_market_credit_CreditManagerV310Contract = require("./marke
|
|
|
139
139
|
const require_onchain_market_strategyName = require("./market/strategyName.js");
|
|
140
140
|
const require_onchain_market_credit_collateralUtils = require("./market/credit/collateralUtils.js");
|
|
141
141
|
const require_onchain_market_credit_CreditSuite = require("./market/credit/CreditSuite.js");
|
|
142
|
+
const require_onchain_market_credit_creditOperationMarket = require("./market/credit/creditOperationMarket.js");
|
|
142
143
|
const require_onchain_market_credit_expectedBalanceDeltas = require("./market/credit/expectedBalanceDeltas.js");
|
|
143
144
|
const require_onchain_utils_viem_simulateMulticall = require("./utils/viem/simulateMulticall.js");
|
|
144
145
|
const require_onchain_utils_viem_simulateWithPriceUpdates = require("./utils/viem/simulateWithPriceUpdates.js");
|
|
@@ -146,6 +147,7 @@ const require_onchain_utils_viem_executeDelegatedMulticalls = require("./utils/v
|
|
|
146
147
|
const require_onchain_utils_viem_sendRawTx = require("./utils/viem/sendRawTx.js");
|
|
147
148
|
const require_onchain_utils_viem_watchBlocksAsync = require("./utils/viem/watchBlocksAsync.js");
|
|
148
149
|
require("./utils/viem/index.js");
|
|
150
|
+
const require_onchain_market_oracle_collateralPriceInUnderlying = require("./market/oracle/collateralPriceInUnderlying.js");
|
|
149
151
|
const require_onchain_market_pricefeeds_isUpdatablePriceFeed = require("./market/pricefeeds/isUpdatablePriceFeed.js");
|
|
150
152
|
const require_onchain_market_pricefeeds_PriceFeedRef = require("./market/pricefeeds/PriceFeedRef.js");
|
|
151
153
|
const require_onchain_market_pricefeeds_AbstractPriceFeed = require("./market/pricefeeds/AbstractPriceFeed.js");
|
|
@@ -519,6 +521,7 @@ exports.checkQuotaCount = require_onchain_validation_checks.checkQuotaCount;
|
|
|
519
521
|
exports.checkQuotaLimit = require_onchain_validation_checks.checkQuotaLimit;
|
|
520
522
|
exports.childLogger = require_onchain_utils_childLogger.childLogger;
|
|
521
523
|
exports.classifyCurveOperation = require_onchain_market_adapters_transferHelpers.classifyCurveOperation;
|
|
524
|
+
exports.collateralPriceInUnderlying = require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying;
|
|
522
525
|
exports.collectTraces = require_onchain_utils_trace.collectTraces;
|
|
523
526
|
exports.createAdapter = require_onchain_market_adapters_createAdapter.createAdapter;
|
|
524
527
|
exports.createAddressProvider = require_onchain_core_createAddressProvider.createAddressProvider;
|
|
@@ -529,6 +532,7 @@ exports.createRouter = require_onchain_router_createRouter.createRouter;
|
|
|
529
532
|
exports.createWithdrawalCompressor = require_onchain_accounts_withdrawal_compressor_createWithdrawalCompressor.createWithdrawalCompressor;
|
|
530
533
|
exports.createZapper = require_onchain_market_zapper_createZapper.createZapper;
|
|
531
534
|
exports.creditFacadeV310Abi = require_onchain_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
535
|
+
exports.creditOperationMarket = require_onchain_market_credit_creditOperationMarket.creditOperationMarket;
|
|
532
536
|
exports.curveAddLiquidityFromTransfers = require_onchain_market_adapters_transferHelpers.curveAddLiquidityFromTransfers;
|
|
533
537
|
exports.curveRemoveLiquidityFromTransfers = require_onchain_market_adapters_transferHelpers.curveRemoveLiquidityFromTransfers;
|
|
534
538
|
exports.decodeDelayedIntent = require_onchain_accounts_withdrawal_compressor_intent_codec.decodeDelayedIntent;
|
|
@@ -695,6 +699,7 @@ exports.shortHash = require_onchain_utils_formatter.shortHash;
|
|
|
695
699
|
exports.simulateCall = require_onchain_utils_viem_simulateCall.simulateCall;
|
|
696
700
|
exports.simulateMulticall = require_onchain_utils_viem_simulateMulticall.simulateMulticall;
|
|
697
701
|
exports.simulateWithPriceUpdates = require_onchain_utils_viem_simulateWithPriceUpdates.simulateWithPriceUpdates;
|
|
702
|
+
exports.soleNonUnderlyingCollateral = require_onchain_positions_calcLiquidationPrice.soleNonUnderlyingCollateral;
|
|
698
703
|
exports.strategyName = require_onchain_market_strategyName.strategyName;
|
|
699
704
|
exports.swapFromTransfers = require_onchain_market_adapters_transferHelpers.swapFromTransfers;
|
|
700
705
|
exports.toAddress = require_onchain_utils_toAddress.toAddress;
|
|
@@ -712,5 +717,6 @@ exports.toSignificant = require_onchain_utils_formatter.toSignificant;
|
|
|
712
717
|
exports.toToken = require_onchain_validation_token.toToken;
|
|
713
718
|
exports.toTokenAmount = require_onchain_validation_token.toTokenAmount;
|
|
714
719
|
exports.toWithdrawalStatus = require_onchain_accounts_withdrawal_compressor_types.toWithdrawalStatus;
|
|
720
|
+
exports.totalLiquidationDiscount = require_onchain_market_credit_creditOperationMarket.totalLiquidationDiscount;
|
|
715
721
|
exports.usdToNumber = require_onchain_market_math.usdToNumber;
|
|
716
722
|
exports.watchBlocksAsync = require_onchain_utils_viem_watchBlocksAsync.watchBlocksAsync;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_constants_math = require("../../constants/math.js");
|
|
3
|
+
//#region src/onchain/market/credit/creditOperationMarket.ts
|
|
4
|
+
/**
|
|
5
|
+
* What a liquidation takes off an account, in basis points: the premium the
|
|
6
|
+
* liquidator keeps plus the protocol's own fee, with the suite's expiration
|
|
7
|
+
* already resolved.
|
|
8
|
+
*
|
|
9
|
+
* Not {@link LiquidationFees.liquidationDiscount}, which is the complement of
|
|
10
|
+
* the premium alone (`100% - liquidationPremium`) and says what share of the
|
|
11
|
+
* seized collateral repays the debt.
|
|
12
|
+
**/
|
|
13
|
+
function totalLiquidationDiscount(suite) {
|
|
14
|
+
const { feeLiquidation, liquidationDiscount } = suite.liquidationFees();
|
|
15
|
+
return Number(require_onchain_constants_math.PERCENTAGE_FACTOR) - liquidationDiscount + feeLiquidation;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The market half of every credit operation result, read off the suite that
|
|
19
|
+
* serves it. Spread into a preview or a projection so the four fields are
|
|
20
|
+
* filled in one place and cannot drift apart between the two halves of the SDK.
|
|
21
|
+
**/
|
|
22
|
+
function creditOperationMarket(suite) {
|
|
23
|
+
return {
|
|
24
|
+
creditManager: suite.creditManager.address,
|
|
25
|
+
name: suite.name,
|
|
26
|
+
curator: suite.marketConfigurator.address,
|
|
27
|
+
liquidationDiscount: totalLiquidationDiscount(suite)
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
exports.creditOperationMarket = creditOperationMarket;
|
|
32
|
+
exports.totalLiquidationDiscount = totalLiquidationDiscount;
|
|
@@ -5,6 +5,7 @@ const require_onchain_market_credit_CreditFacadeV310Contract = require("./Credit
|
|
|
5
5
|
const require_onchain_market_credit_CreditManagerV310Contract = require("./CreditManagerV310Contract.js");
|
|
6
6
|
const require_onchain_market_credit_collateralUtils = require("./collateralUtils.js");
|
|
7
7
|
const require_onchain_market_credit_CreditSuite = require("./CreditSuite.js");
|
|
8
|
+
const require_onchain_market_credit_creditOperationMarket = require("./creditOperationMarket.js");
|
|
8
9
|
const require_onchain_market_credit_expectedBalanceDeltas = require("./expectedBalanceDeltas.js");
|
|
9
10
|
require("./types.js");
|
|
10
11
|
exports.CreditConfiguratorV310Contract = require_onchain_market_credit_CreditConfiguratorV310Contract.CreditConfiguratorV310Contract;
|
|
@@ -13,7 +14,9 @@ exports.CreditFacadeV310Contract = require_onchain_market_credit_CreditFacadeV31
|
|
|
13
14
|
exports.CreditManagerV310Contract = require_onchain_market_credit_CreditManagerV310Contract.CreditManagerV310Contract;
|
|
14
15
|
exports.CreditSuite = require_onchain_market_credit_CreditSuite.CreditSuite;
|
|
15
16
|
exports.creditFacadeV310Abi = require_onchain_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
17
|
+
exports.creditOperationMarket = require_onchain_market_credit_creditOperationMarket.creditOperationMarket;
|
|
16
18
|
exports.dominantCollateral = require_onchain_market_credit_collateralUtils.dominantCollateral;
|
|
17
19
|
exports.expectedBalanceDeltas = require_onchain_market_credit_expectedBalanceDeltas.expectedBalanceDeltas;
|
|
18
20
|
exports.isStrategyCollateral = require_onchain_market_credit_collateralUtils.isStrategyCollateral;
|
|
19
21
|
exports.pickStrategyTargetCollateral = require_onchain_market_credit_collateralUtils.pickStrategyTargetCollateral;
|
|
22
|
+
exports.totalLiquidationDiscount = require_onchain_market_credit_creditOperationMarket.totalLiquidationDiscount;
|
|
@@ -93,8 +93,10 @@ const require_onchain_market_credit_CreditManagerV310Contract = require("./credi
|
|
|
93
93
|
const require_onchain_market_strategyName = require("./strategyName.js");
|
|
94
94
|
const require_onchain_market_credit_collateralUtils = require("./credit/collateralUtils.js");
|
|
95
95
|
const require_onchain_market_credit_CreditSuite = require("./credit/CreditSuite.js");
|
|
96
|
+
const require_onchain_market_credit_creditOperationMarket = require("./credit/creditOperationMarket.js");
|
|
96
97
|
const require_onchain_market_credit_expectedBalanceDeltas = require("./credit/expectedBalanceDeltas.js");
|
|
97
98
|
require("./credit/index.js");
|
|
99
|
+
const require_onchain_market_oracle_collateralPriceInUnderlying = require("./oracle/collateralPriceInUnderlying.js");
|
|
98
100
|
const require_onchain_market_pricefeeds_isUpdatablePriceFeed = require("./pricefeeds/isUpdatablePriceFeed.js");
|
|
99
101
|
const require_onchain_market_pricefeeds_PriceFeedRef = require("./pricefeeds/PriceFeedRef.js");
|
|
100
102
|
const require_onchain_market_pricefeeds_AbstractPriceFeed = require("./pricefeeds/AbstractPriceFeed.js");
|
|
@@ -255,10 +257,12 @@ exports.calcQuotaRate = require_onchain_market_math.calcQuotaRate;
|
|
|
255
257
|
exports.calcUtilization = require_onchain_market_math.calcUtilization;
|
|
256
258
|
exports.calcUtilizationRaw = require_onchain_market_math.calcUtilizationRaw;
|
|
257
259
|
exports.classifyCurveOperation = require_onchain_market_adapters_transferHelpers.classifyCurveOperation;
|
|
260
|
+
exports.collateralPriceInUnderlying = require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying;
|
|
258
261
|
exports.createAdapter = require_onchain_market_adapters_createAdapter.createAdapter;
|
|
259
262
|
exports.createPriceOracle = require_onchain_market_oracle_createPriceOracle.createPriceOracle;
|
|
260
263
|
exports.createZapper = require_onchain_market_zapper_createZapper.createZapper;
|
|
261
264
|
exports.creditFacadeV310Abi = require_onchain_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
265
|
+
exports.creditOperationMarket = require_onchain_market_credit_creditOperationMarket.creditOperationMarket;
|
|
262
266
|
exports.curveAddLiquidityFromTransfers = require_onchain_market_adapters_transferHelpers.curveAddLiquidityFromTransfers;
|
|
263
267
|
exports.curveRemoveLiquidityFromTransfers = require_onchain_market_adapters_transferHelpers.curveRemoveLiquidityFromTransfers;
|
|
264
268
|
exports.dominantCollateral = require_onchain_market_credit_collateralUtils.dominantCollateral;
|
|
@@ -360,4 +364,5 @@ exports.rewardsFromTransfers = require_onchain_market_adapters_transferHelpers.r
|
|
|
360
364
|
exports.strategyName = require_onchain_market_strategyName.strategyName;
|
|
361
365
|
exports.swapFromTransfers = require_onchain_market_adapters_transferHelpers.swapFromTransfers;
|
|
362
366
|
exports.toNetTransfers = require_onchain_market_adapters_transferHelpers.toNetTransfers;
|
|
367
|
+
exports.totalLiquidationDiscount = require_onchain_market_credit_creditOperationMarket.totalLiquidationDiscount;
|
|
363
368
|
exports.usdToNumber = require_onchain_market_math.usdToNumber;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_constants_math = require("../../constants/math.js");
|
|
3
|
+
//#region src/onchain/market/oracle/collateralPriceInUnderlying.ts
|
|
4
|
+
/**
|
|
5
|
+
* What one unit of `collateral` costs in `underlying` right now, in the
|
|
6
|
+
* oracle's 8-decimal (`PRICE_DECIMALS`) fixed point — the scale and the
|
|
7
|
+
* denomination `calcLiquidationPrice` answers in, so the two figures are read
|
|
8
|
+
* as a pair.
|
|
9
|
+
*
|
|
10
|
+
* Both sides come from the oracle's **main** feeds: this is the price the
|
|
11
|
+
* market quotes, not the conservative one a hand-over is weighed at.
|
|
12
|
+
*
|
|
13
|
+
* `null` when the oracle cannot answer for either token, or prices the
|
|
14
|
+
* underlying at zero — a screen shows a gap rather than a number derived from
|
|
15
|
+
* a missing feed.
|
|
16
|
+
**/
|
|
17
|
+
function collateralPriceInUnderlying(oracle, collateral, underlying) {
|
|
18
|
+
try {
|
|
19
|
+
const underlyingPrice = oracle.mainPrice(underlying);
|
|
20
|
+
if (underlyingPrice <= 0n) return null;
|
|
21
|
+
return oracle.mainPrice(collateral) * require_onchain_constants_math.PRICE_DECIMALS / underlyingPrice;
|
|
22
|
+
} catch {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
exports.collateralPriceInUnderlying = collateralPriceInUnderlying;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_market_oracle_collateralPriceInUnderlying = require("./collateralPriceInUnderlying.js");
|
|
2
3
|
const require_onchain_market_oracle_PriceOracleV310Contract = require("./PriceOracleV310Contract.js");
|
|
3
4
|
const require_onchain_market_oracle_createPriceOracle = require("./createPriceOracle.js");
|
|
4
5
|
require("./types.js");
|
|
5
6
|
exports.PriceOracleV310Contract = require_onchain_market_oracle_PriceOracleV310Contract.PriceOracleV310Contract;
|
|
7
|
+
exports.collateralPriceInUnderlying = require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying;
|
|
6
8
|
exports.createPriceOracle = require_onchain_market_oracle_createPriceOracle.createPriceOracle;
|
|
@@ -8,9 +8,11 @@ const require_onchain_base_SDKConstruct = require("../base/SDKConstruct.js");
|
|
|
8
8
|
require("../base/index.js");
|
|
9
9
|
const require_onchain_market_math = require("../market/math.js");
|
|
10
10
|
const require_onchain_market_strategyName = require("../market/strategyName.js");
|
|
11
|
+
const require_onchain_market_credit_creditOperationMarket = require("../market/credit/creditOperationMarket.js");
|
|
11
12
|
const require_model_filters = require("../../model/filters.js");
|
|
12
13
|
const require_model_positions = require("../../model/positions.js");
|
|
13
14
|
require("../../model/index.js");
|
|
15
|
+
const require_onchain_market_oracle_collateralPriceInUnderlying = require("../market/oracle/collateralPriceInUnderlying.js");
|
|
14
16
|
const require_onchain_market_pool_math = require("../market/pool/math.js");
|
|
15
17
|
const require_onchain_positions_calcBorrowRate = require("./calcBorrowRate.js");
|
|
16
18
|
const require_onchain_positions_calcHealthFactor = require("./calcHealthFactor.js");
|
|
@@ -164,6 +166,20 @@ var PositionsService = class extends require_onchain_base_SDKConstruct.SDKConstr
|
|
|
164
166
|
});
|
|
165
167
|
}
|
|
166
168
|
/**
|
|
169
|
+
* What the collateral {@link liquidationPrice} is quoted for costs in the
|
|
170
|
+
* market underlying right now, in the same `PRICE_DECIMALS` fixed point —
|
|
171
|
+
* the pair a form shows beside the liquidation price. `null` under exactly
|
|
172
|
+
* the conditions that leave the liquidation price `null`, plus an oracle
|
|
173
|
+
* that cannot answer for either side.
|
|
174
|
+
**/
|
|
175
|
+
currentPrice(snapshot) {
|
|
176
|
+
const market = this.sdk.marketRegister.findByCreditManager(snapshot.creditManager);
|
|
177
|
+
const underlying = market.pool.underlying;
|
|
178
|
+
const collateral = require_onchain_positions_calcLiquidationPrice.soleNonUnderlyingCollateral(snapshot, underlying);
|
|
179
|
+
if (!collateral) return null;
|
|
180
|
+
return require_onchain_market_oracle_collateralPriceInUnderlying.collateralPriceInUnderlying(market.priceOracle, collateral, underlying);
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
167
183
|
* Every derived number of an account state at once — the whole
|
|
168
184
|
* {@link AccountMetrics} half of a projection.
|
|
169
185
|
*
|
|
@@ -229,8 +245,7 @@ var PositionsService = class extends require_onchain_base_SDKConstruct.SDKConstr
|
|
|
229
245
|
const market = this.sdk.marketRegister.findByCreditManager(creditManager);
|
|
230
246
|
const { priceOracle } = market;
|
|
231
247
|
return {
|
|
232
|
-
creditManager,
|
|
233
|
-
name: this.sdk.marketRegister.findCreditManager(creditManager).name,
|
|
248
|
+
...require_onchain_market_credit_creditOperationMarket.creditOperationMarket(this.sdk.marketRegister.findCreditManager(creditManager)),
|
|
234
249
|
totalValue: market.toUnderlyingAmount(totalValue),
|
|
235
250
|
totalDebt: market.toUnderlyingAmount(totalDebt),
|
|
236
251
|
netValue: market.toUnderlyingAmount(totalValue - totalDebt),
|
|
@@ -11,13 +11,23 @@ let viem = require("viem");
|
|
|
11
11
|
* holds exactly one non-dust non-underlying asset; otherwise `null`.
|
|
12
12
|
**/
|
|
13
13
|
function calcLiquidationPrice(props) {
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
if (targets.length !== 1) return null;
|
|
14
|
+
const targetToken = soleNonUnderlyingCollateral(props.snapshot, props.underlying);
|
|
15
|
+
if (!targetToken) return null;
|
|
17
16
|
return require_onchain_positions_calcLiquidationPriceForTarget.calcLiquidationPriceForTarget({
|
|
18
17
|
...props,
|
|
19
|
-
targetToken
|
|
18
|
+
targetToken
|
|
20
19
|
});
|
|
21
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* The one collateral a liquidation price — and the current price beside it —
|
|
23
|
+
* can be quoted for: the account's single non-dust, non-underlying asset.
|
|
24
|
+
* `null` when it holds none or several, which is the case neither figure
|
|
25
|
+
* exists for.
|
|
26
|
+
**/
|
|
27
|
+
function soleNonUnderlyingCollateral(snapshot, underlying) {
|
|
28
|
+
const targets = snapshot.assets.filter((a) => a.balance > 10n && !(0, viem.isAddressEqual)(a.token, underlying));
|
|
29
|
+
return targets.length === 1 ? targets[0].token : null;
|
|
30
|
+
}
|
|
22
31
|
//#endregion
|
|
23
32
|
exports.calcLiquidationPrice = calcLiquidationPrice;
|
|
33
|
+
exports.soleNonUnderlyingCollateral = soleNonUnderlyingCollateral;
|
|
@@ -15,3 +15,4 @@ exports.calcHealthFactor = require_onchain_positions_calcHealthFactor.calcHealth
|
|
|
15
15
|
exports.calcLiquidationPrice = require_onchain_positions_calcLiquidationPrice.calcLiquidationPrice;
|
|
16
16
|
exports.calcLiquidationPriceForTarget = require_onchain_positions_calcLiquidationPriceForTarget.calcLiquidationPriceForTarget;
|
|
17
17
|
exports.calcTimeToLiquidationMs = require_onchain_positions_calcTimeToLiquidationMs.calcTimeToLiquidationMs;
|
|
18
|
+
exports.soleNonUnderlyingCollateral = require_onchain_positions_calcLiquidationPrice.soleNonUnderlyingCollateral;
|
|
@@ -2,6 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
2
2
|
const require_onchain_utils_AssetsMap = require("../../onchain/utils/AssetsMap.js");
|
|
3
3
|
const require_onchain_utils_bigint_math = require("../../onchain/utils/bigint-math.js");
|
|
4
4
|
const require_onchain_constants_math = require("../../onchain/constants/math.js");
|
|
5
|
+
const require_onchain_market_credit_creditOperationMarket = require("../../onchain/market/credit/creditOperationMarket.js");
|
|
5
6
|
const require_model_previews = require("../../model/previews.js");
|
|
6
7
|
require("../../model/index.js");
|
|
7
8
|
require("../../onchain/index.js");
|
|
@@ -166,8 +167,7 @@ function buildClosePreview(post, converter, receivedToken, sdk) {
|
|
|
166
167
|
return {
|
|
167
168
|
operation: "CloseCreditAccount",
|
|
168
169
|
permanent: false,
|
|
169
|
-
|
|
170
|
-
name: sdk.marketRegister.findCreditManager(post.creditManager).name,
|
|
170
|
+
...require_onchain_market_credit_creditOperationMarket.creditOperationMarket(sdk.marketRegister.findCreditManager(post.creditManager)),
|
|
171
171
|
creditAccount: post.creditAccount,
|
|
172
172
|
receivedAmount: oracle.toTokenAmount(receivedToken, require_onchain_utils_bigint_math.BigIntMath.max(totalValue - post.totalDebt, 0n)),
|
|
173
173
|
error: converter.error
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_constants_address_provider = require("../../onchain/constants/address-provider.js");
|
|
3
3
|
require("../../onchain/constants/math.js");
|
|
4
|
+
const require_onchain_market_credit_creditOperationMarket = require("../../onchain/market/credit/creditOperationMarket.js");
|
|
4
5
|
require("../../onchain/index.js");
|
|
5
6
|
const require_preview_preview_detectCloseOrRepay = require("./detectCloseOrRepay.js");
|
|
6
7
|
const require_preview_preview_replayMulticall = require("./replayMulticall.js");
|
|
@@ -32,8 +33,7 @@ function previewCloseCreditAccount(input, operation, permanent, replay) {
|
|
|
32
33
|
return {
|
|
33
34
|
operation: "CloseCreditAccount",
|
|
34
35
|
permanent,
|
|
35
|
-
|
|
36
|
-
name: sdk.marketRegister.findCreditManager(operation.creditManager).name,
|
|
36
|
+
...require_onchain_market_credit_creditOperationMarket.creditOperationMarket(sdk.marketRegister.findCreditManager(operation.creditManager)),
|
|
37
37
|
creditAccount: operation.creditAccount,
|
|
38
38
|
receivedAmount: market.priceOracle.toTokenAmount(receivedToken, after.collateralWithdrawn.getOrZero(receivedToken)),
|
|
39
39
|
error
|
|
@@ -53,8 +53,7 @@ function previewRepayCreditAccount(input, operation, permanent, replay) {
|
|
|
53
53
|
return {
|
|
54
54
|
operation: "RepayCreditAccount",
|
|
55
55
|
permanent,
|
|
56
|
-
|
|
57
|
-
name: sdk.marketRegister.findCreditManager(operation.creditManager).name,
|
|
56
|
+
...require_onchain_market_credit_creditOperationMarket.creditOperationMarket(sdk.marketRegister.findCreditManager(operation.creditManager)),
|
|
58
57
|
creditAccount: operation.creditAccount,
|
|
59
58
|
collateralAdded: collateralAdded.map((a) => market.priceOracle.toTokenAmount(a.token, a.balance)),
|
|
60
59
|
debtRepaid: market.toUnderlyingAmount(before.totalDebt - after.account.totalDebt),
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_market_credit_creditOperationMarket = require("../../onchain/market/credit/creditOperationMarket.js");
|
|
3
|
+
require("../../onchain/index.js");
|
|
2
4
|
const require_preview_parse_parseOperationCalldata = require("../parse/parseOperationCalldata.js");
|
|
3
5
|
const require_preview_parse_types = require("../parse/types.js");
|
|
4
6
|
require("../parse/index.js");
|
|
@@ -67,8 +69,7 @@ async function previewMulticallOperation(input, operation, options) {
|
|
|
67
69
|
return {
|
|
68
70
|
operation: "DelayedCreditAccountOperation",
|
|
69
71
|
creditAccount: operation.creditAccount,
|
|
70
|
-
|
|
71
|
-
name: sdk.marketRegister.findCreditManager(operation.creditManager).name,
|
|
72
|
+
...require_onchain_market_credit_creditOperationMarket.creditOperationMarket(sdk.marketRegister.findCreditManager(operation.creditManager)),
|
|
72
73
|
intent: delayed.intent,
|
|
73
74
|
instantPreview,
|
|
74
75
|
delayedPreview: require_preview_preview_buildDelayedStrategyVerify.buildDelayedStrategyVerify(after.account, before, delayed, convert, receivedToken, sdk)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ierc20Abi } from "../abi/iERC20.js";
|
|
2
1
|
import { iCreditFacadeV310Abi } from "../abi/310/generated.js";
|
|
2
|
+
import { ierc20Abi } from "../abi/iERC20.js";
|
|
3
3
|
import { AddressMap } from "../onchain/utils/AddressMap.js";
|
|
4
4
|
import { AddressSet } from "../onchain/utils/AddressSet.js";
|
|
5
5
|
import { AssetsMap } from "../onchain/utils/AssetsMap.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { iWithdrawalCompressorV313Abi } from "../abi/IWithdrawalCompressorV313.js";
|
|
2
1
|
import { getNetworkType } from "../onchain/chain/chains.js";
|
|
3
2
|
import { getWithdrawalCompressorAddress } from "../onchain/accounts/withdrawal-compressor/addresses.js";
|
|
3
|
+
import { iWithdrawalCompressorV313Abi } from "../abi/IWithdrawalCompressorV313.js";
|
|
4
4
|
import "../onchain/index.js";
|
|
5
5
|
import { iMidasDataFeedAbi, iMidasRedemptionVaultAbi, midasGatewayAbi, midasRedeemerAbi, midasRedemptionVaultPhantomTokenAbi, securitizeRedeemerAbi, securitizeRedemptionGatewayAbi, securitizeRedemptionPhantomTokenAbi } from "./withdrawalAbi.js";
|
|
6
6
|
import { erc20Abi, hexToString, parseAbi, parseEther } from "viem";
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
2
|
-
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
3
1
|
import { AP_REWARDS_COMPRESSOR } from "../constants/address-provider.js";
|
|
4
2
|
import { ADDRESS_0X0 } from "../constants/addresses.js";
|
|
5
3
|
import { MAX_UINT256 } from "../constants/math.js";
|
|
@@ -10,6 +8,8 @@ import "../base/index.js";
|
|
|
10
8
|
import { AccountBotsService } from "./bots/AccountBotsService.js";
|
|
11
9
|
import "./bots/index.js";
|
|
12
10
|
import { rewardsCompressorAbi } from "../../abi/compressors/rewardsCompressor.js";
|
|
11
|
+
import { iBaseRewardPoolAbi } from "../../abi/iBaseRewardPool.js";
|
|
12
|
+
import { ierc4626AdapterAbi } from "../../abi/ierc4626Adapter.js";
|
|
13
13
|
import { expectedBalanceDeltas } from "../market/credit/expectedBalanceDeltas.js";
|
|
14
14
|
import "../market/index.js";
|
|
15
15
|
import { CreditAccountCompressor } from "./credit-account-compressor/CreditAccountCompressor.js";
|
|
@@ -13,6 +13,17 @@ import { vi } from "vitest";
|
|
|
13
13
|
* from their inputs, so `result.calls` pins down which ops reached the
|
|
14
14
|
* assembler and in which order.
|
|
15
15
|
*/
|
|
16
|
+
/** Market configurator the mock market is governed by — the curator's address. */
|
|
17
|
+
const MOCK_MARKET_CONFIGURATOR = "0x00000000000000000000000000000000000c0f16";
|
|
18
|
+
/**
|
|
19
|
+
* Liquidation fees of the mock suite: a 3% premium (the manager reports its
|
|
20
|
+
* complement) on top of a 1.5% protocol fee, so the discount a screen shows is
|
|
21
|
+
* 450bps.
|
|
22
|
+
*/
|
|
23
|
+
const MOCK_LIQUIDATION_FEES = {
|
|
24
|
+
feeLiquidation: 150,
|
|
25
|
+
liquidationDiscount: 9700
|
|
26
|
+
};
|
|
16
27
|
/** Recognizable router call embedded in routed leg results. */
|
|
17
28
|
const MOCK_ROUTER_CALL = {
|
|
18
29
|
target: "0x9999999999999999999999999999999999999999",
|
|
@@ -206,6 +217,8 @@ function buildMockSdk(args) {
|
|
|
206
217
|
const expirationDate = args.expirationDate ?? 0;
|
|
207
218
|
const creditManagerSuite = {
|
|
208
219
|
name: "TestCreditManager",
|
|
220
|
+
marketConfigurator: { address: MOCK_MARKET_CONFIGURATOR },
|
|
221
|
+
liquidationFees: () => MOCK_LIQUIDATION_FEES,
|
|
209
222
|
creditManager: {
|
|
210
223
|
address: args.creditManager,
|
|
211
224
|
liquidationThresholds,
|
|
@@ -388,4 +401,4 @@ function payloadOf(slice) {
|
|
|
388
401
|
};
|
|
389
402
|
}
|
|
390
403
|
//#endregion
|
|
391
|
-
export { CA_OP_CALLS, MOCK_CLAIM_CALL, MOCK_CLOSE_CALL, MOCK_REQUEST_CALL, MOCK_ROUTER_CALL, MOCK_RWA_UNWRAP_CALL, MOCK_RWA_WRAP_CALL, buildMockSdk };
|
|
404
|
+
export { CA_OP_CALLS, MOCK_CLAIM_CALL, MOCK_CLOSE_CALL, MOCK_LIQUIDATION_FEES, MOCK_MARKET_CONFIGURATOR, MOCK_REQUEST_CALL, MOCK_ROUTER_CALL, MOCK_RWA_UNWRAP_CALL, MOCK_RWA_WRAP_CALL, buildMockSdk };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { iLiquidationCompressorV313Abi } from "../../../abi/ILiquidationCompressorV313.js";
|
|
2
1
|
import { AddressSet } from "../../utils/AddressSet.js";
|
|
3
2
|
import { bytes32ToString } from "../../utils/bytes32ToString.js";
|
|
4
3
|
import { ADDRESS_0X0 } from "../../constants/addresses.js";
|
|
@@ -20,6 +19,7 @@ import { SecuritizeLiquidatorContract } from "../../market/rwa/securitize/Securi
|
|
|
20
19
|
import "../../market/rwa/securitize/index.js";
|
|
21
20
|
import "../../market/index.js";
|
|
22
21
|
import { LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS } from "./constants.js";
|
|
22
|
+
import { iLiquidationCompressorV313Abi } from "../../../abi/ILiquidationCompressorV313.js";
|
|
23
23
|
//#region src/onchain/accounts/liquidations/LiquidationsService.ts
|
|
24
24
|
/**
|
|
25
25
|
* Service for discovering liquidatable credit accounts and previewing manual
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { iRedemptionLoggerV310Abi } from "../../../abi/iRedemptionLoggerV310.js";
|
|
2
1
|
import { BaseContract } from "../../base/BaseContract.js";
|
|
3
2
|
import "../../base/index.js";
|
|
4
3
|
import { decodeDelayedIntent } from "./intent-codec.js";
|
|
4
|
+
import { iRedemptionLoggerV310Abi } from "../../../abi/iRedemptionLoggerV310.js";
|
|
5
5
|
import { InvalidDelayedIntentError } from "./errors.js";
|
|
6
6
|
//#region src/onchain/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.ts
|
|
7
7
|
const abi = iRedemptionLoggerV310Abi;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { iWithdrawalCompressorV310Abi } from "../../../abi/IWithdrawalCompressorV310.js";
|
|
2
1
|
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
2
|
+
import { iWithdrawalCompressorV310Abi } from "../../../abi/IWithdrawalCompressorV310.js";
|
|
3
3
|
//#region src/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.ts
|
|
4
4
|
const abi = iWithdrawalCompressorV310Abi;
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { iWithdrawalCompressorV311Abi } from "../../../abi/IWithdrawalCompressorV311.js";
|
|
2
1
|
import { AbstractWithdrawalCompressorContract } from "./AbstractWithdrawalCompressorContract.js";
|
|
2
|
+
import { iWithdrawalCompressorV311Abi } from "../../../abi/IWithdrawalCompressorV311.js";
|
|
3
3
|
//#region src/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.ts
|
|
4
4
|
const abi = iWithdrawalCompressorV311Abi;
|
|
5
5
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { iWithdrawalCompressorV313Abi } from "../../../abi/IWithdrawalCompressorV313.js";
|
|
2
1
|
import { encodeDelayedIntent } from "./intent-codec.js";
|
|
3
2
|
import { AbstractWithdrawalCompressorContract, iCreditAccountAbi, toClaimableWithdrawal, toPendingWithdrawal, toRequestableWithdrawal } from "./AbstractWithdrawalCompressorContract.js";
|
|
3
|
+
import { iWithdrawalCompressorV313Abi } from "../../../abi/IWithdrawalCompressorV313.js";
|
|
4
4
|
import { toWithdrawalStatus } from "./types.js";
|
|
5
5
|
//#region src/onchain/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.ts
|
|
6
6
|
const abi = iWithdrawalCompressorV313Abi;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { iExpirableAbi } from "../../abi/iExpirable.js";
|
|
2
|
-
import { iStateSerializerAbi } from "../../abi/iStateSerializer.js";
|
|
3
|
-
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
4
1
|
import { AddressMap } from "../utils/AddressMap.js";
|
|
5
2
|
import { AddressSet } from "../utils/AddressSet.js";
|
|
6
3
|
import { bytes32ToString } from "../utils/bytes32ToString.js";
|
|
7
4
|
import { getAssetType } from "../chain/chains.js";
|
|
8
5
|
import { formatBN } from "../utils/formatter.js";
|
|
9
6
|
import "../utils/index.js";
|
|
7
|
+
import { iExpirableAbi } from "../../abi/iExpirable.js";
|
|
8
|
+
import { iStateSerializerAbi } from "../../abi/iStateSerializer.js";
|
|
9
|
+
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
10
10
|
import { SdkRWADataNotLoadedError } from "../core/errors.js";
|
|
11
11
|
import { executeMulticallBatches } from "../utils/viem/executeMulticallBatches.js";
|
|
12
12
|
//#region src/onchain/base/TokensMeta.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
2
1
|
import { AP_MARKET_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR } from "../constants/address-provider.js";
|
|
3
2
|
import { isV310 } from "../constants/versions.js";
|
|
4
3
|
import "../constants/index.js";
|
|
5
4
|
import { hexEq } from "../utils/hex.js";
|
|
5
|
+
import { iVersionAbi } from "../../abi/iVersion.js";
|
|
6
6
|
import { AddressProviderV310Contract } from "./AddressProviderV310Contract.js";
|
|
7
7
|
//#region src/onchain/core/createAddressProvider.ts
|
|
8
8
|
const OVERRIDE_ADDRESSES = { Mainnet: {
|
|
@@ -138,6 +138,7 @@ import { CreditManagerV310Contract } from "./market/credit/CreditManagerV310Cont
|
|
|
138
138
|
import { strategyName } from "./market/strategyName.js";
|
|
139
139
|
import { dominantCollateral, isStrategyCollateral, pickStrategyTargetCollateral } from "./market/credit/collateralUtils.js";
|
|
140
140
|
import { CreditSuite } from "./market/credit/CreditSuite.js";
|
|
141
|
+
import { creditOperationMarket, totalLiquidationDiscount } from "./market/credit/creditOperationMarket.js";
|
|
141
142
|
import { expectedBalanceDeltas } from "./market/credit/expectedBalanceDeltas.js";
|
|
142
143
|
import { simulateMulticall } from "./utils/viem/simulateMulticall.js";
|
|
143
144
|
import { SimulateWithPriceUpdatesError, getSimulateWithPriceUpdatesError, simulateWithPriceUpdates } from "./utils/viem/simulateWithPriceUpdates.js";
|
|
@@ -145,6 +146,7 @@ import { executeDelegatedMulticalls } from "./utils/viem/executeDelegatedMultica
|
|
|
145
146
|
import { estimateRawTxGas, sendRawTx } from "./utils/viem/sendRawTx.js";
|
|
146
147
|
import { watchBlocksAsync } from "./utils/viem/watchBlocksAsync.js";
|
|
147
148
|
import "./utils/viem/index.js";
|
|
149
|
+
import { collateralPriceInUnderlying } from "./market/oracle/collateralPriceInUnderlying.js";
|
|
148
150
|
import { isUpdatablePriceFeed } from "./market/pricefeeds/isUpdatablePriceFeed.js";
|
|
149
151
|
import { PriceFeedRef } from "./market/pricefeeds/PriceFeedRef.js";
|
|
150
152
|
import { AbstractPriceFeedContract, PartialPriceFeedInitError } from "./market/pricefeeds/AbstractPriceFeed.js";
|
|
@@ -230,7 +232,7 @@ import "./pools/index.js";
|
|
|
230
232
|
import { calcBorrowRate } from "./positions/calcBorrowRate.js";
|
|
231
233
|
import { calcHealthFactor } from "./positions/calcHealthFactor.js";
|
|
232
234
|
import { calcLiquidationPriceForTarget } from "./positions/calcLiquidationPriceForTarget.js";
|
|
233
|
-
import { calcLiquidationPrice } from "./positions/calcLiquidationPrice.js";
|
|
235
|
+
import { calcLiquidationPrice, soleNonUnderlyingCollateral } from "./positions/calcLiquidationPrice.js";
|
|
234
236
|
import { calcTimeToLiquidationMs } from "./positions/calcTimeToLiquidationMs.js";
|
|
235
237
|
import { MultichainPositionsService } from "./positions/MultichainPositionsService.js";
|
|
236
238
|
import { accountSnapshotFromCreditAccountData } from "./positions/types.js";
|
|
@@ -245,4 +247,4 @@ import { MultichainSDK } from "./MultichainSDK.js";
|
|
|
245
247
|
import { attachOptionsSchema, onchainSDKOptionsSchema } from "./options.js";
|
|
246
248
|
import "./types/index.js";
|
|
247
249
|
import "./validation/index.js";
|
|
248
|
-
export { ADDRESS_0X0, ADDRESS_PROVIDER_V310, AP_ACCOUNT_FACTORY, AP_ACL, AP_BOT_LIST, AP_BYTECODE_REPOSITORY, AP_CONTRACTS_REGISTER, AP_CONTROLLER_TIMELOCK, AP_CREDIT_ACCOUNT_COMPRESSOR, AP_CREDIT_SUITE_COMPRESSOR, AP_DATA_COMPRESSOR, AP_DELEVERAGE_BOT_HV, AP_DELEVERAGE_BOT_LV, AP_DELEVERAGE_BOT_PEGGED, AP_GAUGE_COMPRESSOR, AP_GEAR_STAKING, AP_GEAR_TOKEN, AP_INFLATION_ATTACK_BLOCKER, AP_INSOLVENCY_CHECKER, AP_MARKET_COMPRESSOR, AP_MARKET_CONFIGURATOR, AP_PARTIAL_LIQUIDATION_BOT, AP_PERIPHERY_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR, AP_PRICE_FEED_STORE, AP_PRICE_ORACLE, AP_REDEMPTION_LOGGER, AP_REWARDS_COMPRESSOR, AP_ROUTER, AP_RWA_COMPRESSOR, AP_TOKEN_COMPRESSOR, AP_TREASURY, AP_WETH_GATEWAY, AP_WETH_TOKEN, AP_ZAPPER_REGISTER, AP_ZERO_PRICE_FEED, AbstractAdapterContract, AbstractLPPriceFeedContract, AbstractPriceFeedContract, AbstractWithdrawalCompressorContract, AccountBotsService, AccountMigratorAdapterContract, AdapterType, AddressMap, AddressProviderV310Contract, AddressSet, AssetsMap, BLOCKS_PER_WEEK_BY_NETWORK, BalancerStablePriceFeedContract, BalancerV3PoolStatus, BalancerV3RouterAdapterContract, BalancerV3WrapperAdapterContract, BalancerWeightedPriceFeedContract, BaseContract, BasePlugin, BigIntMath, BotPermissions, BoundedPriceFeedContract, CamelotV3AdapterContract, ChainContractsRegister, ChainNotConfiguredError, CompositePriceFeedContract, Construct, ContractParseError, ConvexV1BaseRewardPoolAdapterContract, ConvexV1BoosterAdapterContract, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, CreditConfiguratorV310Contract, CreditFacadeV310BaseContract, CreditFacadeV310Contract, CreditManagerV310Contract, CreditSuite, Curve2AssetsAdapterContract, Curve3AssetsAdapterContract, Curve4AssetsAdapterContract, CurveCryptoPriceFeedContract, CurveStablePriceFeedContract, CurveUSDPriceFeedContract, CurveV1AdapterStETHContract, CurveV1StableNGAdapterContract, DEFAULT_QUOTA_BUFFER_BPS, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, DUST_THRESHOLD, DaiUsdsAdapterContract, ERC4626AdapterContract, ERC4626ReferralAdapterContract, EXECUTE_BYTES_SELECTOR, Erc4626PriceFeedContract, ExternalPriceFeedContract, FluidDexAdapterContract, GaugeContract, IERC20ZapperContract, IETHZapperContract, InfinifiGatewayAdapterContract, InfinifiUnwindingGatewayAdapterContract, IntentPreviewError, InvalidDelayedIntentError, KelpLRTDepositPoolAdapterContract, KelpLRTWithdrawalManagerAdapterContract, LEVERAGE_DECIMALS, LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS, LidoV1AdapterContract, LinearInterestRateModelContract, LiquidationsService, MAX_INT, MAX_LEVERAGE_BUFFER_BPS, MAX_UINT16, MAX_UINT256, MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_INT96, MIN_SAFE_HEALTH_FACTOR_FORM, MULTICALL_ADDRESS, MarketRegister, MarketSuite, MellowClaimerAdapterContract, MellowDVVAdapterContract, MellowERC4626VaultAdapterContract, MellowLRTPriceFeedContract, MellowWrapperAdapterContract, MidasGatewayAdapterContract, MidasIssuanceVaultAdapterContract, MidasLiquidatorContract, MidasRedemptionVaultAdapterContract, MissingSerializedParamsError, MultichainConstruct, MultichainLiquidationsService, MultichainOpportunitiesService, MultichainPositionsService, MultichainSDK, NATIVE_ADDRESS, NON_STRATEGY_PHANTOM_TOKEN_TYPES, NOT_DEPLOYED, NO_VERSION, NetworkType, OnchainSDK, OpportunitiesService, PARTIAL_LIQUIDATION_BUFFER_BPS, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PERIPHERY_CONTRACTS, PHANTOM_TOKEN_CONTRACT_TYPES, PHANTOM_TOKEN_MIDAS_REDEMPTION, PHANTOM_TOKEN_SECURITIZE_REDEMPTION, PRICE_DECIMALS, PRICE_DECIMALS_POW, PartialPriceFeedInitError, PendlePairStatus, PendleRouterAdapterContract, PendleTWAPPTPriceFeed, PendleTokenType, PeripheryCompressorV310Contract, PluginStateVersionError, PoolService, PoolSuite, PoolV310Contract, PositionsService, PriceFeedRef, PriceFeedRegister, PriceOracleV310Contract, PythPriceFeed, RAMP_DURATION_BY_NETWORK, RAY, RAY_DECIMALS_POW, RWARegistry, RWA_FACTORY_SECURITIZE, RWA_FACTORY_TYPES, RWA_LIQUIDATOR_MIDAS, RWA_LIQUIDATOR_SECURITIZE, RWA_ON_DEMAND_LP_MONOPOLIZED, RWA_UNDERLYING_DEFAULT, RWA_UNDERLYING_ON_DEMAND, RedemptionLoggerV310Contract, RedstonePriceFeedContract, RouterV310Contract, SDKConstruct, SECONDS_PER_YEAR, SECURITIZE_REGISTER_VAULT_TYPES, SLIPPAGE_DECIMALS, STATE_VERSION, SUPPORTED_NETWORKS, SdkAlreadyAttachedError, SdkChainMismatchError, SdkMissingChainStateError, SdkNotAttachedError, SdkRWADataNotLoadedError, SdkStateVersionMismatchError, SdkSyncFailedError, SecuritizeLiquidatorContract, SecuritizeOnRampAdapterContract, SecuritizeRWAFactory, SecuritizeRedemptionGatewayAdapterContract, SimulateWithPriceUpdatesError, SimulationError, StakingRewardsAdapterContract, TokensMeta, TraderJoePoolVersion, TraderJoeRouterAdapterContract, TypedObjectUtils, UniswapV2AdapterContract, UniswapV3AdapterContract, UniswapV4AdapterContract, UnsupportedZapperFunctionError, UpshiftVaultAdapterContract, VERSION_RANGE_310, VelodromeV2RouterAdapterContract, VotingContractStatus, WAD, WAD_DECIMALS_POW, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, WstETHPriceFeedContract, WstETHV1AdapterContract, YearnPriceFeedContract, ZapperContract, ZeroPriceFeedContract, ZodAddress, ZodBigInt, ZodHex, accountSnapshotFromCreditAccountData, adapterActionAbi, adapterActionSelectors, adapterActionSignatures, adapterConstructorAbi, allTransfersAsTokenAmounts, amountOf, assetsMap, attachOptionsSchema, borrowable, botPermissionsToString, bpsToRay, bytes32ToString, calcBorrowApy, calcBorrowRate, calcDefaultQuota, calcEffectiveBorrowApy, calcHealthFactor, calcLiquidationPrice, calcLiquidationPriceForTarget, calcMaxLeverage, calcNetStrategyApy, calcPositionLeverage, calcQuotaRate, calcQuotaUpdate, calcRecommendedQuota, calcTimeToLiquidationMs, calcUtilization, calcUtilizationRaw, chains, checkBorrowLimit, checkCollateralised, checkCreditManagerPaused, checkDebtInBand, checkForbiddenToken, checkFunding, checkLeverageAtLeastOne, checkMarketExpired, checkPoolPaused, checkPoolPayout, checkPoolSunset, checkPreviewError, checkQuotaCount, checkQuotaLimit, childLogger, classifyCurveOperation, collectTraces, createAdapter, createAddressProvider, createPriceOracle, createRawTx, createRedemptionLogger, createRouter, createWithdrawalCompressor, createZapper, abi as creditFacadeV310Abi, curveAddLiquidityFromTransfers, curveRemoveLiquidityFromTransfers, decodeDelayedIntent, detectNetwork, dominantCollateral, encodeDelayedIntent, erc4626ReferralAdapterAbi, estimateRawTxGas, etherscanApiUrl, etherscanUrl, executeDelegatedMulticalls, executeMulticallBatches, expectedBalanceDeltas, fetchCreditAccountSlice, fetchRedstonePayloads, filterDust, filterDustUSD, findCallTo, findCallWithInput, findCuratorMarketConfigurator, findExecuteBytes, fmtBinaryMask, fnSigToName, formatBN, formatBNvalue, formatDuration, formatLeverage, formatNumberToString_, formatPercentage, formatTimestamp, functionArgsToMap, functionArgsToRecord, generateCastTraceCall, getAccountTargetCollateral, getAdapterActionAbi, getAdapterDeployParamsAbi, getAdapterType, getAssetType, getCastTraceArgs, getChain, getCuratorName, getFunctionSignature, getLegacyStrategyTarget, getNetworkType, getRawPriceUpdates, getSimulateWithPriceUpdatesError, getWithdrawalCompressorAddress, halfRAY, hasAdapterDeployParamsAbi, healthFactorBps, hexEq, hydrateAddressProvider, iBalancerV3RouterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAbi, iBalancerV3WrapperAdapterAbi, iBaseOnRampAbi, iBaseRewardPoolAbi, iBoosterAbi, iCamelotV3AdapterAbi, iCamelotV3RouterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCreditAccountAbi, iCurvePoolAbi, iCurvePoolStableNGAbi, iCurvePool_2Abi, iCurvePool_3Abi, iCurvePool_4Abi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAbi, iDaiUsdsAdapterAbi, iERC4626Abi, iERC4626ReferralAbi, iFluidDexAbi, iFluidDexAdapterAbi, iInfinifiGatewayAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLRTDepositPoolGatewayAbi, iKelpLRTWithdrawalManagerGatewayAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAbi, iMellowClaimerAdapterAbi, iMellowWrapperAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasGatewayV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasIssuanceVaultV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAbi, iPendleRouterAdapterAbi, iSecuritizeOnRampAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iSecuritizeRedemptionGatewayV311Abi, iStakingRewardsAbi, iStakingRewardsAdapterAbi, iTraderJoeRouterAbi, iTraderJoeRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV2Router02Abi, iUniswapV3Abi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAbi, iVelodromeV2RouterAdapterAbi, isDust, isLPPriceFeed, isMalformedPreviewError, isPhantomToken, isPublicNetwork, isRWAFactory, isRWAToken, isStrategyCollateral, isSunsetPool, isSunsetStrategy, isSupportedNetwork, isUpdatablePriceFeed, isV310, isVersionRange, isZeroBalance, iwstETHAbi, iwstEthv1AdapterAbi, json_parse, json_stringify, lidoV1_WETHGatewayAbi, mellowDvvAdapterAbi, minSeizedAmount, numberWithCommas, onchainSDKOptionsSchema, optimalHFForPartialLiquidation, optimalRepaidAmount, parseAdapterAction, parseAdapterDeployParams, parsePosNegAmount, percentFmt, pickStrategyTargetCollateral, raise, rayToBps, rayToNumber, refuse, resolveProtocolCall, retry, rewardsFromTransfers, roundUpQuota, sendRawTx, shortAddress, shortHash, simulateCall, simulateMulticall, simulateWithPriceUpdates, strategyName, swapFromTransfers, toAddress, toBN, toBigInt, toChainIds, toClaimableWithdrawal, toCreditAccountSlice, toNetTransfers, toPendingWithdrawal, toRequestableWithdrawal, toShares, toSharesUp, toSignificant, toToken, toTokenAmount, toWithdrawalStatus, usdToNumber, watchBlocksAsync };
|
|
250
|
+
export { ADDRESS_0X0, ADDRESS_PROVIDER_V310, AP_ACCOUNT_FACTORY, AP_ACL, AP_BOT_LIST, AP_BYTECODE_REPOSITORY, AP_CONTRACTS_REGISTER, AP_CONTROLLER_TIMELOCK, AP_CREDIT_ACCOUNT_COMPRESSOR, AP_CREDIT_SUITE_COMPRESSOR, AP_DATA_COMPRESSOR, AP_DELEVERAGE_BOT_HV, AP_DELEVERAGE_BOT_LV, AP_DELEVERAGE_BOT_PEGGED, AP_GAUGE_COMPRESSOR, AP_GEAR_STAKING, AP_GEAR_TOKEN, AP_INFLATION_ATTACK_BLOCKER, AP_INSOLVENCY_CHECKER, AP_MARKET_COMPRESSOR, AP_MARKET_CONFIGURATOR, AP_PARTIAL_LIQUIDATION_BOT, AP_PERIPHERY_COMPRESSOR, AP_PRICE_FEED_COMPRESSOR, AP_PRICE_FEED_STORE, AP_PRICE_ORACLE, AP_REDEMPTION_LOGGER, AP_REWARDS_COMPRESSOR, AP_ROUTER, AP_RWA_COMPRESSOR, AP_TOKEN_COMPRESSOR, AP_TREASURY, AP_WETH_GATEWAY, AP_WETH_TOKEN, AP_ZAPPER_REGISTER, AP_ZERO_PRICE_FEED, AbstractAdapterContract, AbstractLPPriceFeedContract, AbstractPriceFeedContract, AbstractWithdrawalCompressorContract, AccountBotsService, AccountMigratorAdapterContract, AdapterType, AddressMap, AddressProviderV310Contract, AddressSet, AssetsMap, BLOCKS_PER_WEEK_BY_NETWORK, BalancerStablePriceFeedContract, BalancerV3PoolStatus, BalancerV3RouterAdapterContract, BalancerV3WrapperAdapterContract, BalancerWeightedPriceFeedContract, BaseContract, BasePlugin, BigIntMath, BotPermissions, BoundedPriceFeedContract, CamelotV3AdapterContract, ChainContractsRegister, ChainNotConfiguredError, CompositePriceFeedContract, Construct, ContractParseError, ConvexV1BaseRewardPoolAdapterContract, ConvexV1BoosterAdapterContract, CreditAccountCompressor, CreditAccountCompressorV310Contract, CreditAccountOperationsService, CreditAccountsServiceV310, CreditConfiguratorV310Contract, CreditFacadeV310BaseContract, CreditFacadeV310Contract, CreditManagerV310Contract, CreditSuite, Curve2AssetsAdapterContract, Curve3AssetsAdapterContract, Curve4AssetsAdapterContract, CurveCryptoPriceFeedContract, CurveStablePriceFeedContract, CurveUSDPriceFeedContract, CurveV1AdapterStETHContract, CurveV1StableNGAdapterContract, DEFAULT_QUOTA_BUFFER_BPS, DELAYED_INTENT_TYPES, DELAYED_INTENT_VERSION, DUST_THRESHOLD, DaiUsdsAdapterContract, ERC4626AdapterContract, ERC4626ReferralAdapterContract, EXECUTE_BYTES_SELECTOR, Erc4626PriceFeedContract, ExternalPriceFeedContract, FluidDexAdapterContract, GaugeContract, IERC20ZapperContract, IETHZapperContract, InfinifiGatewayAdapterContract, InfinifiUnwindingGatewayAdapterContract, IntentPreviewError, InvalidDelayedIntentError, KelpLRTDepositPoolAdapterContract, KelpLRTWithdrawalManagerAdapterContract, LEVERAGE_DECIMALS, LIQUIDATION_APPROVAL_BUFFER, LIQUIDATION_COMPRESSOR_V313_ADDRESS, LidoV1AdapterContract, LinearInterestRateModelContract, LiquidationsService, MAX_INT, MAX_LEVERAGE_BUFFER_BPS, MAX_UINT16, MAX_UINT256, MIN_HEALTH_FACTOR_FACADE, MIN_HEALTH_FACTOR_FORM, MIN_HF_LIMITED, MIN_INT96, MIN_SAFE_HEALTH_FACTOR_FORM, MULTICALL_ADDRESS, MarketRegister, MarketSuite, MellowClaimerAdapterContract, MellowDVVAdapterContract, MellowERC4626VaultAdapterContract, MellowLRTPriceFeedContract, MellowWrapperAdapterContract, MidasGatewayAdapterContract, MidasIssuanceVaultAdapterContract, MidasLiquidatorContract, MidasRedemptionVaultAdapterContract, MissingSerializedParamsError, MultichainConstruct, MultichainLiquidationsService, MultichainOpportunitiesService, MultichainPositionsService, MultichainSDK, NATIVE_ADDRESS, NON_STRATEGY_PHANTOM_TOKEN_TYPES, NOT_DEPLOYED, NO_VERSION, NetworkType, OnchainSDK, OpportunitiesService, PARTIAL_LIQUIDATION_BUFFER_BPS, PERCENTAGE_DECIMALS, PERCENTAGE_FACTOR, PERCENTAGE_FACTOR_1KK, PERIPHERY_CONTRACTS, PHANTOM_TOKEN_CONTRACT_TYPES, PHANTOM_TOKEN_MIDAS_REDEMPTION, PHANTOM_TOKEN_SECURITIZE_REDEMPTION, PRICE_DECIMALS, PRICE_DECIMALS_POW, PartialPriceFeedInitError, PendlePairStatus, PendleRouterAdapterContract, PendleTWAPPTPriceFeed, PendleTokenType, PeripheryCompressorV310Contract, PluginStateVersionError, PoolService, PoolSuite, PoolV310Contract, PositionsService, PriceFeedRef, PriceFeedRegister, PriceOracleV310Contract, PythPriceFeed, RAMP_DURATION_BY_NETWORK, RAY, RAY_DECIMALS_POW, RWARegistry, RWA_FACTORY_SECURITIZE, RWA_FACTORY_TYPES, RWA_LIQUIDATOR_MIDAS, RWA_LIQUIDATOR_SECURITIZE, RWA_ON_DEMAND_LP_MONOPOLIZED, RWA_UNDERLYING_DEFAULT, RWA_UNDERLYING_ON_DEMAND, RedemptionLoggerV310Contract, RedstonePriceFeedContract, RouterV310Contract, SDKConstruct, SECONDS_PER_YEAR, SECURITIZE_REGISTER_VAULT_TYPES, SLIPPAGE_DECIMALS, STATE_VERSION, SUPPORTED_NETWORKS, SdkAlreadyAttachedError, SdkChainMismatchError, SdkMissingChainStateError, SdkNotAttachedError, SdkRWADataNotLoadedError, SdkStateVersionMismatchError, SdkSyncFailedError, SecuritizeLiquidatorContract, SecuritizeOnRampAdapterContract, SecuritizeRWAFactory, SecuritizeRedemptionGatewayAdapterContract, SimulateWithPriceUpdatesError, SimulationError, StakingRewardsAdapterContract, TokensMeta, TraderJoePoolVersion, TraderJoeRouterAdapterContract, TypedObjectUtils, UniswapV2AdapterContract, UniswapV3AdapterContract, UniswapV4AdapterContract, UnsupportedZapperFunctionError, UpshiftVaultAdapterContract, VERSION_RANGE_310, VelodromeV2RouterAdapterContract, VotingContractStatus, WAD, WAD_DECIMALS_POW, WithdrawalCompressorV310Contract, WithdrawalCompressorV311Contract, WithdrawalCompressorV313Contract, WstETHPriceFeedContract, WstETHV1AdapterContract, YearnPriceFeedContract, ZapperContract, ZeroPriceFeedContract, ZodAddress, ZodBigInt, ZodHex, accountSnapshotFromCreditAccountData, adapterActionAbi, adapterActionSelectors, adapterActionSignatures, adapterConstructorAbi, allTransfersAsTokenAmounts, amountOf, assetsMap, attachOptionsSchema, borrowable, botPermissionsToString, bpsToRay, bytes32ToString, calcBorrowApy, calcBorrowRate, calcDefaultQuota, calcEffectiveBorrowApy, calcHealthFactor, calcLiquidationPrice, calcLiquidationPriceForTarget, calcMaxLeverage, calcNetStrategyApy, calcPositionLeverage, calcQuotaRate, calcQuotaUpdate, calcRecommendedQuota, calcTimeToLiquidationMs, calcUtilization, calcUtilizationRaw, chains, checkBorrowLimit, checkCollateralised, checkCreditManagerPaused, checkDebtInBand, checkForbiddenToken, checkFunding, checkLeverageAtLeastOne, checkMarketExpired, checkPoolPaused, checkPoolPayout, checkPoolSunset, checkPreviewError, checkQuotaCount, checkQuotaLimit, childLogger, classifyCurveOperation, collateralPriceInUnderlying, collectTraces, createAdapter, createAddressProvider, createPriceOracle, createRawTx, createRedemptionLogger, createRouter, createWithdrawalCompressor, createZapper, abi as creditFacadeV310Abi, creditOperationMarket, curveAddLiquidityFromTransfers, curveRemoveLiquidityFromTransfers, decodeDelayedIntent, detectNetwork, dominantCollateral, encodeDelayedIntent, erc4626ReferralAdapterAbi, estimateRawTxGas, etherscanApiUrl, etherscanUrl, executeDelegatedMulticalls, executeMulticallBatches, expectedBalanceDeltas, fetchCreditAccountSlice, fetchRedstonePayloads, filterDust, filterDustUSD, findCallTo, findCallWithInput, findCuratorMarketConfigurator, findExecuteBytes, fmtBinaryMask, fnSigToName, formatBN, formatBNvalue, formatDuration, formatLeverage, formatNumberToString_, formatPercentage, formatTimestamp, functionArgsToMap, functionArgsToRecord, generateCastTraceCall, getAccountTargetCollateral, getAdapterActionAbi, getAdapterDeployParamsAbi, getAdapterType, getAssetType, getCastTraceArgs, getChain, getCuratorName, getFunctionSignature, getLegacyStrategyTarget, getNetworkType, getRawPriceUpdates, getSimulateWithPriceUpdatesError, getWithdrawalCompressorAddress, halfRAY, hasAdapterDeployParamsAbi, healthFactorBps, hexEq, hydrateAddressProvider, iBalancerV3RouterAbi, iBalancerV3RouterAdapterAbi, iBalancerV3WrapperAbi, iBalancerV3WrapperAdapterAbi, iBaseOnRampAbi, iBaseRewardPoolAbi, iBoosterAbi, iCamelotV3AdapterAbi, iCamelotV3RouterAbi, iConvexV1BaseRewardPoolAdapterAbi, iConvexV1BoosterAdapterAbi, iCreditAccountAbi, iCurvePoolAbi, iCurvePoolStableNGAbi, iCurvePool_2Abi, iCurvePool_3Abi, iCurvePool_4Abi, iCurveV1StableNgAdapterAbi, iCurveV1_2AssetsAdapterAbi, iCurveV1_3AssetsAdapterAbi, iCurveV1_4AssetsAdapterAbi, iDaiUsdsAbi, iDaiUsdsAdapterAbi, iERC4626Abi, iERC4626ReferralAbi, iFluidDexAbi, iFluidDexAdapterAbi, iInfinifiGatewayAbi, iInfinifiGatewayAdapterAbi, iInfinifiUnwindingGatewayAbi, iInfinifiUnwindingGatewayAdapterAbi, iKelpLRTDepositPoolGatewayAbi, iKelpLRTWithdrawalManagerGatewayAbi, iKelpLrtDepositPoolAdapterAbi, iKelpLrtDepositPoolGatewayAbi, iKelpLrtWithdrawalManagerAdapterAbi, iKelpLrtWithdrawalManagerGatewayAbi, iLidoV1AdapterAbi, iMellow4626VaultAdapterAbi, iMellowClaimerAbi, iMellowClaimerAdapterAbi, iMellowWrapperAbi, iMellowWrapperAdapterAbi, iMidasGatewayAdapterV311Abi, iMidasGatewayV311Abi, iMidasIssuanceVaultAdapterV310Abi, iMidasIssuanceVaultV310Abi, iMidasRedemptionVaultAdapterV310Abi, iMidasRedemptionVaultGatewayV310Abi, iPendleRouterAbi, iPendleRouterAdapterAbi, iSecuritizeOnRampAbi, iSecuritizeOnRampAdapterV310Abi, iSecuritizeRedemptionGatewayAdapterV311Abi, iSecuritizeRedemptionGatewayV311Abi, iStakingRewardsAbi, iStakingRewardsAdapterAbi, iTraderJoeRouterAbi, iTraderJoeRouterAdapterAbi, iUniswapV2AdapterAbi, iUniswapV2Router02Abi, iUniswapV3Abi, iUniswapV3AdapterAbi, iUniswapV4AdapterAbi, iUniswapV4GatewayAbi, iUpshiftVaultAdapterAbi, iUpshiftVaultGatewayAbi, iVelodromeV2RouterAbi, iVelodromeV2RouterAdapterAbi, isDust, isLPPriceFeed, isMalformedPreviewError, isPhantomToken, isPublicNetwork, isRWAFactory, isRWAToken, isStrategyCollateral, isSunsetPool, isSunsetStrategy, isSupportedNetwork, isUpdatablePriceFeed, isV310, isVersionRange, isZeroBalance, iwstETHAbi, iwstEthv1AdapterAbi, json_parse, json_stringify, lidoV1_WETHGatewayAbi, mellowDvvAdapterAbi, minSeizedAmount, numberWithCommas, onchainSDKOptionsSchema, optimalHFForPartialLiquidation, optimalRepaidAmount, parseAdapterAction, parseAdapterDeployParams, parsePosNegAmount, percentFmt, pickStrategyTargetCollateral, raise, rayToBps, rayToNumber, refuse, resolveProtocolCall, retry, rewardsFromTransfers, roundUpQuota, sendRawTx, shortAddress, shortHash, simulateCall, simulateMulticall, simulateWithPriceUpdates, soleNonUnderlyingCollateral, strategyName, swapFromTransfers, toAddress, toBN, toBigInt, toChainIds, toClaimableWithdrawal, toCreditAccountSlice, toNetTransfers, toPendingWithdrawal, toRequestableWithdrawal, toShares, toSharesUp, toSignificant, toToken, toTokenAmount, toWithdrawalStatus, totalLiquidationDiscount, usdToNumber, watchBlocksAsync };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { accountMigratorAbi } from "../../../../abi/AccountMigrator.js";
|
|
2
1
|
import { AbstractAdapterContract } from "./AbstractAdapter.js";
|
|
2
|
+
import { accountMigratorAbi } from "../../../../abi/AccountMigrator.js";
|
|
3
3
|
//#region src/onchain/market/adapters/contracts/AccountMigratorAdapterContract.ts
|
|
4
4
|
const abi = accountMigratorAbi;
|
|
5
5
|
const protocolAbi = accountMigratorAbi;
|