@venusprotocol/protocol-reserve 1.2.0-dev.3 → 1.2.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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=1-deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1-deploy.d.ts","sourceRoot":"","sources":["../../deploy/1-deploy.ts"],"names":[],"mappings":""}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ const mainnet_json_1 = __importDefault(require("@venusprotocol/venus-protocol/networks/mainnet.json"));
39
+ const testnet_json_1 = __importDefault(require("@venusprotocol/venus-protocol/networks/testnet.json"));
40
+ const hardhat_1 = __importStar(require("hardhat"));
41
+ const ADDRESSES = {
42
+ bsctestnet: {
43
+ vBNBAddress: testnet_json_1.default.Contracts.vBNB,
44
+ comptroller: testnet_json_1.default.Contracts.Unitroller,
45
+ WBNBAddress: "0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd",
46
+ timelock: testnet_json_1.default.Contracts.Timelock,
47
+ acm: "0x45f8a08F534f34A97187626E05d4b6648Eeaa9AA",
48
+ },
49
+ bscmainnet: {
50
+ vBNBAddress: mainnet_json_1.default.Contracts.vBNB,
51
+ comptroller: mainnet_json_1.default.Contracts.Unitroller,
52
+ WBNBAddress: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
53
+ timelock: mainnet_json_1.default.Contracts.Timelock,
54
+ acm: "0x4788629ABc6cFCA10F9f969efdEAa1cF70c23555",
55
+ },
56
+ sepolia: {
57
+ vBNBAddress: hardhat_1.ethers.constants.AddressZero,
58
+ comptroller: hardhat_1.ethers.constants.AddressZero,
59
+ WBNBAddress: hardhat_1.ethers.constants.AddressZero,
60
+ timelock: hardhat_1.ethers.constants.AddressZero,
61
+ acm: hardhat_1.ethers.constants.AddressZero,
62
+ },
63
+ };
64
+ module.exports = ({ getNamedAccounts, deployments, network }) => __awaiter(void 0, void 0, void 0, function* () {
65
+ const { deploy } = deployments;
66
+ const { deployer } = yield getNamedAccounts();
67
+ const networkName = network.name;
68
+ const { vBNBAddress, comptroller, WBNBAddress, timelock, acm } = ADDRESSES[networkName];
69
+ const loopsLimit = 20;
70
+ yield deploy("ProtocolShareReserve", {
71
+ from: deployer,
72
+ log: true,
73
+ deterministicDeployment: false,
74
+ args: [comptroller, WBNBAddress, vBNBAddress],
75
+ proxy: {
76
+ owner: timelock,
77
+ proxyContract: "OpenZeppelinTransparentProxy",
78
+ execute: {
79
+ methodName: "initialize",
80
+ args: [acm, loopsLimit],
81
+ },
82
+ },
83
+ });
84
+ const psr = yield hardhat_1.default.ethers.getContract("ProtocolShareReserve");
85
+ const psrOwner = yield psr.owner();
86
+ if (psrOwner === deployer) {
87
+ const tx = yield psr.transferOwnership(ADDRESSES[networkName].timelock);
88
+ yield tx.wait();
89
+ console.log("Transferred ownership of PSR to Timelock");
90
+ }
91
+ });
92
+ module.exports.tags = ["deploy"];
93
+ //# sourceMappingURL=1-deploy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"1-deploy.js","sourceRoot":"","sources":["../../deploy/1-deploy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uGAAqF;AACrF,uGAAqF;AACrF,mDAAsC;AAGtC,MAAM,SAAS,GAAQ;IACrB,UAAU,EAAE;QACV,WAAW,EAAE,sBAAkB,CAAC,SAAS,CAAC,IAAI;QAC9C,WAAW,EAAE,sBAAkB,CAAC,SAAS,CAAC,UAAU;QACpD,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,sBAAkB,CAAC,SAAS,CAAC,QAAQ;QAC/C,GAAG,EAAE,4CAA4C;KAClD;IACD,UAAU,EAAE;QACV,WAAW,EAAE,sBAAkB,CAAC,SAAS,CAAC,IAAI;QAC9C,WAAW,EAAE,sBAAkB,CAAC,SAAS,CAAC,UAAU;QACpD,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,sBAAkB,CAAC,SAAS,CAAC,QAAQ;QAC/C,GAAG,EAAE,4CAA4C;KAClD;IACD,OAAO,EAAE;QACP,WAAW,EAAE,gBAAM,CAAC,SAAS,CAAC,WAAW;QACzC,WAAW,EAAE,gBAAM,CAAC,SAAS,CAAC,WAAW;QACzC,WAAW,EAAE,gBAAM,CAAC,SAAS,CAAC,WAAW;QACzC,QAAQ,EAAE,gBAAM,CAAC,SAAS,CAAC,WAAW;QACtC,GAAG,EAAE,gBAAM,CAAC,SAAS,CAAC,WAAW;KAClC;CACF,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,CAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAA6B,EAAE,EAAE;IAC/F,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;IAC/B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAE9C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,EAAE,CAAC;IAEtB,MAAM,MAAM,CAAC,sBAAsB,EAAE;QACnC,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,IAAI;QACT,uBAAuB,EAAE,KAAK;QAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC;QAC7C,KAAK,EAAE;YACL,KAAK,EAAE,QAAQ;YACf,aAAa,EAAE,8BAA8B;YAC7C,OAAO,EAAE;gBACP,UAAU,EAAE,YAAY;gBACxB,IAAI,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC;aACxB;SACF;KACF,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,MAAM,iBAAG,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IAEnC,IAAI,QAAQ,KAAK,QAAQ,EAAE;QACzB,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;KACzD;AACH,CAAC,CAAA,CAAC;AAEF,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import "module-alias/register";
2
+ import "@nomicfoundation/hardhat-chai-matchers";
3
+ import "@nomicfoundation/hardhat-toolbox";
4
+ import "@nomiclabs/hardhat-ethers";
5
+ import "@nomiclabs/hardhat-etherscan";
6
+ import "@openzeppelin/hardhat-upgrades";
7
+ import "@typechain/hardhat";
8
+ import "hardhat-deploy";
9
+ import "hardhat-gas-reporter";
10
+ import { HardhatUserConfig } from "hardhat/config";
11
+ import "solidity-coverage";
12
+ import "solidity-docgen";
13
+ declare const config: HardhatUserConfig;
14
+ export default config;
15
+ //# sourceMappingURL=hardhat.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardhat.config.d.ts","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;AAE/B,OAAO,wCAAwC,CAAC;AAChD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,2BAA2B,CAAC;AACnC,OAAO,8BAA8B,CAAC;AACtC,OAAO,gCAAgC,CAAC;AACxC,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAQ,MAAM,gBAAgB,CAAC;AACzD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,iBAAiB,CAAC;AAqCzB,QAAA,MAAM,MAAM,EAAE,iBAkIb,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ require("module-alias/register");
13
+ require("@nomicfoundation/hardhat-chai-matchers");
14
+ require("@nomicfoundation/hardhat-toolbox");
15
+ require("@nomiclabs/hardhat-ethers");
16
+ require("@nomiclabs/hardhat-etherscan");
17
+ require("@openzeppelin/hardhat-upgrades");
18
+ require("@typechain/hardhat");
19
+ require("hardhat-deploy");
20
+ require("hardhat-gas-reporter");
21
+ const config_1 = require("hardhat/config");
22
+ require("solidity-coverage");
23
+ require("solidity-docgen");
24
+ require("dotenv").config();
25
+ const DEPLOYER_PRIVATE_KEY = process.env.DEPLOYER_PRIVATE_KEY;
26
+ (0, config_1.task)("accounts", "Prints the list of accounts", (taskArgs, hre) => __awaiter(void 0, void 0, void 0, function* () {
27
+ const accounts = yield hre.ethers.getSigners();
28
+ for (const account of accounts) {
29
+ console.log(account.address);
30
+ }
31
+ }));
32
+ function isFork() {
33
+ return process.env.FORK === "true"
34
+ ? {
35
+ allowUnlimitedContractSize: false,
36
+ loggingEnabled: false,
37
+ forking: {
38
+ url: process.env[`ARCHIVE_NODE_${process.env.FORKED_NETWORK}`] ||
39
+ "https://data-seed-prebsc-1-s1.binance.org:8545",
40
+ blockNumber: 21068448,
41
+ },
42
+ accounts: {
43
+ accountsBalance: "1000000000000000000",
44
+ },
45
+ live: false,
46
+ }
47
+ : {
48
+ allowUnlimitedContractSize: true,
49
+ loggingEnabled: false,
50
+ live: false,
51
+ };
52
+ }
53
+ const config = {
54
+ defaultNetwork: "hardhat",
55
+ solidity: {
56
+ compilers: [
57
+ {
58
+ version: "0.5.16",
59
+ settings: {
60
+ optimizer: {
61
+ enabled: true,
62
+ runs: 200,
63
+ },
64
+ outputSelection: {
65
+ "*": {
66
+ "*": ["storageLayout"],
67
+ },
68
+ },
69
+ },
70
+ },
71
+ {
72
+ version: "0.8.13",
73
+ settings: {
74
+ optimizer: {
75
+ enabled: true,
76
+ runs: 10000,
77
+ },
78
+ outputSelection: {
79
+ "*": {
80
+ "*": ["storageLayout"],
81
+ },
82
+ },
83
+ },
84
+ },
85
+ ],
86
+ },
87
+ networks: {
88
+ hardhat: isFork(),
89
+ bsctestnet: {
90
+ url: process.env.ARCHIVE_NODE_bsctestnet || "https://data-seed-prebsc-1-s1.binance.org:8545",
91
+ chainId: 97,
92
+ accounts: {
93
+ mnemonic: process.env.MNEMONIC || "",
94
+ },
95
+ gasPrice: 10000000000,
96
+ gasMultiplier: 10,
97
+ timeout: 12000000,
98
+ },
99
+ bscmainnet: {
100
+ url: process.env.ARCHIVE_NODE_bscmainnet || "https://bsc-dataseed.binance.org/",
101
+ accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [],
102
+ },
103
+ sepolia: {
104
+ url: process.env.ARCHIVE_NODE_sepolia || "https://ethereum-sepolia.blockpi.network/v1/rpc/public",
105
+ chainId: 11155111,
106
+ live: true,
107
+ gasPrice: 20000000000,
108
+ accounts: DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [],
109
+ },
110
+ ethereum: {
111
+ url: process.env.ARCHIVE_NODE_ethereum || "https://ethereum.blockpi.network/v1/rpc/public",
112
+ chainId: 1,
113
+ live: true,
114
+ timeout: 1200000,
115
+ },
116
+ },
117
+ etherscan: {
118
+ apiKey: {
119
+ bscmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
120
+ bsctestnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
121
+ sepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
122
+ ethereum: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY",
123
+ },
124
+ customChains: [
125
+ {
126
+ network: "bscmainnet",
127
+ chainId: 56,
128
+ urls: {
129
+ apiURL: "https://api.bscscan.com/api",
130
+ browserURL: "https://bscscan.com",
131
+ },
132
+ },
133
+ {
134
+ network: "bsctestnet",
135
+ chainId: 97,
136
+ urls: {
137
+ apiURL: "https://api-testnet.bscscan.com/api",
138
+ browserURL: "https://testnet.bscscan.com",
139
+ },
140
+ },
141
+ {
142
+ network: "sepolia",
143
+ chainId: 11155111,
144
+ urls: {
145
+ apiURL: "https://api-sepolia.etherscan.io/api",
146
+ browserURL: "https://sepolia.etherscan.io",
147
+ },
148
+ },
149
+ {
150
+ network: "ethereum",
151
+ chainId: 1,
152
+ urls: {
153
+ apiURL: "https://api.etherscan.io/api",
154
+ browserURL: "https://etherscan.io",
155
+ },
156
+ },
157
+ ],
158
+ },
159
+ paths: {
160
+ sources: "./contracts",
161
+ tests: "./tests",
162
+ cache: "./cache",
163
+ artifacts: "./artifacts",
164
+ },
165
+ mocha: {
166
+ timeout: 200000000,
167
+ },
168
+ typechain: {
169
+ outDir: "typechain",
170
+ target: "ethers-v5",
171
+ },
172
+ namedAccounts: {
173
+ deployer: {
174
+ default: 0,
175
+ },
176
+ },
177
+ docgen: {
178
+ outputDir: "./docgen-docs",
179
+ pages: "files",
180
+ templates: "docgen-templates",
181
+ },
182
+ };
183
+ exports.default = config;
184
+ //# sourceMappingURL=hardhat.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardhat.config.js","sourceRoot":"","sources":["../hardhat.config.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iCAA+B;AAE/B,kDAAgD;AAChD,4CAA0C;AAC1C,qCAAmC;AACnC,wCAAsC;AACtC,0CAAwC;AACxC,8BAA4B;AAC5B,0BAAwB;AACxB,gCAA8B;AAC9B,2CAAyD;AACzD,6BAA2B;AAC3B,2BAAyB;AAEzB,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AAE3B,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;AAE9D,IAAA,aAAI,EAAC,UAAU,EAAE,6BAA6B,EAAE,CAAO,QAAQ,EAAE,GAAG,EAAE,EAAE;IACtE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KAC9B;AACH,CAAC,CAAA,CAAC,CAAC;AAEH,SAAS,MAAM;IACb,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM;QAChC,CAAC,CAAC;YACE,0BAA0B,EAAE,KAAK;YACjC,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE;gBACP,GAAG,EACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;oBACzD,gDAAgD;gBAClD,WAAW,EAAE,QAAQ;aACtB;YACD,QAAQ,EAAE;gBACR,eAAe,EAAE,qBAAqB;aACvC;YACD,IAAI,EAAE,KAAK;SACZ;QACH,CAAC,CAAC;YACE,0BAA0B,EAAE,IAAI;YAChC,cAAc,EAAE,KAAK;YACrB,IAAI,EAAE,KAAK;SACZ,CAAC;AACR,CAAC;AAED,MAAM,MAAM,GAAsB;IAChC,cAAc,EAAE,SAAS;IACzB,QAAQ,EAAE;QACR,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,GAAG;qBACV;oBACD,eAAe,EAAE;wBACf,GAAG,EAAE;4BACH,GAAG,EAAE,CAAC,eAAe,CAAC;yBACvB;qBACF;iBACF;aACF;YACD;gBACE,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,KAAK;qBACZ;oBACD,eAAe,EAAE;wBACf,GAAG,EAAE;4BACH,GAAG,EAAE,CAAC,eAAe,CAAC;yBACvB;qBACF;iBACF;aACF;SACF;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,EAAE;QACjB,UAAU,EAAE;YACV,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,gDAAgD;YAC5F,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE;gBACR,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE;aACrC;YACD,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,QAAQ;SAClB;QACD,UAAU,EAAE;YACV,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,mCAAmC;YAC/E,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,KAAK,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;SACpE;QACD,OAAO,EAAE;YACP,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,wDAAwD;YACjG,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,WAAW;YACrB,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,KAAK,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;SACpE;QACD,QAAQ,EAAE;YACR,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,gDAAgD;YAC1F,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;SACjB;KACF;IACD,SAAS,EAAE;QACT,MAAM,EAAE;YACN,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,mBAAmB;YAChE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,mBAAmB;YAChE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,mBAAmB;YAC7D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,mBAAmB;SAC/D;QACD,YAAY,EAAE;YACZ;gBACE,OAAO,EAAE,YAAY;gBACrB,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,MAAM,EAAE,6BAA6B;oBACrC,UAAU,EAAE,qBAAqB;iBAClC;aACF;YACD;gBACE,OAAO,EAAE,YAAY;gBACrB,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE;oBACJ,MAAM,EAAE,qCAAqC;oBAC7C,UAAU,EAAE,6BAA6B;iBAC1C;aACF;YACD;gBACE,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE;oBACJ,MAAM,EAAE,sCAAsC;oBAC9C,UAAU,EAAE,8BAA8B;iBAC3C;aACF;YACD;gBACE,OAAO,EAAE,UAAU;gBACnB,OAAO,EAAE,CAAC;gBACV,IAAI,EAAE;oBACJ,MAAM,EAAE,8BAA8B;oBACtC,UAAU,EAAE,sBAAsB;iBACnC;aACF;SACF;KACF;IACD,KAAK,EAAE;QACL,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,aAAa;KACzB;IACD,KAAK,EAAE;QACL,OAAO,EAAE,SAAS;KACnB;IACD,SAAS,EAAE;QACT,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE,WAAW;KACpB;IAED,aAAa,EAAE;QACb,QAAQ,EAAE;YACR,OAAO,EAAE,CAAC;SACX;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,kBAAkB;KAC9B;CACF,CAAC;AAEF,kBAAe,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@venusprotocol/protocol-reserve",
3
3
  "description": "Venus Protocol contracts to manage the income generated by the protocol",
4
- "version": "1.2.0-dev.3",
4
+ "version": "1.2.0-dev.4",
5
5
  "author": "Venus",
6
6
  "engines": {
7
7
  "node": ">=18.0.0"
8
8
  },
9
9
  "files": [
10
10
  "artifacts",
11
- "deploy",
11
+ "dist",
12
12
  "deployments",
13
13
  "contracts",
14
14
  "typechain"
@@ -1,64 +0,0 @@
1
- import mainnetDeployments from "@venusprotocol/venus-protocol/networks/mainnet.json";
2
- import testnetDeployments from "@venusprotocol/venus-protocol/networks/testnet.json";
3
- import hre, { ethers } from "hardhat";
4
- import { HardhatRuntimeEnvironment } from "hardhat/types";
5
-
6
- const ADDRESSES: any = {
7
- bsctestnet: {
8
- vBNBAddress: testnetDeployments.Contracts.vBNB,
9
- comptroller: testnetDeployments.Contracts.Unitroller,
10
- WBNBAddress: "0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd",
11
- timelock: testnetDeployments.Contracts.Timelock,
12
- acm: "0x45f8a08F534f34A97187626E05d4b6648Eeaa9AA",
13
- },
14
- bscmainnet: {
15
- vBNBAddress: mainnetDeployments.Contracts.vBNB,
16
- comptroller: mainnetDeployments.Contracts.Unitroller,
17
- WBNBAddress: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
18
- timelock: mainnetDeployments.Contracts.Timelock,
19
- acm: "0x4788629ABc6cFCA10F9f969efdEAa1cF70c23555",
20
- },
21
- sepolia: {
22
- vBNBAddress: ethers.constants.AddressZero,
23
- comptroller: ethers.constants.AddressZero,
24
- WBNBAddress: ethers.constants.AddressZero,
25
- timelock: ethers.constants.AddressZero,
26
- acm: ethers.constants.AddressZero,
27
- },
28
- };
29
-
30
- module.exports = async ({ getNamedAccounts, deployments, network }: HardhatRuntimeEnvironment) => {
31
- const { deploy } = deployments;
32
- const { deployer } = await getNamedAccounts();
33
-
34
- const networkName = network.name;
35
-
36
- const { vBNBAddress, comptroller, WBNBAddress, timelock, acm } = ADDRESSES[networkName];
37
- const loopsLimit = 20;
38
-
39
- await deploy("ProtocolShareReserve", {
40
- from: deployer,
41
- log: true,
42
- deterministicDeployment: false,
43
- args: [comptroller, WBNBAddress, vBNBAddress],
44
- proxy: {
45
- owner: timelock,
46
- proxyContract: "OpenZeppelinTransparentProxy",
47
- execute: {
48
- methodName: "initialize",
49
- args: [acm, loopsLimit],
50
- },
51
- },
52
- });
53
-
54
- const psr = await hre.ethers.getContract("ProtocolShareReserve");
55
- const psrOwner = await psr.owner();
56
-
57
- if (psrOwner === deployer) {
58
- const tx = await psr.transferOwnership(ADDRESSES[networkName].timelock);
59
- await tx.wait();
60
- console.log("Transferred ownership of PSR to Timelock");
61
- }
62
- };
63
-
64
- module.exports.tags = ["deploy"];