@venusprotocol/venus-protocol 7.3.0-dev.3 → 7.3.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/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/access/Ownable2Step.sol/Ownable2Step.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +4 -0
- package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +297 -0
- package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +4 -0
- package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +233 -0
- package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
- package/artifacts/@openzeppelin/contracts-upgradeable/utils/math/SafeCastUpgradeable.sol/SafeCastUpgradeable.dbg.json +1 -1
- package/artifacts/build-info/5d3c5040759360fa4c28ba5b26a6b9f1.json +1 -0
- package/artifacts/contracts/Governance/VTreasuryV8.sol/VTreasuryV8.dbg.json +1 -1
- package/artifacts/contracts/test/MockToken.sol/MockToken.dbg.json +4 -0
- package/artifacts/contracts/test/MockToken.sol/MockToken.json +315 -0
- package/contracts/test/MockToken.sol +22 -0
- package/deploy/010-deploy-mock-tokens.ts +30 -0
- package/deploy/011-deploy-markets.ts +92 -0
- package/deployments/bscmainnet/JumpRateModel_base0bps_slope687bps_jump25000bps_kink8000bps.json +380 -0
- package/deployments/bscmainnet/solcInputs/7830d2b3dd486e9651687b362529ec15.json +345 -0
- package/deployments/bscmainnet/vFDUSD_Proxy.json +2382 -0
- package/deployments/bscmainnet.json +11054 -11355
- package/deployments/bscmainnet_addresses.json +2 -1
- package/deployments/bsctestnet/JumpRateModel_base0bps_slope687bps_jump25000bps_kink8000bps.json +380 -0
- package/deployments/bsctestnet/MockFDUSD.json +458 -0
- package/deployments/bsctestnet/solcInputs/7830d2b3dd486e9651687b362529ec15.json +345 -0
- package/deployments/bsctestnet/solcInputs/f4ba922efa57be24c0606389b67afaaa.json +46 -0
- package/deployments/bsctestnet/vFDUSD_Proxy.json +2382 -0
- package/deployments/bsctestnet.json +17362 -17871
- package/deployments/bsctestnet_addresses.json +3 -1
- package/dist/deploy/010-deploy-mock-tokens.d.ts +3 -0
- package/dist/deploy/010-deploy-mock-tokens.js +24 -0
- package/dist/deploy/011-deploy-markets.d.ts +3 -0
- package/dist/deploy/011-deploy-markets.js +76 -0
- package/dist/deployments/bscmainnet.json +11054 -11355
- package/dist/deployments/bscmainnet_addresses.json +202 -0
- package/dist/deployments/bsctestnet.json +17362 -17871
- package/dist/deployments/bsctestnet_addresses.json +121 -0
- package/dist/hardhat.config.js +1 -3
- package/dist/helpers/deploymentConfig.d.ts +47 -0
- package/dist/helpers/deploymentConfig.js +157 -0
- package/dist/helpers/utils.d.ts +2 -0
- package/dist/helpers/utils.js +27 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/ERC20.d.ts +198 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/ERC20.js +3 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts +166 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js +3 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
- package/dist/typechain/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
- package/dist/typechain/contracts/test/MockToken.d.ts +214 -0
- package/dist/typechain/contracts/test/MockToken.js +3 -0
- package/dist/typechain/contracts/test/index.d.ts +1 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts +239 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js +326 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts +178 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js +239 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js +3 -1
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
- package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/index.js +3 -1
- package/dist/typechain/factories/contracts/test/MockToken__factory.d.ts +253 -0
- package/dist/typechain/factories/contracts/test/MockToken__factory.js +344 -0
- package/dist/typechain/factories/contracts/test/index.d.ts +1 -0
- package/dist/typechain/factories/contracts/test/index.js +3 -1
- package/dist/typechain/index.d.ts +6 -0
- package/dist/typechain/index.js +12 -6
- package/package.json +1 -1
- package/artifacts/build-info/836b5274e4a94df50d1ff043d8579f59.json +0 -1
- package/deployments/bscmainnet/Comptroller.json +0 -2237
- package/deployments/bsctestnet/Comptroller.json +0 -2754
|
@@ -5,14 +5,15 @@
|
|
|
5
5
|
"AccessControlManagerMockTest": "0x4eA05Cb383a258212C46D19299d6e7F14D79fDEC",
|
|
6
6
|
"BTCB": "0xA808e341e8e723DC6BA0Bb5204Bafc2330d7B8e4",
|
|
7
7
|
"BUSD": "0x8301F2213c0eeD49a7E28Ae4c3e91722919B8B47",
|
|
8
|
-
"Comptroller": "0xfd301ad2503b25a7670a45b11a043c20b04ee896",
|
|
9
8
|
"ComptrollerLens": "0x350d56985A269C148648207E4Cea9f87656E762a",
|
|
10
9
|
"DefaultProxyAdmin": "0x7877ffd62649b6a1557b55d4c20fcbab17344c91",
|
|
11
10
|
"ETH": "0x98f7A83361F7Ac8765CcEBAB1425da6b341958a7",
|
|
11
|
+
"JumpRateModel_base0bps_slope687bps_jump25000bps_kink8000bps": "0xf59B7f2733a549dCF82b804d69d9c6a38985B90B",
|
|
12
12
|
"LTC": "0x969F147B6b8D81f86175de33206A4FD43dF17913",
|
|
13
13
|
"Liquidator": "0x55AEABa76ecf144031Ef64E222166eb28Cb4865F",
|
|
14
14
|
"Liquidator_Implementation": "0x83372155dd4a4306af82795d5a27d40188ed1f3b",
|
|
15
15
|
"Liquidator_Proxy": "0x55AEABa76ecf144031Ef64E222166eb28Cb4865F",
|
|
16
|
+
"MockFDUSD": "0xcF27439fA231af9931ee40c4f27Bb77B83826F3C",
|
|
16
17
|
"PegStability_USDT": "0xB21E69eef4Bc1D64903fa28D9b32491B1c0786F1",
|
|
17
18
|
"PegStability_USDT_Implementation": "0xDDa903294fB71141302aD3Bf2AF37dD6Cbd5DBbF",
|
|
18
19
|
"PegStability_USDT_Proxy": "0xB21E69eef4Bc1D64903fa28D9b32491B1c0786F1",
|
|
@@ -88,6 +89,7 @@
|
|
|
88
89
|
"vETH": "0x162D005F0Fff510E54958Cfc5CF32A3180A84aab",
|
|
89
90
|
"vETH_Implementation": "0x8d79c8f4400fe68fd17040539fe5e1706c1f2850",
|
|
90
91
|
"vETH_Proxy": "0x162D005F0Fff510E54958Cfc5CF32A3180A84aab",
|
|
92
|
+
"vFDUSD_Proxy": "0xF06e662a00796c122AaAE935EC4F0Be3F74f5636",
|
|
91
93
|
"vLTC": "0xAfc13BC065ABeE838540823431055D2ea52eBA52",
|
|
92
94
|
"vLTC_Implementation": "0x8d79c8f4400fe68fd17040539fe5e1706c1f2850",
|
|
93
95
|
"vLTC_Proxy": "0xAfc13BC065ABeE838540823431055D2ea52eBA52",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const deploymentConfig_1 = require("../helpers/deploymentConfig");
|
|
4
|
+
const func = async function (hre) {
|
|
5
|
+
const { deployments, getNamedAccounts } = hre;
|
|
6
|
+
const { deploy } = deployments;
|
|
7
|
+
const { deployer } = await getNamedAccounts();
|
|
8
|
+
const { tokensConfig } = await (0, deploymentConfig_1.getConfig)(hre.network.name);
|
|
9
|
+
for (const token of tokensConfig) {
|
|
10
|
+
if (token.isMock) {
|
|
11
|
+
const contractName = `Mock${token.symbol}`;
|
|
12
|
+
await deploy(contractName, {
|
|
13
|
+
from: deployer,
|
|
14
|
+
contract: "MockToken",
|
|
15
|
+
args: [token.name, token.symbol, token.decimals],
|
|
16
|
+
log: true,
|
|
17
|
+
autoMine: true,
|
|
18
|
+
skipIfAlreadyDeployed: true,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
func.tags = ["MockTokens"];
|
|
24
|
+
exports.default = func;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const ethers_1 = require("ethers");
|
|
4
|
+
const utils_1 = require("ethers/lib/utils");
|
|
5
|
+
const hardhat_1 = require("hardhat");
|
|
6
|
+
const deploymentConfig_1 = require("../helpers/deploymentConfig");
|
|
7
|
+
const mantissaToBps = (num) => {
|
|
8
|
+
return ethers_1.BigNumber.from(num).div((0, utils_1.parseUnits)("1", 14)).toString();
|
|
9
|
+
};
|
|
10
|
+
const VTOKEN_DECIMALS = 8;
|
|
11
|
+
const EMPTY_BYTES_ARRAY = "0x";
|
|
12
|
+
const func = async function (hre) {
|
|
13
|
+
const { deployments, getNamedAccounts } = hre;
|
|
14
|
+
const { deploy } = deployments;
|
|
15
|
+
const { deployer } = await getNamedAccounts();
|
|
16
|
+
const { tokensConfig, marketsConfig, preconfiguredAddresses } = await (0, deploymentConfig_1.getConfig)(hre.network.name);
|
|
17
|
+
const comptrollerDeployment = await deployments.get("Unitroller");
|
|
18
|
+
console.log(`Got deployment of Unitroller with address: ${comptrollerDeployment.address}`);
|
|
19
|
+
for (const market of marketsConfig) {
|
|
20
|
+
const { name, asset, symbol, rateModel, baseRatePerYear, multiplierPerYear, jumpMultiplierPerYear, kink_ } = market;
|
|
21
|
+
const token = (0, deploymentConfig_1.getTokenConfig)(asset, tokensConfig);
|
|
22
|
+
let tokenContract;
|
|
23
|
+
if (token.isMock) {
|
|
24
|
+
tokenContract = await hardhat_1.ethers.getContract(`Mock${token.symbol}`);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
tokenContract = await hardhat_1.ethers.getContractAt("@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20", token.tokenAddress);
|
|
28
|
+
}
|
|
29
|
+
let rateModelAddress;
|
|
30
|
+
if (rateModel === deploymentConfig_1.InterestRateModels.JumpRate.toString()) {
|
|
31
|
+
const [b, m, j, k] = [baseRatePerYear, multiplierPerYear, jumpMultiplierPerYear, kink_].map(mantissaToBps);
|
|
32
|
+
const rateModelName = `JumpRateModel_base${b}bps_slope${m}bps_jump${j}bps_kink${k}bps`;
|
|
33
|
+
console.log(`Deploying interest rate model ${rateModelName}`);
|
|
34
|
+
const result = await deploy(rateModelName, {
|
|
35
|
+
from: deployer,
|
|
36
|
+
contract: "JumpRateModel",
|
|
37
|
+
args: [baseRatePerYear, multiplierPerYear, jumpMultiplierPerYear, kink_],
|
|
38
|
+
log: true,
|
|
39
|
+
});
|
|
40
|
+
rateModelAddress = result.address;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
const [b, m] = [baseRatePerYear, multiplierPerYear].map(mantissaToBps);
|
|
44
|
+
const rateModelName = `WhitePaperInterestRateModel_base${b}bps_slope${m}bps`;
|
|
45
|
+
console.log(`Deploying interest rate model ${rateModelName}`);
|
|
46
|
+
const result = await deploy(rateModelName, {
|
|
47
|
+
from: deployer,
|
|
48
|
+
contract: "WhitePaperInterestRateModel",
|
|
49
|
+
args: [baseRatePerYear, multiplierPerYear],
|
|
50
|
+
log: true,
|
|
51
|
+
});
|
|
52
|
+
rateModelAddress = result.address;
|
|
53
|
+
}
|
|
54
|
+
const underlyingDecimals = Number(await tokenContract.decimals());
|
|
55
|
+
console.log(`Deploying VBep20 Proxy for ${symbol} with Implementation ${preconfiguredAddresses.VTokenImpl}`);
|
|
56
|
+
await deploy(`${symbol}_Proxy`, {
|
|
57
|
+
contract: "VBep20Delegator",
|
|
58
|
+
from: deployer,
|
|
59
|
+
args: [
|
|
60
|
+
tokenContract.address,
|
|
61
|
+
comptrollerDeployment.address,
|
|
62
|
+
rateModelAddress,
|
|
63
|
+
(0, utils_1.parseUnits)("1", underlyingDecimals + 18 - VTOKEN_DECIMALS),
|
|
64
|
+
name,
|
|
65
|
+
symbol,
|
|
66
|
+
VTOKEN_DECIMALS,
|
|
67
|
+
preconfiguredAddresses.NormalTimelock,
|
|
68
|
+
preconfiguredAddresses.VTokenImpl,
|
|
69
|
+
EMPTY_BYTES_ARRAY,
|
|
70
|
+
],
|
|
71
|
+
log: true,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
func.tags = ["Markets"];
|
|
76
|
+
exports.default = func;
|