@gearbox-protocol/sdk 14.12.0-next.72 → 14.12.0-next.74
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/dev/AccountOpener.js +2 -5
- package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +49 -533
- package/dist/cjs/sdk/accounts/index.js +0 -4
- package/dist/cjs/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +1 -1
- package/dist/cjs/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +1 -1
- package/dist/cjs/sdk/accounts/intents/testing/sdk-mock.js +2 -2
- package/dist/cjs/sdk/accounts/liquidations/LiquidationsService.js +3 -3
- package/dist/cjs/sdk/accounts/liquidations/constants.js +0 -2
- package/dist/cjs/sdk/accounts/liquidations/index.js +0 -2
- package/dist/cjs/sdk/constants/index.js +1 -0
- package/dist/cjs/sdk/constants/math.js +5 -0
- package/dist/cjs/sdk/index.js +8 -4
- package/dist/cjs/sdk/market/MarketRegister.js +10 -0
- package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +181 -0
- package/dist/cjs/sdk/market/credit/CreditSuite.js +107 -1
- package/dist/cjs/sdk/{accounts → market/credit}/dominantCollateral.js +18 -4
- package/dist/cjs/sdk/market/credit/index.js +3 -0
- package/dist/cjs/sdk/market/index.js +3 -0
- package/dist/cjs/sdk/market/math.js +59 -0
- package/dist/cjs/sdk/market/oracle/PriceOracleV310Contract.js +2 -9
- package/dist/cjs/sdk/opportunities/index.js +4 -0
- package/dist/esm/dev/AccountOpener.js +2 -5
- package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +50 -534
- package/dist/esm/sdk/accounts/index.js +1 -3
- package/dist/esm/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +1 -1
- package/dist/esm/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +1 -1
- package/dist/esm/sdk/accounts/intents/testing/sdk-mock.js +2 -2
- package/dist/esm/sdk/accounts/liquidations/LiquidationsService.js +2 -2
- package/dist/esm/sdk/accounts/liquidations/constants.js +1 -2
- package/dist/esm/sdk/accounts/liquidations/index.js +1 -2
- package/dist/esm/sdk/constants/index.js +2 -2
- package/dist/esm/sdk/constants/math.js +5 -1
- package/dist/esm/sdk/index.js +4 -5
- package/dist/esm/sdk/market/MarketRegister.js +10 -0
- package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +181 -0
- package/dist/esm/sdk/market/credit/CreditSuite.js +108 -2
- package/dist/esm/sdk/{accounts → market/credit}/dominantCollateral.js +18 -5
- package/dist/esm/sdk/market/credit/index.js +2 -1
- package/dist/esm/sdk/market/index.js +2 -1
- package/dist/esm/sdk/market/math.js +56 -1
- package/dist/esm/sdk/market/oracle/PriceOracleV310Contract.js +3 -10
- package/dist/esm/sdk/opportunities/index.js +2 -2
- package/dist/types/sdk/OnchainSDK.d.ts +1 -1
- package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +11 -78
- package/dist/types/sdk/accounts/index.d.ts +2 -4
- package/dist/types/sdk/accounts/liquidations/constants.d.ts +1 -2
- package/dist/types/sdk/accounts/liquidations/index.d.ts +1 -2
- package/dist/types/sdk/accounts/types.d.ts +42 -346
- package/dist/types/sdk/constants/index.d.ts +2 -2
- package/dist/types/sdk/constants/math.d.ts +5 -1
- package/dist/types/sdk/index.d.ts +10 -11
- package/dist/types/sdk/market/MarketRegister.d.ts +7 -0
- package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +47 -2
- package/dist/types/sdk/market/credit/CreditSuite.d.ts +24 -2
- package/dist/types/sdk/{accounts → market/credit}/dominantCollateral.d.ts +13 -6
- package/dist/types/sdk/market/credit/index.d.ts +3 -2
- package/dist/types/sdk/market/credit/types.d.ts +112 -2
- package/dist/types/sdk/market/index.d.ts +3 -2
- package/dist/types/sdk/market/math.d.ts +60 -1
- package/dist/types/sdk/market/oracle/PriceOracleV310Contract.d.ts +1 -0
- package/dist/types/sdk/market/rwa/securitize/SecuritizeRWAFactory.d.ts +1 -1
- package/dist/types/sdk/market/rwa/types.d.ts +1 -1
- package/dist/types/sdk/opportunities/index.d.ts +2 -2
- package/package.json +1 -1
- package/dist/cjs/sdk/accounts/constants.js +0 -12
- package/dist/esm/sdk/accounts/constants.js +0 -11
- package/dist/types/sdk/accounts/constants.d.ts +0 -11
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_constants = require("./constants.js");
|
|
3
|
-
const require_sdk_accounts_dominantCollateral = require("./dominantCollateral.js");
|
|
4
2
|
const require_sdk_accounts_CreditAccountsServiceV310 = require("./CreditAccountsServiceV310.js");
|
|
5
3
|
const require_sdk_accounts_intents_operations_claim_delayed_index = require("./intents/operations/claim-delayed/index.js");
|
|
6
4
|
const require_sdk_accounts_intents_index = require("./intents/index.js");
|
|
@@ -26,7 +24,6 @@ exports.CreditAccountOperationsService = require_sdk_accounts_intents_index.Cred
|
|
|
26
24
|
exports.CreditAccountsServiceV310 = require_sdk_accounts_CreditAccountsServiceV310.CreditAccountsServiceV310;
|
|
27
25
|
exports.DELAYED_INTENT_TYPES = require_sdk_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_TYPES;
|
|
28
26
|
exports.DELAYED_INTENT_VERSION = require_sdk_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_VERSION;
|
|
29
|
-
exports.DUST_THRESHOLD = require_sdk_accounts_constants.DUST_THRESHOLD;
|
|
30
27
|
exports.InvalidDelayedIntentError = require_sdk_accounts_withdrawal_compressor_errors.InvalidDelayedIntentError;
|
|
31
28
|
exports.LIQUIDATION_APPROVAL_BUFFER = require_sdk_accounts_liquidations_constants.LIQUIDATION_APPROVAL_BUFFER;
|
|
32
29
|
exports.LIQUIDATION_COMPRESSOR_V313_ADDRESS = require_sdk_accounts_liquidations_constants.LIQUIDATION_COMPRESSOR_V313_ADDRESS;
|
|
@@ -39,7 +36,6 @@ exports.WithdrawalCompressorV313Contract = require_sdk_accounts_withdrawal_compr
|
|
|
39
36
|
exports.createRedemptionLogger = require_sdk_accounts_withdrawal_compressor_createRedemptionLogger.createRedemptionLogger;
|
|
40
37
|
exports.createWithdrawalCompressor = require_sdk_accounts_withdrawal_compressor_createWithdrawalCompressor.createWithdrawalCompressor;
|
|
41
38
|
exports.decodeDelayedIntent = require_sdk_accounts_withdrawal_compressor_intent_codec.decodeDelayedIntent;
|
|
42
|
-
exports.dominantCollateral = require_sdk_accounts_dominantCollateral.dominantCollateral;
|
|
43
39
|
exports.encodeDelayedIntent = require_sdk_accounts_withdrawal_compressor_intent_codec.encodeDelayedIntent;
|
|
44
40
|
exports.getWithdrawalCompressorAddress = require_sdk_accounts_withdrawal_compressor_addresses.getWithdrawalCompressorAddress;
|
|
45
41
|
exports.iCreditAccountAbi = require_sdk_accounts_withdrawal_compressor_AbstractWithdrawalCompressorContract.iCreditAccountAbi;
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
/** One-to-one swap op (withdraw resume conversion legs). */
|
|
4
4
|
async function buildUnwrapRwaCollateralOperation(input, option) {
|
|
5
5
|
if (option.kind === "onchain") {
|
|
6
|
-
const calls = await input.sdk.accounts.
|
|
6
|
+
const calls = await input.sdk.accounts.assembleRWAUnwrapCalls(input.amountIn, input.creditAccount.creditManager);
|
|
7
7
|
if (!calls) throw new Error("unwrapRwaCollateral: no wrap calls found");
|
|
8
8
|
return {
|
|
9
9
|
type: "unwrapRwaCollateral",
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
/** One-to-one wrap op (decrease-leverage resume repay from rwa.asset). */
|
|
4
4
|
async function buildWrapRwaCollateralOperation(input, option) {
|
|
5
5
|
if (option.kind === "onchain") {
|
|
6
|
-
const calls = await input.sdk.accounts.
|
|
6
|
+
const calls = await input.sdk.accounts.assembleRWAWrapCalls(input.amountIn, input.creditAccount.creditManager);
|
|
7
7
|
if (!calls) throw new Error("wrapRwaCollateral: no wrap calls found");
|
|
8
8
|
return {
|
|
9
9
|
type: "wrapRwaCollateral",
|
|
@@ -164,8 +164,8 @@ function buildMockSdk(args) {
|
|
|
164
164
|
prepareUpdateQuotas: vitest.vi.fn(() => [CA_OP_CALLS.changeQuota]),
|
|
165
165
|
assembleClaimDelayedCalls: vitest.vi.fn(({ claimableNow }) => [...claimableNow.claimCalls]),
|
|
166
166
|
assembleCloseCreditAccountCalls: vitest.vi.fn(async () => [MOCK_CLOSE_CALL]),
|
|
167
|
-
|
|
168
|
-
|
|
167
|
+
assembleRWAWrapCalls: vitest.vi.fn(async () => [MOCK_RWA_WRAP_CALL]),
|
|
168
|
+
assembleRWAUnwrapCalls: vitest.vi.fn(async () => [MOCK_RWA_UNWRAP_CALL])
|
|
169
169
|
}
|
|
170
170
|
};
|
|
171
171
|
}
|
|
@@ -10,6 +10,7 @@ require("../../utils/index.js");
|
|
|
10
10
|
const require_sdk_base_SDKConstruct = require("../../base/SDKConstruct.js");
|
|
11
11
|
require("../../base/index.js");
|
|
12
12
|
const require_sdk_market_math = require("../../market/math.js");
|
|
13
|
+
const require_sdk_market_credit_dominantCollateral = require("../../market/credit/dominantCollateral.js");
|
|
13
14
|
const require_model_liquidations = require("../../../model/liquidations.js");
|
|
14
15
|
require("../../../model/index.js");
|
|
15
16
|
const require_sdk_market_rwa_midas_constants = require("../../market/rwa/midas/constants.js");
|
|
@@ -18,8 +19,7 @@ require("../../market/rwa/midas/index.js");
|
|
|
18
19
|
const require_sdk_market_rwa_securitize_constants = require("../../market/rwa/securitize/constants.js");
|
|
19
20
|
const require_sdk_market_rwa_securitize_SecuritizeLiquidatorContract = require("../../market/rwa/securitize/SecuritizeLiquidatorContract.js");
|
|
20
21
|
require("../../market/rwa/securitize/index.js");
|
|
21
|
-
require("
|
|
22
|
-
const require_sdk_accounts_dominantCollateral = require("../dominantCollateral.js");
|
|
22
|
+
require("../../market/index.js");
|
|
23
23
|
const require_sdk_accounts_liquidations_constants = require("./constants.js");
|
|
24
24
|
//#region src/sdk/accounts/liquidations/LiquidationsService.ts
|
|
25
25
|
/**
|
|
@@ -282,7 +282,7 @@ var LiquidationsService = class extends require_sdk_base_SDKConstruct.SDKConstru
|
|
|
282
282
|
};
|
|
283
283
|
}
|
|
284
284
|
#mainAsset(ca, market, fallback) {
|
|
285
|
-
const asset =
|
|
285
|
+
const asset = require_sdk_market_credit_dominantCollateral.dominantCollateral(ca, market);
|
|
286
286
|
if (!asset) return fallback;
|
|
287
287
|
return this.sdk.withdrawalCompressor?.getWithdrawalSourceToken(asset) ?? asset;
|
|
288
288
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_constants = require("../constants.js");
|
|
3
2
|
//#region src/sdk/accounts/liquidations/constants.ts
|
|
4
3
|
const LIQUIDATION_COMPRESSOR_V313_ADDRESS = "0xB70C4500a0afF02107eB983a348F22492fB6dC94";
|
|
5
4
|
/**
|
|
@@ -9,6 +8,5 @@ const LIQUIDATION_COMPRESSOR_V313_ADDRESS = "0xB70C4500a0afF02107eB983a348F22492
|
|
|
9
8
|
**/
|
|
10
9
|
const LIQUIDATION_APPROVAL_BUFFER = 50n;
|
|
11
10
|
//#endregion
|
|
12
|
-
exports.DUST_THRESHOLD = require_sdk_accounts_constants.DUST_THRESHOLD;
|
|
13
11
|
exports.LIQUIDATION_APPROVAL_BUFFER = LIQUIDATION_APPROVAL_BUFFER;
|
|
14
12
|
exports.LIQUIDATION_COMPRESSOR_V313_ADDRESS = LIQUIDATION_COMPRESSOR_V313_ADDRESS;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sdk_accounts_constants = require("../constants.js");
|
|
3
2
|
const require_sdk_accounts_liquidations_constants = require("./constants.js");
|
|
4
3
|
const require_sdk_accounts_liquidations_LiquidationsService = require("./LiquidationsService.js");
|
|
5
4
|
const require_sdk_accounts_liquidations_MultichainLiquidationsService = require("./MultichainLiquidationsService.js");
|
|
6
5
|
require("./types.js");
|
|
7
|
-
exports.DUST_THRESHOLD = require_sdk_accounts_constants.DUST_THRESHOLD;
|
|
8
6
|
exports.LIQUIDATION_APPROVAL_BUFFER = require_sdk_accounts_liquidations_constants.LIQUIDATION_APPROVAL_BUFFER;
|
|
9
7
|
exports.LIQUIDATION_COMPRESSOR_V313_ADDRESS = require_sdk_accounts_liquidations_constants.LIQUIDATION_COMPRESSOR_V313_ADDRESS;
|
|
10
8
|
exports.LiquidationsService = require_sdk_accounts_liquidations_LiquidationsService.LiquidationsService;
|
|
@@ -44,6 +44,7 @@ exports.AP_ZAPPER_REGISTER = require_sdk_constants_address_provider.AP_ZAPPER_RE
|
|
|
44
44
|
exports.AP_ZERO_PRICE_FEED = require_sdk_constants_address_provider.AP_ZERO_PRICE_FEED;
|
|
45
45
|
exports.BLOCKS_PER_WEEK_BY_NETWORK = require_sdk_constants_networks.BLOCKS_PER_WEEK_BY_NETWORK;
|
|
46
46
|
exports.BotPermissions = require_sdk_constants_bot_permissions.BotPermissions;
|
|
47
|
+
exports.DUST_THRESHOLD = require_sdk_constants_math.DUST_THRESHOLD;
|
|
47
48
|
exports.LEVERAGE_DECIMALS = require_sdk_constants_math.LEVERAGE_DECIMALS;
|
|
48
49
|
exports.MAX_INT = require_sdk_constants_math.MAX_INT;
|
|
49
50
|
exports.MAX_UINT16 = require_sdk_constants_math.MAX_UINT16;
|
|
@@ -17,7 +17,12 @@ const PERCENTAGE_FACTOR = 10000n;
|
|
|
17
17
|
const PERCENTAGE_FACTOR_1KK = PERCENTAGE_FACTOR * PERCENTAGE_DECIMALS;
|
|
18
18
|
const LEVERAGE_DECIMALS = 100n;
|
|
19
19
|
const SLIPPAGE_DECIMALS = 100n;
|
|
20
|
+
/**
|
|
21
|
+
* Token balances at or below this threshold are treated as dust and ignored.
|
|
22
|
+
**/
|
|
23
|
+
const DUST_THRESHOLD = 10n;
|
|
20
24
|
//#endregion
|
|
25
|
+
exports.DUST_THRESHOLD = DUST_THRESHOLD;
|
|
21
26
|
exports.LEVERAGE_DECIMALS = LEVERAGE_DECIMALS;
|
|
22
27
|
exports.MAX_INT = MAX_INT;
|
|
23
28
|
exports.MAX_UINT16 = MAX_UINT16;
|
package/dist/cjs/sdk/index.js
CHANGED
|
@@ -50,6 +50,7 @@ const require_sdk_market_credit_CreditFacadeV310BaseContract = require("./market
|
|
|
50
50
|
const require_sdk_market_credit_CreditFacadeV310Contract = require("./market/credit/CreditFacadeV310Contract.js");
|
|
51
51
|
const require_sdk_market_math = require("./market/math.js");
|
|
52
52
|
const require_sdk_market_credit_CreditManagerV310Contract = require("./market/credit/CreditManagerV310Contract.js");
|
|
53
|
+
const require_sdk_market_credit_dominantCollateral = require("./market/credit/dominantCollateral.js");
|
|
53
54
|
const require_sdk_market_credit_CreditSuite = require("./market/credit/CreditSuite.js");
|
|
54
55
|
const require_sdk_utils_viem_simulateMulticall = require("./utils/viem/simulateMulticall.js");
|
|
55
56
|
const require_sdk_utils_viem_simulateWithPriceUpdates = require("./utils/viem/simulateWithPriceUpdates.js");
|
|
@@ -103,8 +104,6 @@ const require_sdk_market_rwa_securitize_SecuritizeRWAFactory = require("./market
|
|
|
103
104
|
const require_sdk_market_rwa_RWARegistry = require("./market/rwa/RWARegistry.js");
|
|
104
105
|
const require_sdk_market_rwa_types = require("./market/rwa/types.js");
|
|
105
106
|
require("./market/index.js");
|
|
106
|
-
const require_sdk_accounts_constants = require("./accounts/constants.js");
|
|
107
|
-
const require_sdk_accounts_dominantCollateral = require("./accounts/dominantCollateral.js");
|
|
108
107
|
const require_sdk_accounts_CreditAccountsServiceV310 = require("./accounts/CreditAccountsServiceV310.js");
|
|
109
108
|
const require_sdk_accounts_intents_operations_claim_delayed_index = require("./accounts/intents/operations/claim-delayed/index.js");
|
|
110
109
|
const require_sdk_accounts_intents_index = require("./accounts/intents/index.js");
|
|
@@ -213,7 +212,7 @@ exports.CurveStablePriceFeedContract = require_sdk_market_pricefeeds_CurveStable
|
|
|
213
212
|
exports.CurveUSDPriceFeedContract = require_sdk_market_pricefeeds_CurveUSDPriceFeed.CurveUSDPriceFeedContract;
|
|
214
213
|
exports.DELAYED_INTENT_TYPES = require_sdk_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_TYPES;
|
|
215
214
|
exports.DELAYED_INTENT_VERSION = require_sdk_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_VERSION;
|
|
216
|
-
exports.DUST_THRESHOLD =
|
|
215
|
+
exports.DUST_THRESHOLD = require_sdk_constants_math.DUST_THRESHOLD;
|
|
217
216
|
exports.Erc4626PriceFeedContract = require_sdk_market_pricefeeds_Erc4626PriceFeed.Erc4626PriceFeedContract;
|
|
218
217
|
exports.ExternalPriceFeedContract = require_sdk_market_pricefeeds_ExternalPriceFeed.ExternalPriceFeedContract;
|
|
219
218
|
exports.GaugeContract = require_sdk_market_pool_GaugeContract.GaugeContract;
|
|
@@ -246,6 +245,7 @@ exports.NO_VERSION = require_sdk_constants_address_provider.NO_VERSION;
|
|
|
246
245
|
exports.NetworkType = require_sdk_chain_chains.NetworkType;
|
|
247
246
|
exports.OnchainSDK = require_sdk_OnchainSDK.OnchainSDK;
|
|
248
247
|
exports.OpportunitiesService = require_sdk_opportunities_OpportunitiesService.OpportunitiesService;
|
|
248
|
+
exports.PARTIAL_LIQUIDATION_BUFFER_BPS = require_sdk_market_math.PARTIAL_LIQUIDATION_BUFFER_BPS;
|
|
249
249
|
exports.PERCENTAGE_DECIMALS = require_sdk_constants_math.PERCENTAGE_DECIMALS;
|
|
250
250
|
exports.PERCENTAGE_FACTOR = require_sdk_constants_math.PERCENTAGE_FACTOR;
|
|
251
251
|
exports.PERCENTAGE_FACTOR_1KK = require_sdk_constants_math.PERCENTAGE_FACTOR_1KK;
|
|
@@ -333,7 +333,7 @@ exports.createZapper = require_sdk_market_zapper_createZapper.createZapper;
|
|
|
333
333
|
exports.creditFacadeV310Abi = require_sdk_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
334
334
|
exports.decodeDelayedIntent = require_sdk_accounts_withdrawal_compressor_intent_codec.decodeDelayedIntent;
|
|
335
335
|
exports.detectNetwork = require_sdk_chain_detectNetwork.detectNetwork;
|
|
336
|
-
exports.dominantCollateral =
|
|
336
|
+
exports.dominantCollateral = require_sdk_market_credit_dominantCollateral.dominantCollateral;
|
|
337
337
|
exports.encodeDelayedIntent = require_sdk_accounts_withdrawal_compressor_intent_codec.encodeDelayedIntent;
|
|
338
338
|
exports.estimateRawTxGas = require_sdk_utils_viem_sendRawTx.estimateRawTxGas;
|
|
339
339
|
exports.etherscanApiUrl = require_sdk_utils_etherscan.etherscanApiUrl;
|
|
@@ -383,8 +383,12 @@ exports.isVersionRange = require_sdk_constants_versions.isVersionRange;
|
|
|
383
383
|
exports.json_parse = require_sdk_utils_json.json_parse;
|
|
384
384
|
exports.json_stringify = require_sdk_utils_json.json_stringify;
|
|
385
385
|
exports.maxLeverage = require_sdk_market_math.maxLeverage;
|
|
386
|
+
exports.minSeizedAmount = require_sdk_market_math.minSeizedAmount;
|
|
387
|
+
exports.mustGetDominantCollateral = require_sdk_market_credit_dominantCollateral.mustGetDominantCollateral;
|
|
386
388
|
exports.numberWithCommas = require_sdk_utils_formatter.numberWithCommas;
|
|
387
389
|
exports.onchainSDKOptionsSchema = require_sdk_options.onchainSDKOptionsSchema;
|
|
390
|
+
exports.optimalHFForPartialLiquidation = require_sdk_market_math.optimalHFForPartialLiquidation;
|
|
391
|
+
exports.optimalRepaidAmount = require_sdk_market_math.optimalRepaidAmount;
|
|
388
392
|
exports.percentFmt = require_sdk_utils_formatter.percentFmt;
|
|
389
393
|
exports.positionLeverage = require_sdk_market_math.positionLeverage;
|
|
390
394
|
exports.primaryInstantOutput = require_sdk_accounts_intents_operations_claim_delayed_index.primaryInstantOutput;
|
|
@@ -12,6 +12,7 @@ require("../utils/viem/index.js");
|
|
|
12
12
|
const require_sdk_market_MarketConfiguratorContract = require("./MarketConfiguratorContract.js");
|
|
13
13
|
const require_sdk_market_MarketSuite = require("./MarketSuite.js");
|
|
14
14
|
const require_sdk_market_ZapperRegister = require("./ZapperRegister.js");
|
|
15
|
+
let viem = require("viem");
|
|
15
16
|
//#region src/sdk/market/MarketRegister.ts
|
|
16
17
|
/**
|
|
17
18
|
* Central registry of all Gearbox markets on the current chain.
|
|
@@ -180,6 +181,15 @@ var MarketRegister = class extends require_sdk_market_ZapperRegister.ZapperRegis
|
|
|
180
181
|
throw new Error(`cannot find credit manager ${creditManager}`);
|
|
181
182
|
}
|
|
182
183
|
/**
|
|
184
|
+
* Finds a credit facade by its on-chain address.
|
|
185
|
+
* @param creditFacade - Credit facade contract address.
|
|
186
|
+
* @throws If no loaded market contains the given credit facade.
|
|
187
|
+
**/
|
|
188
|
+
findCreditFacade(creditFacade) {
|
|
189
|
+
for (const cm of this.creditManagers) if ((0, viem.isAddressEqual)(cm.creditFacade.address, creditFacade)) return cm.creditFacade;
|
|
190
|
+
throw new Error(`cannot find credit facade ${creditFacade}`);
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
183
193
|
* Finds the market that contains the given credit manager.
|
|
184
194
|
* @param creditManager - Credit manager contract address.
|
|
185
195
|
* @throws If no loaded market contains the given credit manager.
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_sdk_utils_AssetsMap = require("../../utils/AssetsMap.js");
|
|
2
3
|
const require_sdk_constants_addresses = require("../../constants/addresses.js");
|
|
4
|
+
const require_sdk_constants_math = require("../../constants/math.js");
|
|
3
5
|
require("../../constants/index.js");
|
|
4
6
|
const require_sdk_utils_formatter = require("../../utils/formatter.js");
|
|
5
7
|
require("../../utils/index.js");
|
|
6
8
|
const require_sdk_market_credit_CreditFacadeV310BaseContract = require("./CreditFacadeV310BaseContract.js");
|
|
9
|
+
let viem = require("viem");
|
|
7
10
|
//#region src/sdk/market/credit/CreditFacadeV310Contract.ts
|
|
8
11
|
var CreditFacadeV310Contract = class extends require_sdk_market_credit_CreditFacadeV310BaseContract.CreditFacadeV310BaseContract {
|
|
9
12
|
underlying;
|
|
@@ -108,6 +111,184 @@ var CreditFacadeV310Contract = class extends require_sdk_market_credit_CreditFac
|
|
|
108
111
|
]
|
|
109
112
|
});
|
|
110
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* {@inheritDoc ICreditFacadeContract.prepareIncreaseDebt}
|
|
116
|
+
*/
|
|
117
|
+
prepareIncreaseDebt(amount) {
|
|
118
|
+
return {
|
|
119
|
+
target: this.address,
|
|
120
|
+
callData: (0, viem.encodeFunctionData)({
|
|
121
|
+
abi: this.abi,
|
|
122
|
+
functionName: "increaseDebt",
|
|
123
|
+
args: [amount]
|
|
124
|
+
})
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* {@inheritDoc ICreditFacadeContract.prepareChangeDebt}
|
|
129
|
+
*/
|
|
130
|
+
prepareChangeDebt(change, isDecrease) {
|
|
131
|
+
return {
|
|
132
|
+
target: this.address,
|
|
133
|
+
callData: (0, viem.encodeFunctionData)({
|
|
134
|
+
abi: this.abi,
|
|
135
|
+
functionName: isDecrease ? "decreaseDebt" : "increaseDebt",
|
|
136
|
+
args: [change]
|
|
137
|
+
})
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* {@inheritDoc ICreditFacadeContract.prepareDecreaseDebtFull}
|
|
142
|
+
*/
|
|
143
|
+
prepareDecreaseDebtFull() {
|
|
144
|
+
return {
|
|
145
|
+
target: this.address,
|
|
146
|
+
callData: (0, viem.encodeFunctionData)({
|
|
147
|
+
abi: this.abi,
|
|
148
|
+
functionName: "decreaseDebt",
|
|
149
|
+
args: [require_sdk_constants_math.MAX_UINT256]
|
|
150
|
+
})
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* {@inheritDoc ICreditFacadeContract.prepareWithdrawCollateral}
|
|
155
|
+
*/
|
|
156
|
+
prepareWithdrawCollateral(token, amount, to) {
|
|
157
|
+
return {
|
|
158
|
+
target: this.address,
|
|
159
|
+
callData: (0, viem.encodeFunctionData)({
|
|
160
|
+
abi: this.abi,
|
|
161
|
+
functionName: "withdrawCollateral",
|
|
162
|
+
args: [
|
|
163
|
+
token,
|
|
164
|
+
amount,
|
|
165
|
+
to
|
|
166
|
+
]
|
|
167
|
+
})
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* {@inheritDoc ICreditFacadeContract.prepareAddCollateral}
|
|
172
|
+
*/
|
|
173
|
+
prepareAddCollateral(assets, permits) {
|
|
174
|
+
return assets.map(({ token, balance }) => {
|
|
175
|
+
const p = permits[token];
|
|
176
|
+
if (p) return {
|
|
177
|
+
target: this.address,
|
|
178
|
+
callData: (0, viem.encodeFunctionData)({
|
|
179
|
+
abi: this.abi,
|
|
180
|
+
functionName: "addCollateralWithPermit",
|
|
181
|
+
args: [
|
|
182
|
+
token,
|
|
183
|
+
balance,
|
|
184
|
+
p.deadline,
|
|
185
|
+
p.v,
|
|
186
|
+
p.r,
|
|
187
|
+
p.s
|
|
188
|
+
]
|
|
189
|
+
})
|
|
190
|
+
};
|
|
191
|
+
return {
|
|
192
|
+
target: this.address,
|
|
193
|
+
callData: (0, viem.encodeFunctionData)({
|
|
194
|
+
abi: this.abi,
|
|
195
|
+
functionName: "addCollateral",
|
|
196
|
+
args: [token, balance]
|
|
197
|
+
})
|
|
198
|
+
};
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* {@inheritDoc ICreditFacadeContract.prepareUpdateQuotas}
|
|
203
|
+
*/
|
|
204
|
+
prepareUpdateQuotas({ averageQuota, minQuota }) {
|
|
205
|
+
const minRecord = new require_sdk_utils_AssetsMap.AssetsMap(minQuota);
|
|
206
|
+
return averageQuota.map((q) => {
|
|
207
|
+
const minBalance = minRecord.get(q.token);
|
|
208
|
+
const min = minBalance && minBalance > 0n ? minBalance : 0n;
|
|
209
|
+
return {
|
|
210
|
+
target: this.address,
|
|
211
|
+
callData: (0, viem.encodeFunctionData)({
|
|
212
|
+
abi: this.abi,
|
|
213
|
+
functionName: "updateQuota",
|
|
214
|
+
args: [
|
|
215
|
+
q.token,
|
|
216
|
+
q.balance,
|
|
217
|
+
min
|
|
218
|
+
]
|
|
219
|
+
})
|
|
220
|
+
};
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* {@inheritDoc ICreditFacadeContract.prepareDisableQuotas}
|
|
225
|
+
*/
|
|
226
|
+
prepareDisableQuotas(tokens) {
|
|
227
|
+
return tokens.filter((t) => t.quota > 0n).map((t) => ({
|
|
228
|
+
target: this.address,
|
|
229
|
+
callData: (0, viem.encodeFunctionData)({
|
|
230
|
+
abi: this.abi,
|
|
231
|
+
functionName: "updateQuota",
|
|
232
|
+
args: [
|
|
233
|
+
t.token,
|
|
234
|
+
require_sdk_constants_math.MIN_INT96,
|
|
235
|
+
0n
|
|
236
|
+
]
|
|
237
|
+
})
|
|
238
|
+
}));
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* {@inheritDoc ICreditFacadeContract.prepareSetBotPermissions}
|
|
242
|
+
*/
|
|
243
|
+
prepareSetBotPermissions(bot, permissions) {
|
|
244
|
+
return {
|
|
245
|
+
target: this.address,
|
|
246
|
+
callData: (0, viem.encodeFunctionData)({
|
|
247
|
+
abi: this.abi,
|
|
248
|
+
functionName: "setBotPermissions",
|
|
249
|
+
args: [bot, permissions]
|
|
250
|
+
})
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* {@inheritDoc ICreditFacadeContract.prepareOnDemandPriceUpdates}
|
|
255
|
+
*/
|
|
256
|
+
prepareOnDemandPriceUpdates(updates) {
|
|
257
|
+
return {
|
|
258
|
+
target: this.address,
|
|
259
|
+
callData: (0, viem.encodeFunctionData)({
|
|
260
|
+
abi: this.abi,
|
|
261
|
+
functionName: "onDemandPriceUpdates",
|
|
262
|
+
args: [updates]
|
|
263
|
+
})
|
|
264
|
+
};
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* {@inheritDoc ICreditFacadeContract.prepareStoreExpectedBalances}
|
|
268
|
+
*/
|
|
269
|
+
prepareStoreExpectedBalances(deltas) {
|
|
270
|
+
return {
|
|
271
|
+
target: this.address,
|
|
272
|
+
callData: (0, viem.encodeFunctionData)({
|
|
273
|
+
abi: this.abi,
|
|
274
|
+
functionName: "storeExpectedBalances",
|
|
275
|
+
args: [deltas]
|
|
276
|
+
})
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* {@inheritDoc ICreditFacadeContract.prepareCompareBalances}
|
|
281
|
+
*/
|
|
282
|
+
prepareCompareBalances() {
|
|
283
|
+
return {
|
|
284
|
+
target: this.address,
|
|
285
|
+
callData: (0, viem.encodeFunctionData)({
|
|
286
|
+
abi: this.abi,
|
|
287
|
+
functionName: "compareBalances",
|
|
288
|
+
args: []
|
|
289
|
+
})
|
|
290
|
+
};
|
|
291
|
+
}
|
|
111
292
|
};
|
|
112
293
|
//#endregion
|
|
113
294
|
exports.CreditFacadeV310Contract = CreditFacadeV310Contract;
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_sdk_utils_AddressMap = require("../../utils/AddressMap.js");
|
|
2
3
|
const require_sdk_utils_bigint_math = require("../../utils/bigint-math.js");
|
|
3
4
|
const require_sdk_chain_chains = require("../../chain/chains.js");
|
|
4
|
-
require("../../constants/math.js");
|
|
5
|
+
const require_sdk_constants_math = require("../../constants/math.js");
|
|
5
6
|
require("../../constants/index.js");
|
|
7
|
+
require("../../utils/index.js");
|
|
6
8
|
const require_sdk_base_SDKConstruct = require("../../base/SDKConstruct.js");
|
|
7
9
|
require("../../base/index.js");
|
|
8
10
|
const require_sdk_market_math = require("../math.js");
|
|
9
11
|
const require_sdk_market_credit_createCreditConfigurator = require("./createCreditConfigurator.js");
|
|
10
12
|
const require_sdk_market_credit_createCreditFacade = require("./createCreditFacade.js");
|
|
11
13
|
const require_sdk_market_credit_createCreditManager = require("./createCreditManager.js");
|
|
14
|
+
const require_sdk_market_credit_dominantCollateral = require("./dominantCollateral.js");
|
|
12
15
|
//#region src/sdk/market/credit/CreditSuite.ts
|
|
13
16
|
/**
|
|
14
17
|
* SDK aggregate for one credit-manager branch inside a market.
|
|
@@ -116,6 +119,20 @@ var CreditSuite = class extends require_sdk_base_SDKConstruct.SDKConstruct {
|
|
|
116
119
|
return expirationDate > 0 ? expirationDate : null;
|
|
117
120
|
}
|
|
118
121
|
/**
|
|
122
|
+
* Liquidation fee pair in effect right now, resolving {@link isExpired} once
|
|
123
|
+
* for both.
|
|
124
|
+
*/
|
|
125
|
+
liquidationFees() {
|
|
126
|
+
const cm = this.creditManager;
|
|
127
|
+
return this.isExpired ? {
|
|
128
|
+
feeLiquidation: cm.feeLiquidationExpired,
|
|
129
|
+
liquidationDiscount: cm.liquidationDiscountExpired
|
|
130
|
+
} : {
|
|
131
|
+
feeLiquidation: cm.feeLiquidation,
|
|
132
|
+
liquidationDiscount: cm.liquidationDiscount
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
119
136
|
* Whether this suite can be used right now. A paused pool blocks borrowing,
|
|
120
137
|
* so the suite is unusable even when its own facade is live.
|
|
121
138
|
*/
|
|
@@ -200,6 +217,95 @@ var CreditSuite = class extends require_sdk_base_SDKConstruct.SDKConstruct {
|
|
|
200
217
|
};
|
|
201
218
|
}
|
|
202
219
|
/**
|
|
220
|
+
* Everything a partial liquidation of credit account needs, with any parameter the
|
|
221
|
+
* caller pinned down taken as given and the rest derived from current state.
|
|
222
|
+
*
|
|
223
|
+
* @param ca - Credit account to partially liquidate.
|
|
224
|
+
* @param overrides - Parameters to use instead of the derived defaults.
|
|
225
|
+
* @throws If a derived `tokenOut` cannot be picked, or if the seized token is
|
|
226
|
+
* not a collateral token of this credit manager.
|
|
227
|
+
*/
|
|
228
|
+
partialLiquidationParams(ca, overrides = {}) {
|
|
229
|
+
const tokenOut = overrides.tokenOut ?? this.#bestTokenOut(ca);
|
|
230
|
+
const optimalHF = overrides.optimalHF ?? this.optimalHFForPartialLiquidation(ca);
|
|
231
|
+
const repaidAmount = overrides.repaidAmount ?? this.#optimalRepaidAmount(ca, tokenOut, optimalHF);
|
|
232
|
+
return {
|
|
233
|
+
tokenOut,
|
|
234
|
+
optimalHF,
|
|
235
|
+
repaidAmount,
|
|
236
|
+
minSeizedAmount: overrides.minSeizedAmount ?? this.#minSeizedAmount(tokenOut, repaidAmount)
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Health factor a partial liquidation of `ca` should target, in basis points.
|
|
241
|
+
*
|
|
242
|
+
* @param ca - Credit account to partially liquidate.
|
|
243
|
+
*/
|
|
244
|
+
optimalHFForPartialLiquidation(ca) {
|
|
245
|
+
return require_sdk_market_math.optimalHFForPartialLiquidation(this.#borrowRate(ca));
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Collateral token a partial liquidation seizes by default.
|
|
249
|
+
*
|
|
250
|
+
* Ported from solidity:
|
|
251
|
+
* https://github.com/Gearbox-protocol/router-v3/blob/main/contracts/liquidation/AbstractLiquidator.sol#L270
|
|
252
|
+
*/
|
|
253
|
+
#bestTokenOut(ca) {
|
|
254
|
+
return require_sdk_market_credit_dominantCollateral.mustGetDominantCollateral(ca, this.market);
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Minimum amount of `token` that must be seized when repaying `repaidAmount`
|
|
258
|
+
* of underlying.
|
|
259
|
+
*/
|
|
260
|
+
#minSeizedAmount(token, repaidAmount) {
|
|
261
|
+
const { market } = this;
|
|
262
|
+
const tokenAmount = market.priceOracle.convert(market.underlying, token, repaidAmount);
|
|
263
|
+
return require_sdk_market_math.minSeizedAmount(tokenAmount, this.liquidationFees().liquidationDiscount);
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Amount of underlying to repay to bring `ca`'s health factor close to
|
|
267
|
+
* `optimalHF` by seizing `token`.
|
|
268
|
+
*
|
|
269
|
+
* @throws If `token` is not a collateral token of this credit manager.
|
|
270
|
+
*/
|
|
271
|
+
#optimalRepaidAmount(ca, token, optimalHF) {
|
|
272
|
+
const { creditManager: cm, market } = this;
|
|
273
|
+
const { feeLiquidation, liquidationDiscount } = this.liquidationFees();
|
|
274
|
+
const ltTokenOut = cm.liquidationThresholds.get(token);
|
|
275
|
+
if (ltTokenOut === void 0) throw new Error(`token ${this.labelAddress(token)} is not a collateral token in credit manager ${this.labelAddress(cm.address)}`);
|
|
276
|
+
return require_sdk_market_math.optimalRepaidAmount({
|
|
277
|
+
totalDebt: ca.debt + ca.accruedInterest + ca.accruedFees,
|
|
278
|
+
twvUnderlying: market.priceOracle.convertFromUSD(market.underlying, ca.twvUSD),
|
|
279
|
+
minDebt: this.creditFacade.minDebt,
|
|
280
|
+
optimalHF,
|
|
281
|
+
discount: BigInt(liquidationDiscount) - BigInt(feeLiquidation),
|
|
282
|
+
ltTokenOut: BigInt(ltTokenOut)
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Blended annual cost of credit account's debt, in basis points: base interest weighted
|
|
287
|
+
* by the account's share of its own total debt, plus the quota rates of the
|
|
288
|
+
* collaterals it actually holds, both marked up by the interest fee.
|
|
289
|
+
*/
|
|
290
|
+
#borrowRate(ca) {
|
|
291
|
+
const { creditManager } = this;
|
|
292
|
+
const { pool } = this.market;
|
|
293
|
+
const { feeInterest } = creditManager;
|
|
294
|
+
const { baseInterestRate } = pool.pool;
|
|
295
|
+
const baseRateWithFee = baseInterestRate * (BigInt(feeInterest) + require_sdk_constants_math.PERCENTAGE_FACTOR);
|
|
296
|
+
const totalDebt = ca.debt + ca.accruedInterest + ca.accruedFees;
|
|
297
|
+
const r = ca.debt * baseRateWithFee / (totalDebt * require_sdk_constants_math.RAY);
|
|
298
|
+
const caTokens = new require_sdk_utils_AddressMap.AddressMap(ca.tokens.map((t) => [t.token, t]));
|
|
299
|
+
let qr = 0n;
|
|
300
|
+
for (const t of creditManager.collateralTokens) {
|
|
301
|
+
const b = caTokens.get(t);
|
|
302
|
+
if (b) qr += b.quota * BigInt(pool.pqk.quotas.get(t)?.rate ?? 0);
|
|
303
|
+
}
|
|
304
|
+
qr = qr * (BigInt(feeInterest) + require_sdk_constants_math.PERCENTAGE_FACTOR) / require_sdk_constants_math.PERCENTAGE_FACTOR;
|
|
305
|
+
qr /= totalDebt;
|
|
306
|
+
return r + qr;
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
203
309
|
* Whether the facade, manager, or configurator has observed logs that require
|
|
204
310
|
* a credit-suite resync.
|
|
205
311
|
*/
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
3
|
-
require("
|
|
4
|
-
require("
|
|
5
|
-
|
|
2
|
+
require("../../constants/math.js");
|
|
3
|
+
require("../../constants/index.js");
|
|
4
|
+
const require_sdk_utils_hex = require("../../utils/hex.js");
|
|
5
|
+
require("../../utils/index.js");
|
|
6
|
+
//#region src/sdk/market/credit/dominantCollateral.ts
|
|
6
7
|
/**
|
|
7
8
|
* The account's dominant collateral: the most valuable enabled non-underlying
|
|
8
9
|
* token it holds above dust, by USD value.
|
|
@@ -29,5 +30,18 @@ function dominantCollateral(account, market) {
|
|
|
29
30
|
}
|
|
30
31
|
return dominant;
|
|
31
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* {@link dominantCollateral}, for callers that cannot proceed without one, such
|
|
35
|
+
* as picking the collateral a partial liquidation seizes.
|
|
36
|
+
*
|
|
37
|
+
* @throws If the account holds no enabled non-underlying collateral the oracle
|
|
38
|
+
* can price.
|
|
39
|
+
**/
|
|
40
|
+
function mustGetDominantCollateral(account, market) {
|
|
41
|
+
const collateral = dominantCollateral(account, market);
|
|
42
|
+
if (!collateral) throw new Error(`cannot determine tokenOut for partial liquidation of ${market.sdk.labelAddress(account.creditAccount)}: no enabled non-underlying collateral with value`);
|
|
43
|
+
return collateral;
|
|
44
|
+
}
|
|
32
45
|
//#endregion
|
|
33
46
|
exports.dominantCollateral = dominantCollateral;
|
|
47
|
+
exports.mustGetDominantCollateral = mustGetDominantCollateral;
|
|
@@ -3,6 +3,7 @@ const require_sdk_market_credit_CreditConfiguratorV310Contract = require("./Cred
|
|
|
3
3
|
const require_sdk_market_credit_CreditFacadeV310BaseContract = require("./CreditFacadeV310BaseContract.js");
|
|
4
4
|
const require_sdk_market_credit_CreditFacadeV310Contract = require("./CreditFacadeV310Contract.js");
|
|
5
5
|
const require_sdk_market_credit_CreditManagerV310Contract = require("./CreditManagerV310Contract.js");
|
|
6
|
+
const require_sdk_market_credit_dominantCollateral = require("./dominantCollateral.js");
|
|
6
7
|
const require_sdk_market_credit_CreditSuite = require("./CreditSuite.js");
|
|
7
8
|
require("./types.js");
|
|
8
9
|
exports.CreditConfiguratorV310Contract = require_sdk_market_credit_CreditConfiguratorV310Contract.CreditConfiguratorV310Contract;
|
|
@@ -11,3 +12,5 @@ exports.CreditFacadeV310Contract = require_sdk_market_credit_CreditFacadeV310Con
|
|
|
11
12
|
exports.CreditManagerV310Contract = require_sdk_market_credit_CreditManagerV310Contract.CreditManagerV310Contract;
|
|
12
13
|
exports.CreditSuite = require_sdk_market_credit_CreditSuite.CreditSuite;
|
|
13
14
|
exports.creditFacadeV310Abi = require_sdk_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
15
|
+
exports.dominantCollateral = require_sdk_market_credit_dominantCollateral.dominantCollateral;
|
|
16
|
+
exports.mustGetDominantCollateral = require_sdk_market_credit_dominantCollateral.mustGetDominantCollateral;
|
|
@@ -6,6 +6,7 @@ const require_sdk_market_credit_CreditConfiguratorV310Contract = require("./cred
|
|
|
6
6
|
const require_sdk_market_credit_CreditFacadeV310BaseContract = require("./credit/CreditFacadeV310BaseContract.js");
|
|
7
7
|
const require_sdk_market_credit_CreditFacadeV310Contract = require("./credit/CreditFacadeV310Contract.js");
|
|
8
8
|
const require_sdk_market_credit_CreditManagerV310Contract = require("./credit/CreditManagerV310Contract.js");
|
|
9
|
+
const require_sdk_market_credit_dominantCollateral = require("./credit/dominantCollateral.js");
|
|
9
10
|
const require_sdk_market_credit_CreditSuite = require("./credit/CreditSuite.js");
|
|
10
11
|
require("./credit/index.js");
|
|
11
12
|
const require_sdk_market_pricefeeds_isUpdatablePriceFeed = require("./pricefeeds/isUpdatablePriceFeed.js");
|
|
@@ -112,9 +113,11 @@ exports.createAdapter = require_sdk_market_adapters_createAdapter.createAdapter;
|
|
|
112
113
|
exports.createPriceOracle = require_sdk_market_oracle_createPriceOracle.createPriceOracle;
|
|
113
114
|
exports.createZapper = require_sdk_market_zapper_createZapper.createZapper;
|
|
114
115
|
exports.creditFacadeV310Abi = require_sdk_market_credit_CreditFacadeV310BaseContract.creditFacadeV310Abi;
|
|
116
|
+
exports.dominantCollateral = require_sdk_market_credit_dominantCollateral.dominantCollateral;
|
|
115
117
|
exports.fetchPythPayloads = require_sdk_market_pricefeeds_updates_fetchPythPayloads.fetchPythPayloads;
|
|
116
118
|
exports.fetchRedstonePayloads = require_sdk_market_pricefeeds_updates_fetchRedstonePayloads.fetchRedstonePayloads;
|
|
117
119
|
exports.getRawPriceUpdates = require_sdk_market_pricefeeds_getRawPriceUpdates.getRawPriceUpdates;
|
|
118
120
|
exports.isLPPriceFeed = require_sdk_market_pricefeeds_AbstractLPPriceFeed.isLPPriceFeed;
|
|
119
121
|
exports.isRWAFactory = require_sdk_market_rwa_types.isRWAFactory;
|
|
120
122
|
exports.isUpdatablePriceFeed = require_sdk_market_pricefeeds_isUpdatablePriceFeed.isUpdatablePriceFeed;
|
|
123
|
+
exports.mustGetDominantCollateral = require_sdk_market_credit_dominantCollateral.mustGetDominantCollateral;
|