@gearbox-protocol/deploy-tools 5.45.7 → 5.45.9
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/index.mjs +63 -27
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -406546,6 +406546,26 @@ var Hooks = class {
|
|
|
406546
406546
|
}
|
|
406547
406547
|
};
|
|
406548
406548
|
|
|
406549
|
+
// ../../node_modules/@gearbox-protocol/sdk/dist/esm/sdk/router/helpers.js
|
|
406550
|
+
function balancesMap(assets) {
|
|
406551
|
+
return new AddressMap(assets.map(({ token, balance }) => [token, balance]));
|
|
406552
|
+
}
|
|
406553
|
+
function compareRouterResults(a, b) {
|
|
406554
|
+
return a.amount > b.amount ? a : b;
|
|
406555
|
+
}
|
|
406556
|
+
function assetsMap(assets) {
|
|
406557
|
+
return new AddressMap(assets.map((a) => [a.token, a]));
|
|
406558
|
+
}
|
|
406559
|
+
var TOKEN = "0x19ebd191f7a24ece672ba13a302212b5ef7f35cb".toLowerCase();
|
|
406560
|
+
var THRESHOLD = 5n * 10n ** 17n;
|
|
406561
|
+
function limitLeftover(balance, token) {
|
|
406562
|
+
const leftoverBalance = balance ?? 0n;
|
|
406563
|
+
if (token.toLowerCase() === TOKEN && leftoverBalance < THRESHOLD) {
|
|
406564
|
+
return THRESHOLD;
|
|
406565
|
+
}
|
|
406566
|
+
return balance;
|
|
406567
|
+
}
|
|
406568
|
+
|
|
406549
406569
|
// ../../node_modules/@gearbox-protocol/sdk/dist/esm/sdk/router/AbstractRouterContract.js
|
|
406550
406570
|
var AbstractRouterContract = class extends BaseContract {
|
|
406551
406571
|
hooks = new Hooks();
|
|
@@ -406561,7 +406581,7 @@ var AbstractRouterContract = class extends BaseContract {
|
|
|
406561
406581
|
expected.upsert(token, { token, balance: actual > 10n ? actual : 0n });
|
|
406562
406582
|
leftover.upsert(token, {
|
|
406563
406583
|
token,
|
|
406564
|
-
balance: leftoverBalances.get(token)?.balance || 1n
|
|
406584
|
+
balance: limitLeftover(leftoverBalances.get(token)?.balance || 1n, token) ?? 1n
|
|
406565
406585
|
});
|
|
406566
406586
|
}
|
|
406567
406587
|
return {
|
|
@@ -406581,7 +406601,10 @@ var AbstractRouterContract = class extends BaseContract {
|
|
|
406581
406601
|
const decimals = this.sdk.tokensMeta.decimals(token);
|
|
406582
406602
|
const minBalance = 10n ** BigInt(Math.max(8, decimals) - 8);
|
|
406583
406603
|
if (keepAssetsSet.has(token.toLowerCase()) || balance < minBalance || !isEnabled) {
|
|
406584
|
-
leftoverBalances.upsert(token, {
|
|
406604
|
+
leftoverBalances.upsert(token, {
|
|
406605
|
+
token,
|
|
406606
|
+
balance: limitLeftover(balance, token) ?? balance
|
|
406607
|
+
});
|
|
406585
406608
|
}
|
|
406586
406609
|
}
|
|
406587
406610
|
return {
|
|
@@ -406592,17 +406615,6 @@ var AbstractRouterContract = class extends BaseContract {
|
|
|
406592
406615
|
}
|
|
406593
406616
|
};
|
|
406594
406617
|
|
|
406595
|
-
// ../../node_modules/@gearbox-protocol/sdk/dist/esm/sdk/router/helpers.js
|
|
406596
|
-
function balancesMap(assets) {
|
|
406597
|
-
return new AddressMap(assets.map(({ token, balance }) => [token, balance]));
|
|
406598
|
-
}
|
|
406599
|
-
function compareRouterResults(a, b) {
|
|
406600
|
-
return a.amount > b.amount ? a : b;
|
|
406601
|
-
}
|
|
406602
|
-
function assetsMap(assets) {
|
|
406603
|
-
return new AddressMap(assets.map((a) => [a.token, a]));
|
|
406604
|
-
}
|
|
406605
|
-
|
|
406606
406618
|
// ../../node_modules/@gearbox-protocol/sdk/dist/esm/sdk/router/PathOptionFactory.js
|
|
406607
406619
|
var PathOptionFactory = class _PathOptionFactory {
|
|
406608
406620
|
// TODO: get rid of token data from SDK
|
|
@@ -406731,7 +406743,7 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406731
406743
|
tokenOut,
|
|
406732
406744
|
connectors: connectors2,
|
|
406733
406745
|
amount,
|
|
406734
|
-
leftoverAmount
|
|
406746
|
+
leftoverAmount: limitLeftover(leftoverAmount, tokenIn) ?? 0n
|
|
406735
406747
|
};
|
|
406736
406748
|
const { result } = await this.contract.simulate.findAllSwaps(
|
|
406737
406749
|
[swapTask, BigInt(slippage)],
|
|
@@ -406805,7 +406817,7 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406805
406817
|
}));
|
|
406806
406818
|
const leftover = cm.collateralTokens.map((token) => ({
|
|
406807
406819
|
token,
|
|
406808
|
-
balance: leftoverMap.get(token) ?? 0n
|
|
406820
|
+
balance: limitLeftover(leftoverMap.get(token), token) ?? 0n
|
|
406809
406821
|
}));
|
|
406810
406822
|
const connectors2 = this.getAvailableConnectors(cm.collateralTokens);
|
|
406811
406823
|
const {
|
|
@@ -406850,7 +406862,12 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406850
406862
|
slippage,
|
|
406851
406863
|
balances
|
|
406852
406864
|
}) {
|
|
406853
|
-
const {
|
|
406865
|
+
const {
|
|
406866
|
+
pathOptions,
|
|
406867
|
+
expected,
|
|
406868
|
+
leftover: leftoverUnsafe,
|
|
406869
|
+
connectors: connectors2
|
|
406870
|
+
} = this.getFindClosePathInput(
|
|
406854
406871
|
ca,
|
|
406855
406872
|
cm,
|
|
406856
406873
|
balances ? {
|
|
@@ -406859,6 +406876,10 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406859
406876
|
tokensToClaim: assetsMap(balances.tokensToClaim || [])
|
|
406860
406877
|
} : void 0
|
|
406861
406878
|
);
|
|
406879
|
+
const leftover = leftoverUnsafe.map((a) => ({
|
|
406880
|
+
...a,
|
|
406881
|
+
balance: limitLeftover(a.balance, a.token) ?? 0n
|
|
406882
|
+
}));
|
|
406862
406883
|
await this.hooks.triggerHooks("foundPathOptions", {
|
|
406863
406884
|
creditAccount: ca.creditAccount,
|
|
406864
406885
|
pathOptions,
|
|
@@ -406921,6 +406942,10 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406921
406942
|
balances,
|
|
406922
406943
|
keepAssets
|
|
406923
406944
|
);
|
|
406945
|
+
const leftover = leftoverBalances.values().map((a) => ({
|
|
406946
|
+
...a,
|
|
406947
|
+
balance: limitLeftover(a.balance, a.token) ?? 0n
|
|
406948
|
+
}));
|
|
406924
406949
|
const pathOptions = PathOptionFactory.generatePathOptions(
|
|
406925
406950
|
ca.tokens,
|
|
406926
406951
|
this.provider.networkType,
|
|
@@ -406929,7 +406954,7 @@ var RouterV300Contract = class extends AbstractRouterContract {
|
|
|
406929
406954
|
const connectors2 = this.getAvailableConnectors(cm.collateralTokens);
|
|
406930
406955
|
return {
|
|
406931
406956
|
expected: expectedBalances.values(),
|
|
406932
|
-
leftover
|
|
406957
|
+
leftover,
|
|
406933
406958
|
connectors: connectors2,
|
|
406934
406959
|
pathOptions
|
|
406935
406960
|
};
|
|
@@ -407115,7 +407140,7 @@ var RouterV310Contract = class extends AbstractRouterContract {
|
|
|
407115
407140
|
(token) => ({
|
|
407116
407141
|
token,
|
|
407117
407142
|
balance: expectedMap.get(token) ?? 0n,
|
|
407118
|
-
leftoverBalance: leftoverMap.get(token) ?? 0n,
|
|
407143
|
+
leftoverBalance: limitLeftover(leftoverMap.get(token), token) ?? 0n,
|
|
407119
407144
|
numSplits: getNumSplits(token),
|
|
407120
407145
|
claimRewards: false
|
|
407121
407146
|
})
|
|
@@ -407199,7 +407224,7 @@ var RouterV310Contract = class extends AbstractRouterContract {
|
|
|
407199
407224
|
tData.push({
|
|
407200
407225
|
token,
|
|
407201
407226
|
balance: expectedBalances.get(token)?.balance || 0n,
|
|
407202
|
-
leftoverBalance: leftoverBalances.get(token)?.balance
|
|
407227
|
+
leftoverBalance: limitLeftover(leftoverBalances.get(token)?.balance, token) ?? 0n,
|
|
407203
407228
|
numSplits: getNumSplits(token),
|
|
407204
407229
|
claimRewards: !!tokensToClaim.get(token)
|
|
407205
407230
|
});
|
|
@@ -407331,7 +407356,10 @@ function balancesAfterOpen(target, targetAmount, expected, leftover) {
|
|
|
407331
407356
|
if (t === targetAddr) {
|
|
407332
407357
|
result[t] = (expected.get(t) ?? 0n) + targetAmount;
|
|
407333
407358
|
} else {
|
|
407334
|
-
result[t] = BigIntMath.min(
|
|
407359
|
+
result[t] = BigIntMath.min(
|
|
407360
|
+
expected.get(t) ?? 0n,
|
|
407361
|
+
limitLeftover(leftover.get(t), t) ?? 0n
|
|
407362
|
+
);
|
|
407335
407363
|
}
|
|
407336
407364
|
}
|
|
407337
407365
|
return result;
|
|
@@ -416856,7 +416884,10 @@ var PriceOracleBaseContract = class extends BaseContract {
|
|
|
416856
416884
|
const { to: priceFeed, callData, description } = tx.raw;
|
|
416857
416885
|
const [token, reserve] = this.findTokenForPriceFeed(priceFeed);
|
|
416858
416886
|
if (!token) {
|
|
416887
|
+
const mains = this.mainPriceFeeds.values().map((v) => v.address);
|
|
416888
|
+
const reserves = this.reservePriceFeeds.values().map((v) => v.address);
|
|
416859
416889
|
this.logger?.debug(
|
|
416890
|
+
{ mainPriceFeeds: mains, reservePriceFeeds: reserves },
|
|
416860
416891
|
`skipping onDemandPriceUpdate ${description}): token not found for price feed ${priceFeed} in oracle ${this.address}`
|
|
416861
416892
|
);
|
|
416862
416893
|
continue;
|
|
@@ -417055,12 +417086,12 @@ var PriceOracleBaseContract = class extends BaseContract {
|
|
|
417055
417086
|
*/
|
|
417056
417087
|
findTokenForPriceFeed(priceFeed) {
|
|
417057
417088
|
for (const [token, pf] of this.mainPriceFeeds.entries()) {
|
|
417058
|
-
if (pf.address
|
|
417089
|
+
if (hexEq(pf.address, priceFeed)) {
|
|
417059
417090
|
return [token, false];
|
|
417060
417091
|
}
|
|
417061
417092
|
}
|
|
417062
417093
|
for (const [token, pf] of this.reservePriceFeeds.entries()) {
|
|
417063
|
-
if (pf.address
|
|
417094
|
+
if (hexEq(pf.address, priceFeed)) {
|
|
417064
417095
|
return [token, true];
|
|
417065
417096
|
}
|
|
417066
417097
|
}
|
|
@@ -446362,7 +446393,7 @@ function defillamaTest() {
|
|
|
446362
446393
|
anvilUrl = "http://127.0.0.1:8545",
|
|
446363
446394
|
outputDir,
|
|
446364
446395
|
gasLimit = "550000000",
|
|
446365
|
-
pageSize = "
|
|
446396
|
+
pageSize = "1000"
|
|
446366
446397
|
} = opts;
|
|
446367
446398
|
const transportOptions = getSDKTransportOptions({
|
|
446368
446399
|
...opts,
|
|
@@ -446426,13 +446457,18 @@ function defillamaTest() {
|
|
|
446426
446457
|
}
|
|
446427
446458
|
const creditManagers = {};
|
|
446428
446459
|
for (const suite of sdk.marketRegister.creditManagers) {
|
|
446429
|
-
|
|
446460
|
+
let creditAccounts = await loadCreditAccounts(
|
|
446430
446461
|
sdk,
|
|
446431
446462
|
address,
|
|
446432
446463
|
suite,
|
|
446433
446464
|
Number(pageSize)
|
|
446434
446465
|
);
|
|
446466
|
+
const total = creditAccounts.length;
|
|
446467
|
+
creditAccounts = creditAccounts.filter((ca) => !!ca.debt);
|
|
446435
446468
|
creditManagers[suite.creditManager.address] = creditAccounts;
|
|
446469
|
+
log_default.info(
|
|
446470
|
+
`got ${creditAccounts.length}/${total} credit accounts for ${sdk.provider.addressLabels.get(suite.creditManager.address)}`
|
|
446471
|
+
);
|
|
446436
446472
|
}
|
|
446437
446473
|
const outDir = outputDir ?? process.cwd();
|
|
446438
446474
|
await mkdir2(outDir, { recursive: true });
|
|
@@ -446465,7 +446501,7 @@ async function loadCreditAccounts(sdk, compressor, suite, limit) {
|
|
|
446465
446501
|
log_default.debug(
|
|
446466
446502
|
`got ${creditAccounts.length} credit accounts for ${sdk.provider.addressLabels.get(suite.creditManager.address)} page ${page}`
|
|
446467
446503
|
);
|
|
446468
|
-
} while (creditAccounts.length
|
|
446504
|
+
} while (creditAccounts.length === limit);
|
|
446469
446505
|
return result;
|
|
446470
446506
|
}
|
|
446471
446507
|
async function loadPage(sdk, compressor, suite, offset, limit) {
|
|
@@ -446765,7 +446801,7 @@ function getRenderer(opts) {
|
|
|
446765
446801
|
var package_default = {
|
|
446766
446802
|
name: "@gearbox-protocol/deploy-tools",
|
|
446767
446803
|
description: "Gearbox deploy tools",
|
|
446768
|
-
version: "5.45.
|
|
446804
|
+
version: "5.45.9",
|
|
446769
446805
|
homepage: "https://gearbox.fi",
|
|
446770
446806
|
keywords: [
|
|
446771
446807
|
"gearbox"
|
|
@@ -446805,7 +446841,7 @@ var package_default = {
|
|
|
446805
446841
|
"@gearbox-protocol/deploy-tools-node": "0.0.0",
|
|
446806
446842
|
"@gearbox-protocol/deploy-tools-shared": "0.0.0",
|
|
446807
446843
|
"@gearbox-protocol/deploy-tools-types": "0.0.0",
|
|
446808
|
-
"@gearbox-protocol/sdk": "8.24.
|
|
446844
|
+
"@gearbox-protocol/sdk": "8.24.7",
|
|
446809
446845
|
"@gearbox-protocol/sdk-gov": "2.37.0",
|
|
446810
446846
|
"@types/lodash-es": "^4.17.12",
|
|
446811
446847
|
"@types/node": "^24.3.0",
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gearbox-protocol/deploy-tools",
|
|
3
3
|
"description": "Gearbox deploy tools",
|
|
4
|
-
"version": "5.45.
|
|
4
|
+
"version": "5.45.9",
|
|
5
5
|
"homepage": "https://gearbox.fi",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"gearbox"
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@gearbox-protocol/deploy-tools-node": "0.0.0",
|
|
42
42
|
"@gearbox-protocol/deploy-tools-shared": "0.0.0",
|
|
43
43
|
"@gearbox-protocol/deploy-tools-types": "0.0.0",
|
|
44
|
-
"@gearbox-protocol/sdk": "8.24.
|
|
44
|
+
"@gearbox-protocol/sdk": "8.24.7",
|
|
45
45
|
"@gearbox-protocol/sdk-gov": "2.37.0",
|
|
46
46
|
"@types/lodash-es": "^4.17.12",
|
|
47
47
|
"@types/node": "^24.3.0",
|