@venusprotocol/isolated-pools 4.1.0-dev.2 → 4.1.0-dev.4
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/deployments/unichainmainnet/.chainId +1 -0
- package/deployments/unichainmainnet/ComptrollerBeacon.json +206 -0
- package/deployments/unichainmainnet/ComptrollerImpl.json +3396 -0
- package/deployments/unichainmainnet/Comptroller_Core.json +187 -0
- package/deployments/unichainmainnet/DefaultProxyAdmin.json +200 -0
- package/deployments/unichainmainnet/JumpRateModelV2_base0bps_slope1250bps_jump30000bps_kink8000bps.json +608 -0
- package/deployments/unichainmainnet/JumpRateModelV2_base0bps_slope2000bps_jump25000bps_kink8000bps.json +608 -0
- package/deployments/unichainmainnet/JumpRateModelV2_base0bps_slope300bps_jump30000bps_kink8000bps.json +608 -0
- package/deployments/unichainmainnet/JumpRateModelV2_base0bps_slope350bps_jump25000bps_kink8000bps.json +608 -0
- package/deployments/unichainmainnet/NativeTokenGateway_vWETH_Core.json +599 -0
- package/deployments/unichainmainnet/PoolLens.json +1416 -0
- package/deployments/unichainmainnet/PoolRegistry.json +940 -0
- package/deployments/unichainmainnet/PoolRegistry_Implementation.json +1194 -0
- package/deployments/unichainmainnet/PoolRegistry_Proxy.json +262 -0
- package/deployments/unichainmainnet/VTokenBeacon.json +206 -0
- package/deployments/unichainmainnet/VTokenImpl.json +3269 -0
- package/deployments/unichainmainnet/VToken_vUSDC_Core.json +257 -0
- package/deployments/unichainmainnet/VToken_vWETH_Core.json +257 -0
- package/deployments/unichainmainnet/solcInputs/2040335765422e1de87160c828624fdd.json +406 -0
- package/deployments/unichainmainnet/solcInputs/bf6504e8406cd8d7763a8de7cdacad9c.json +454 -0
- package/deployments/unichainmainnet.json +9418 -0
- package/deployments/unichainmainnet_addresses.json +23 -0
- package/dist/deploy/018-native-token-gateway.js +7 -0
- package/dist/deployments/unichainmainnet.json +9418 -0
- package/dist/hardhat.config.js +20 -0
- package/dist/helpers/deploymentConfig.d.ts +9 -0
- package/dist/helpers/deploymentConfig.js +91 -1
- package/package.json +5 -5
package/dist/hardhat.config.js
CHANGED
|
@@ -118,6 +118,11 @@ const getRpcUrl = (networkName) => {
|
|
|
118
118
|
"node_modules/@venusprotocol/protocol-reserve/deployments/unichainsepolia",
|
|
119
119
|
"node_modules/@venusprotocol/governance-contracts/deployments/unichainsepolia",
|
|
120
120
|
],
|
|
121
|
+
unichainmainnet: [
|
|
122
|
+
"node_modules/@venusprotocol/oracle/deployments/unichainmainnet",
|
|
123
|
+
"node_modules/@venusprotocol/protocol-reserve/deployments/unichainmainnet",
|
|
124
|
+
"node_modules/@venusprotocol/governance-contracts/deployments/unichainmainnet",
|
|
125
|
+
],
|
|
121
126
|
},
|
|
122
127
|
};
|
|
123
128
|
if (process.env.HARDHAT_FORK_NETWORK) {
|
|
@@ -365,6 +370,12 @@ const config = {
|
|
|
365
370
|
live: true,
|
|
366
371
|
accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [],
|
|
367
372
|
},
|
|
373
|
+
unichainmainnet: {
|
|
374
|
+
url: process.env.ARCHIVE_NODE_unichainmainnet || "https://mainnet.unichain.org",
|
|
375
|
+
chainId: 130,
|
|
376
|
+
live: true,
|
|
377
|
+
accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [],
|
|
378
|
+
},
|
|
368
379
|
},
|
|
369
380
|
gasReporter: {
|
|
370
381
|
enabled: process.env.REPORT_GAS !== undefined,
|
|
@@ -484,6 +495,14 @@ const config = {
|
|
|
484
495
|
browserURL: "https://sepolia.uniscan.xyz/",
|
|
485
496
|
},
|
|
486
497
|
},
|
|
498
|
+
{
|
|
499
|
+
network: "unichainmainnet",
|
|
500
|
+
chainId: 130,
|
|
501
|
+
urls: {
|
|
502
|
+
apiURL: "https://api.uniscan.xyz/api/",
|
|
503
|
+
browserURL: "https://uniscan.xyz/",
|
|
504
|
+
},
|
|
505
|
+
},
|
|
487
506
|
],
|
|
488
507
|
apiKey: {
|
|
489
508
|
bscmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
|
|
@@ -499,6 +518,7 @@ const config = {
|
|
|
499
518
|
basesepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
|
|
500
519
|
basemainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
|
|
501
520
|
unichainsepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
|
|
521
|
+
unichainmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
|
|
502
522
|
},
|
|
503
523
|
},
|
|
504
524
|
paths: {
|
|
@@ -17,6 +17,7 @@ export type NetworkConfig = {
|
|
|
17
17
|
basesepolia: DeploymentConfig;
|
|
18
18
|
basemainnet: DeploymentConfig;
|
|
19
19
|
unichainsepolia: DeploymentConfig;
|
|
20
|
+
unichainmainnet: DeploymentConfig;
|
|
20
21
|
};
|
|
21
22
|
export type PreconfiguredAddresses = {
|
|
22
23
|
[contract: string]: string;
|
|
@@ -115,6 +116,7 @@ export declare const OP_MAINNET_MULTISIG = "0x2e94dd14E81999CdBF5deDE31938beD730
|
|
|
115
116
|
export declare const BASE_SEPOLIA_MULTISIG = "0xdf3b635d2b535f906BB02abb22AED71346E36a00";
|
|
116
117
|
export declare const BASE_MAINNET_MULTISIG = "0x1803Cf1D3495b43cC628aa1d8638A981F8CD341C";
|
|
117
118
|
export declare const UNICHAIN_SEPOLIA_MULTISIG = "0x9831D3A641E8c7F082EEA75b8249c99be9D09a34";
|
|
119
|
+
export declare const UNICHAIN_MAINNET_MULTISIG = "0x1803Cf1D3495b43cC628aa1d8638A981F8CD341C";
|
|
118
120
|
export declare const preconfiguredAddresses: {
|
|
119
121
|
hardhat: {
|
|
120
122
|
VTreasury: string;
|
|
@@ -238,6 +240,13 @@ export declare const preconfiguredAddresses: {
|
|
|
238
240
|
CriticalTimelock: string;
|
|
239
241
|
AccessControlManager: string;
|
|
240
242
|
};
|
|
243
|
+
unichainmainnet: {
|
|
244
|
+
VTreasury: string;
|
|
245
|
+
NormalTimelock: string;
|
|
246
|
+
FastTrackTimelock: string;
|
|
247
|
+
CriticalTimelock: string;
|
|
248
|
+
AccessControlManager: string;
|
|
249
|
+
};
|
|
241
250
|
};
|
|
242
251
|
export declare const globalConfig: NetworkConfig;
|
|
243
252
|
export declare function getConfig(networkName: string): Promise<DeploymentConfig>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMaxBorrowRateMantissa = exports.getBidderDeploymentValues = exports.getTokenAddress = exports.getTokenConfig = exports.getConfig = exports.globalConfig = exports.preconfiguredAddresses = exports.UNICHAIN_SEPOLIA_MULTISIG = exports.BASE_MAINNET_MULTISIG = exports.BASE_SEPOLIA_MULTISIG = exports.OP_MAINNET_MULTISIG = exports.OP_SEPOLIA_MULTISIG = exports.ZKSYNC_MAINNET_MULTISIG = exports.ZKSYNC_SEPOLIA_MULTISIG = exports.ARBITRUM_ONE_MULTISIG = exports.ARBITRUM_SEPOLIA_MULTISIG = exports.OPBNBMAINNET_MULTISIG = exports.OPBNBTESTNET_MULTISIG = exports.ETHEREUM_MULTISIG = exports.SEPOLIA_MULTISIG = exports.blocksPerYear = exports.SECONDS_PER_YEAR = exports.OPBNB_BLOCKS_PER_YEAR = exports.ETH_BLOCKS_PER_YEAR = exports.BSC_BLOCKS_PER_YEAR = exports.InterestRateModels = void 0;
|
|
3
|
+
exports.getMaxBorrowRateMantissa = exports.getBidderDeploymentValues = exports.getTokenAddress = exports.getTokenConfig = exports.getConfig = exports.globalConfig = exports.preconfiguredAddresses = exports.UNICHAIN_MAINNET_MULTISIG = exports.UNICHAIN_SEPOLIA_MULTISIG = exports.BASE_MAINNET_MULTISIG = exports.BASE_SEPOLIA_MULTISIG = exports.OP_MAINNET_MULTISIG = exports.OP_SEPOLIA_MULTISIG = exports.ZKSYNC_MAINNET_MULTISIG = exports.ZKSYNC_SEPOLIA_MULTISIG = exports.ARBITRUM_ONE_MULTISIG = exports.ARBITRUM_SEPOLIA_MULTISIG = exports.OPBNBMAINNET_MULTISIG = exports.OPBNBTESTNET_MULTISIG = exports.ETHEREUM_MULTISIG = exports.SEPOLIA_MULTISIG = exports.blocksPerYear = exports.SECONDS_PER_YEAR = exports.OPBNB_BLOCKS_PER_YEAR = exports.ETH_BLOCKS_PER_YEAR = exports.BSC_BLOCKS_PER_YEAR = exports.InterestRateModels = void 0;
|
|
4
4
|
const arbitrumone_json_1 = require("@venusprotocol/governance-contracts/deployments/arbitrumone.json");
|
|
5
5
|
const arbitrumsepolia_json_1 = require("@venusprotocol/governance-contracts/deployments/arbitrumsepolia.json");
|
|
6
6
|
const basemainnet_json_1 = require("@venusprotocol/governance-contracts/deployments/basemainnet.json");
|
|
@@ -54,6 +54,7 @@ exports.blocksPerYear = {
|
|
|
54
54
|
basesepolia: 0,
|
|
55
55
|
basemainnet: 0,
|
|
56
56
|
unichainsepolia: 0,
|
|
57
|
+
unichainmainnet: 0,
|
|
57
58
|
isTimeBased: 0, // for time based contracts
|
|
58
59
|
};
|
|
59
60
|
exports.SEPOLIA_MULTISIG = "0x94fa6078b6b8a26f0b6edffbe6501b22a10470fb";
|
|
@@ -69,6 +70,7 @@ exports.OP_MAINNET_MULTISIG = "0x2e94dd14E81999CdBF5deDE31938beD7308354b3";
|
|
|
69
70
|
exports.BASE_SEPOLIA_MULTISIG = "0xdf3b635d2b535f906BB02abb22AED71346E36a00";
|
|
70
71
|
exports.BASE_MAINNET_MULTISIG = "0x1803Cf1D3495b43cC628aa1d8638A981F8CD341C";
|
|
71
72
|
exports.UNICHAIN_SEPOLIA_MULTISIG = "0x9831D3A641E8c7F082EEA75b8249c99be9D09a34";
|
|
73
|
+
exports.UNICHAIN_MAINNET_MULTISIG = "0x1803Cf1D3495b43cC628aa1d8638A981F8CD341C";
|
|
72
74
|
const DEFAULT_REDUCE_RESERVES_BLOCK_DELTA = "7200";
|
|
73
75
|
const REDUCE_RESERVES_BLOCK_DELTA_ETHEREUM = "7200";
|
|
74
76
|
const REDUCE_RESERVES_BLOCK_DELTA_OPBNBTESTNET = "300";
|
|
@@ -82,6 +84,7 @@ const REDUCE_RESERVES_BLOCK_DELTA_OP_MAINNET = "86400";
|
|
|
82
84
|
const REDUCE_RESERVES_BLOCK_DELTA_BASE_SEPOLIA = "86400";
|
|
83
85
|
const REDUCE_RESERVES_BLOCK_DELTA_BASE_MAINNET = "86400";
|
|
84
86
|
const REDUCE_RESERVES_BLOCK_DELTA_UNICHAIN_SEPOLIA = "86400";
|
|
87
|
+
const REDUCE_RESERVES_BLOCK_DELTA_UNICHAIN_MAINNET = "86400";
|
|
85
88
|
exports.preconfiguredAddresses = {
|
|
86
89
|
hardhat: {
|
|
87
90
|
VTreasury: "account:deployer",
|
|
@@ -205,6 +208,13 @@ exports.preconfiguredAddresses = {
|
|
|
205
208
|
CriticalTimelock: exports.UNICHAIN_SEPOLIA_MULTISIG,
|
|
206
209
|
AccessControlManager: "0x854C064EA6b503A97980F481FA3B7279012fdeDd",
|
|
207
210
|
},
|
|
211
|
+
unichainmainnet: {
|
|
212
|
+
VTreasury: "0x958F4C84d3ad523Fa9936Dc465A123C7AD43D69B",
|
|
213
|
+
NormalTimelock: exports.UNICHAIN_MAINNET_MULTISIG,
|
|
214
|
+
FastTrackTimelock: exports.UNICHAIN_MAINNET_MULTISIG,
|
|
215
|
+
CriticalTimelock: exports.UNICHAIN_MAINNET_MULTISIG,
|
|
216
|
+
AccessControlManager: "0x1f12014c497a9d905155eB9BfDD9FaC6885e61d0",
|
|
217
|
+
},
|
|
208
218
|
};
|
|
209
219
|
const poolRegistryPermissions = () => {
|
|
210
220
|
const methods = [
|
|
@@ -7005,6 +7015,84 @@ exports.globalConfig = {
|
|
|
7005
7015
|
],
|
|
7006
7016
|
preconfiguredAddresses: exports.preconfiguredAddresses.unichainsepolia,
|
|
7007
7017
|
},
|
|
7018
|
+
unichainmainnet: {
|
|
7019
|
+
tokensConfig: [
|
|
7020
|
+
{
|
|
7021
|
+
isMock: false,
|
|
7022
|
+
name: "USD Coin",
|
|
7023
|
+
symbol: "USDC",
|
|
7024
|
+
decimals: 6,
|
|
7025
|
+
tokenAddress: "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
|
|
7026
|
+
},
|
|
7027
|
+
{
|
|
7028
|
+
isMock: false,
|
|
7029
|
+
name: "Wrapped Ether",
|
|
7030
|
+
symbol: "WETH",
|
|
7031
|
+
decimals: 18,
|
|
7032
|
+
tokenAddress: "0x4200000000000000000000000000000000000006",
|
|
7033
|
+
},
|
|
7034
|
+
{
|
|
7035
|
+
isMock: false,
|
|
7036
|
+
name: "Venus",
|
|
7037
|
+
symbol: "XVS",
|
|
7038
|
+
decimals: 18,
|
|
7039
|
+
tokenAddress: "0x81908BBaad3f6fC74093540Ab2E9B749BB62aA0d",
|
|
7040
|
+
},
|
|
7041
|
+
],
|
|
7042
|
+
poolConfig: [
|
|
7043
|
+
{
|
|
7044
|
+
id: "Core",
|
|
7045
|
+
name: "Core",
|
|
7046
|
+
closeFactor: (0, utils_1.convertToUnit)("0.5", 18),
|
|
7047
|
+
liquidationIncentive: (0, utils_1.convertToUnit)("1.1", 18),
|
|
7048
|
+
minLiquidatableCollateral: (0, utils_1.convertToUnit)("100", 18),
|
|
7049
|
+
vtokens: [
|
|
7050
|
+
{
|
|
7051
|
+
name: "Venus USDC (Core)",
|
|
7052
|
+
asset: "USDC",
|
|
7053
|
+
symbol: "vUSDC_Core",
|
|
7054
|
+
rateModel: InterestRateModels.JumpRate.toString(),
|
|
7055
|
+
baseRatePerYear: "0",
|
|
7056
|
+
multiplierPerYear: (0, utils_1.convertToUnit)("0.125", 18),
|
|
7057
|
+
jumpMultiplierPerYear: (0, utils_1.convertToUnit)("3", 18),
|
|
7058
|
+
kink_: (0, utils_1.convertToUnit)("0.8", 18),
|
|
7059
|
+
collateralFactor: (0, utils_1.convertToUnit)("0.70", 18),
|
|
7060
|
+
liquidationThreshold: (0, utils_1.convertToUnit)("0.75", 18),
|
|
7061
|
+
reserveFactor: (0, utils_1.convertToUnit)("0.1", 18),
|
|
7062
|
+
initialSupply: (0, utils_1.convertToUnit)("5000", 6),
|
|
7063
|
+
supplyCap: (0, utils_1.convertToUnit)(1000000, 6),
|
|
7064
|
+
borrowCap: (0, utils_1.convertToUnit)(850000, 6),
|
|
7065
|
+
reduceReservesBlockDelta: REDUCE_RESERVES_BLOCK_DELTA_UNICHAIN_MAINNET,
|
|
7066
|
+
vTokenReceiver: exports.preconfiguredAddresses.unichainmainnet.VTreasury,
|
|
7067
|
+
},
|
|
7068
|
+
{
|
|
7069
|
+
name: "Venus WETH (Core)",
|
|
7070
|
+
asset: "WETH",
|
|
7071
|
+
symbol: "vWETH_Core",
|
|
7072
|
+
rateModel: InterestRateModels.JumpRate.toString(),
|
|
7073
|
+
baseRatePerYear: "0",
|
|
7074
|
+
multiplierPerYear: (0, utils_1.convertToUnit)("0.03", 18),
|
|
7075
|
+
jumpMultiplierPerYear: (0, utils_1.convertToUnit)("3", 18),
|
|
7076
|
+
kink_: (0, utils_1.convertToUnit)("0.8", 18),
|
|
7077
|
+
collateralFactor: (0, utils_1.convertToUnit)("0.70", 18),
|
|
7078
|
+
liquidationThreshold: (0, utils_1.convertToUnit)("0.75", 18),
|
|
7079
|
+
reserveFactor: (0, utils_1.convertToUnit)("0.1", 18),
|
|
7080
|
+
initialSupply: (0, utils_1.convertToUnit)("3", 18),
|
|
7081
|
+
supplyCap: (0, utils_1.convertToUnit)("350", 18),
|
|
7082
|
+
borrowCap: (0, utils_1.convertToUnit)("300", 18),
|
|
7083
|
+
reduceReservesBlockDelta: REDUCE_RESERVES_BLOCK_DELTA_UNICHAIN_MAINNET,
|
|
7084
|
+
vTokenReceiver: exports.preconfiguredAddresses.unichainmainnet.VTreasury,
|
|
7085
|
+
},
|
|
7086
|
+
],
|
|
7087
|
+
rewards: [],
|
|
7088
|
+
},
|
|
7089
|
+
],
|
|
7090
|
+
accessControlConfig: [
|
|
7091
|
+
...poolRegistryPermissions(),
|
|
7092
|
+
...normalTimelockPermissions(exports.preconfiguredAddresses.unichainmainnet.NormalTimelock),
|
|
7093
|
+
],
|
|
7094
|
+
preconfiguredAddresses: exports.preconfiguredAddresses.unichainmainnet,
|
|
7095
|
+
},
|
|
7008
7096
|
};
|
|
7009
7097
|
async function getConfig(networkName) {
|
|
7010
7098
|
switch (networkName) {
|
|
@@ -7040,6 +7128,8 @@ async function getConfig(networkName) {
|
|
|
7040
7128
|
return exports.globalConfig.basemainnet;
|
|
7041
7129
|
case "unichainsepolia":
|
|
7042
7130
|
return exports.globalConfig.unichainsepolia;
|
|
7131
|
+
case "unichainmainnet":
|
|
7132
|
+
return exports.globalConfig.unichainmainnet;
|
|
7043
7133
|
case "development":
|
|
7044
7134
|
return exports.globalConfig.bsctestnet;
|
|
7045
7135
|
default:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@venusprotocol/isolated-pools",
|
|
3
|
-
"version": "4.1.0-dev.
|
|
3
|
+
"version": "4.1.0-dev.4",
|
|
4
4
|
"description": "",
|
|
5
5
|
"files": [
|
|
6
6
|
"artifacts",
|
|
@@ -77,10 +77,10 @@
|
|
|
77
77
|
"@types/node": "^12.20.50",
|
|
78
78
|
"@typescript-eslint/eslint-plugin": "^5.27.1",
|
|
79
79
|
"@typescript-eslint/parser": "^5.27.1",
|
|
80
|
-
"@venusprotocol/governance-contracts": "2.
|
|
81
|
-
"@venusprotocol/oracle": "2.
|
|
82
|
-
"@venusprotocol/protocol-reserve": "3.
|
|
83
|
-
"@venusprotocol/venus-protocol": "9.
|
|
80
|
+
"@venusprotocol/governance-contracts": "2.9.0",
|
|
81
|
+
"@venusprotocol/oracle": "2.10.0",
|
|
82
|
+
"@venusprotocol/protocol-reserve": "3.2.0",
|
|
83
|
+
"@venusprotocol/venus-protocol": "9.7.0",
|
|
84
84
|
"bignumber.js": "9.0.0",
|
|
85
85
|
"chai": "^4.3.6",
|
|
86
86
|
"dotenv": "^10.0.0",
|