@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.
Files changed (94) hide show
  1. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +1 -1
  2. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
  3. package/artifacts/@openzeppelin/contracts/access/Ownable2Step.sol/Ownable2Step.dbg.json +1 -1
  4. package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.dbg.json +1 -1
  5. package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
  6. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
  7. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
  8. package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
  9. package/artifacts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
  10. package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
  11. package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.dbg.json +1 -1
  12. package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
  13. package/artifacts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
  14. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +4 -0
  15. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +297 -0
  16. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  17. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +4 -0
  18. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +233 -0
  19. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.dbg.json +1 -1
  20. package/artifacts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  21. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  22. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  23. package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
  24. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
  25. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  26. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  27. package/artifacts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
  28. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
  29. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  30. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.dbg.json +1 -1
  31. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +1 -1
  32. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
  33. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  34. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  35. package/artifacts/@openzeppelin/contracts-upgradeable/utils/math/SafeCastUpgradeable.sol/SafeCastUpgradeable.dbg.json +1 -1
  36. package/artifacts/build-info/5d3c5040759360fa4c28ba5b26a6b9f1.json +1 -0
  37. package/artifacts/contracts/Governance/VTreasuryV8.sol/VTreasuryV8.dbg.json +1 -1
  38. package/artifacts/contracts/test/MockToken.sol/MockToken.dbg.json +4 -0
  39. package/artifacts/contracts/test/MockToken.sol/MockToken.json +315 -0
  40. package/contracts/test/MockToken.sol +22 -0
  41. package/deploy/010-deploy-mock-tokens.ts +30 -0
  42. package/deploy/011-deploy-markets.ts +92 -0
  43. package/deployments/bscmainnet/JumpRateModel_base0bps_slope687bps_jump25000bps_kink8000bps.json +380 -0
  44. package/deployments/bscmainnet/solcInputs/7830d2b3dd486e9651687b362529ec15.json +345 -0
  45. package/deployments/bscmainnet/vFDUSD_Proxy.json +2382 -0
  46. package/deployments/bscmainnet.json +11054 -11355
  47. package/deployments/bscmainnet_addresses.json +2 -1
  48. package/deployments/bsctestnet/JumpRateModel_base0bps_slope687bps_jump25000bps_kink8000bps.json +380 -0
  49. package/deployments/bsctestnet/MockFDUSD.json +458 -0
  50. package/deployments/bsctestnet/solcInputs/7830d2b3dd486e9651687b362529ec15.json +345 -0
  51. package/deployments/bsctestnet/solcInputs/f4ba922efa57be24c0606389b67afaaa.json +46 -0
  52. package/deployments/bsctestnet/vFDUSD_Proxy.json +2382 -0
  53. package/deployments/bsctestnet.json +17362 -17871
  54. package/deployments/bsctestnet_addresses.json +3 -1
  55. package/dist/deploy/010-deploy-mock-tokens.d.ts +3 -0
  56. package/dist/deploy/010-deploy-mock-tokens.js +24 -0
  57. package/dist/deploy/011-deploy-markets.d.ts +3 -0
  58. package/dist/deploy/011-deploy-markets.js +76 -0
  59. package/dist/deployments/bscmainnet.json +11054 -11355
  60. package/dist/deployments/bscmainnet_addresses.json +202 -0
  61. package/dist/deployments/bsctestnet.json +17362 -17871
  62. package/dist/deployments/bsctestnet_addresses.json +121 -0
  63. package/dist/hardhat.config.js +1 -3
  64. package/dist/helpers/deploymentConfig.d.ts +47 -0
  65. package/dist/helpers/deploymentConfig.js +157 -0
  66. package/dist/helpers/utils.d.ts +2 -0
  67. package/dist/helpers/utils.js +27 -0
  68. package/dist/typechain/@openzeppelin/contracts/token/ERC20/ERC20.d.ts +198 -0
  69. package/dist/typechain/@openzeppelin/contracts/token/ERC20/ERC20.js +3 -0
  70. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts +166 -0
  71. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.js +3 -0
  72. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
  73. package/dist/typechain/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
  74. package/dist/typechain/contracts/test/MockToken.d.ts +214 -0
  75. package/dist/typechain/contracts/test/MockToken.js +3 -0
  76. package/dist/typechain/contracts/test/index.d.ts +1 -0
  77. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts +239 -0
  78. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js +326 -0
  79. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts +178 -0
  80. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js +239 -0
  81. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
  82. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js +3 -1
  83. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
  84. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/index.js +3 -1
  85. package/dist/typechain/factories/contracts/test/MockToken__factory.d.ts +253 -0
  86. package/dist/typechain/factories/contracts/test/MockToken__factory.js +344 -0
  87. package/dist/typechain/factories/contracts/test/index.d.ts +1 -0
  88. package/dist/typechain/factories/contracts/test/index.js +3 -1
  89. package/dist/typechain/index.d.ts +6 -0
  90. package/dist/typechain/index.js +12 -6
  91. package/package.json +1 -1
  92. package/artifacts/build-info/836b5274e4a94df50d1ff043d8579f59.json +0 -1
  93. package/deployments/bscmainnet/Comptroller.json +0 -2237
  94. 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,3 @@
1
+ import { DeployFunction } from "hardhat-deploy/types";
2
+ declare const func: DeployFunction;
3
+ export default func;
@@ -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,3 @@
1
+ import { DeployFunction } from "hardhat-deploy/types";
2
+ declare const func: DeployFunction;
3
+ export 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;