增加Human-Readable ABI for staking
This commit is contained in:
parent
53fbcb9ead
commit
3a1ff31b93
@ -22,7 +22,7 @@ contract RewardTracker is IERC20, ReentrancyGuard, IRewardTracker, Governable {
|
|||||||
uint8 public decimals = 18;
|
uint8 public decimals = 18;
|
||||||
uint256 public override totalSupply;
|
uint256 public override totalSupply;
|
||||||
mapping(address account => uint256 amount) public balances;
|
mapping(address account => uint256 amount) public balances;
|
||||||
mapping(address owner => mapping(address spender => uint256 amount)) public allowances;
|
mapping(address owner => mapping(address spender => uint256 amount)) public allowance;
|
||||||
|
|
||||||
address public distributor;
|
address public distributor;
|
||||||
mapping(address token => bool status) public isDepositToken;
|
mapping(address token => bool status) public isDepositToken;
|
||||||
@ -128,10 +128,7 @@ contract RewardTracker is IERC20, ReentrancyGuard, IRewardTracker, Governable {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function allowance(address _owner, address _spender) external view override returns (uint256) {
|
|
||||||
return allowances[_owner][_spender];
|
|
||||||
}
|
|
||||||
|
|
||||||
function approve(address _spender, uint256 _amount) external override returns (bool) {
|
function approve(address _spender, uint256 _amount) external override returns (bool) {
|
||||||
_approve(msg.sender, _spender, _amount);
|
_approve(msg.sender, _spender, _amount);
|
||||||
return true;
|
return true;
|
||||||
@ -142,8 +139,8 @@ contract RewardTracker is IERC20, ReentrancyGuard, IRewardTracker, Governable {
|
|||||||
_transfer(_sender, _recipient, _amount);
|
_transfer(_sender, _recipient, _amount);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
require(allowances[_sender][msg.sender] >= _amount, "RewardTracker: transfer amount exceeds allowance");
|
require(allowance[_sender][msg.sender] >= _amount, "RewardTracker: transfer amount exceeds allowance");
|
||||||
uint256 nextAllowance = allowances[_sender][msg.sender] - _amount;
|
uint256 nextAllowance = allowance[_sender][msg.sender] - _amount;
|
||||||
_approve(_sender, msg.sender, nextAllowance);
|
_approve(_sender, msg.sender, nextAllowance);
|
||||||
_transfer(_sender, _recipient, _amount);
|
_transfer(_sender, _recipient, _amount);
|
||||||
return true;
|
return true;
|
||||||
@ -236,7 +233,7 @@ contract RewardTracker is IERC20, ReentrancyGuard, IRewardTracker, Governable {
|
|||||||
require(_owner != address(0), "RewardTracker: approve from the zero address");
|
require(_owner != address(0), "RewardTracker: approve from the zero address");
|
||||||
require(_spender != address(0), "RewardTracker: approve to the zero address");
|
require(_spender != address(0), "RewardTracker: approve to the zero address");
|
||||||
|
|
||||||
allowances[_owner][_spender] = _amount;
|
allowance[_owner][_spender] = _amount;
|
||||||
|
|
||||||
emit Approval(_owner, _spender, _amount);
|
emit Approval(_owner, _spender, _amount);
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,25 @@
|
|||||||
|
const fs = require('fs');
|
||||||
/**
|
/**
|
||||||
* npx hardhat run scripts/convert-abi.js
|
* contract=activity/TokenClaim.sol npx hardhat run scripts/convert-abi.js
|
||||||
*/
|
*/
|
||||||
async function main() {
|
async function main() {
|
||||||
|
|
||||||
const jsonAbi = require("../artifacts/contracts/activity/TokenClaim.sol/TokenClaim.json").abi;
|
let pathPart = process.env.contract
|
||||||
|
if (!pathPart) {
|
||||||
|
console.error('\x1b[31m%s\x1b[0m', "contract path is required")
|
||||||
|
console.log('\x1b[33m%s\x1b[0m', "use: contract=subfolder/contract_name.sol npx hardhat run scripts/convert-abi.js")
|
||||||
|
process.exit(1)
|
||||||
|
}
|
||||||
|
if (!pathPart.endsWith(".sol")) {
|
||||||
|
pathPart = pathPart + ".sol"
|
||||||
|
}
|
||||||
|
const filename = pathPart.split("/").pop()
|
||||||
|
const abiPath = `../artifacts/contracts/${pathPart}/${filename.replace(".sol", ".json")}`
|
||||||
|
|
||||||
|
const jsonAbi = require(abiPath).abi;
|
||||||
|
|
||||||
const iface = new ethers.Interface(jsonAbi);
|
const iface = new ethers.Interface(jsonAbi);
|
||||||
console.log(iface.format(true));
|
fs.writeFileSync(`./simple_abi/${filename.replace(".sol", ".json")}`, JSON.stringify(iface.format(true)));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main().catch((error) => {
|
main().catch((error) => {
|
||||||
|
1
simple_abi/EsToken.json
Normal file
1
simple_abi/EsToken.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
["constructor(string,string)","event Approval(address indexed,address indexed,uint256)","event Transfer(address indexed,address indexed,uint256)","function allowance(address,address) view returns (uint256)","function approve(address,uint256) returns (bool)","function balanceOf(address) view returns (uint256)","function burn(address,uint256)","function decimals() view returns (uint8)","function decreaseAllowance(address,uint256) returns (bool)","function gov() view returns (address)","function inPrivateTransferMode() view returns (bool)","function increaseAllowance(address,uint256) returns (bool)","function isHandler(address) view returns (bool)","function isMinter(address) view returns (bool)","function mint(address,uint256)","function name() view returns (string)","function setGov(address)","function setHandler(address,bool)","function setInPrivateTransferMode(bool)","function setMinter(address,bool)","function symbol() view returns (string)","function totalSupply() view returns (uint256)","function transfer(address,uint256) returns (bool)","function transferFrom(address,address,uint256) returns (bool)"]
|
1
simple_abi/RewardDistributor.json
Normal file
1
simple_abi/RewardDistributor.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
["constructor(address,address)","event Distribute(uint256)","event TokensPerIntervalChange(uint256)","function admin() view returns (address)","function distribute(uint256,uint256) returns (uint256)","function gov() view returns (address)","function lastDistributionTime() view returns (uint256)","function pendingRewards() view returns (uint256)","function rewardToken() view returns (address)","function rewardTracker() view returns (address)","function setAdmin(address)","function setGov(address)","function setTokensPerInterval(uint256)","function tokensPerInterval() view returns (uint256)","function updateLastDistributionTime()","function withdrawToken(address,address,uint256)"]
|
21
simple_abi/RewardRouter.json
Normal file
21
simple_abi/RewardRouter.json
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
[
|
||||||
|
"constructor(address,address,address,address)",
|
||||||
|
"event StakeCec(address,address,uint256)",
|
||||||
|
"event UnstakeCec(address,address,uint256)",
|
||||||
|
"function batchStakeCecForAccount(address[],uint256[])",
|
||||||
|
"function cec() view returns (address)",
|
||||||
|
"function cecVester() view returns (address)",
|
||||||
|
"function claim()",
|
||||||
|
"function claimEsCec()",
|
||||||
|
"function esCec() view returns (address)",
|
||||||
|
"function gov() view returns (address)",
|
||||||
|
"function handleRewards(bool,bool,bool,bool)",
|
||||||
|
"function setGov(address)",
|
||||||
|
"function stakeCec(uint256)",
|
||||||
|
"function stakeCecForAccount(address,uint256)",
|
||||||
|
"function stakeEsCec(uint256)",
|
||||||
|
"function stakedCecTracker() view returns (address)",
|
||||||
|
"function unstakeCec(uint256)",
|
||||||
|
"function unstakeEsCec(uint256)",
|
||||||
|
"function withdrawToken(address,address,uint256)"
|
||||||
|
]
|
1
simple_abi/RewardTracker.json
Normal file
1
simple_abi/RewardTracker.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
["constructor(string,string)","event Approval(address indexed,address indexed,uint256)","event Claim(address,uint256)","event Transfer(address indexed,address indexed,uint256)","function BASIS_POINTS_DIVISOR() view returns (uint256)","function PRECISION() view returns (uint256)","function allowance(address,address) view returns (uint256)","function approve(address,uint256) returns (bool)","function averageStakedAmounts(address) view returns (uint256)","function balanceOf(address) view returns (uint256)","function balances(address) view returns (uint256)","function claim(address) returns (uint256)","function claimForAccount(address,address) returns (uint256)","function claimable(address) view returns (uint256)","function claimableReward(address) view returns (uint256)","function cumulativeRewardPerToken() view returns (uint256)","function cumulativeRewards(address) view returns (uint256)","function decimals() view returns (uint8)","function depositBalances(address,address) view returns (uint256)","function distributor() view returns (address)","function gov() view returns (address)","function inPrivateClaimingMode() view returns (bool)","function inPrivateStakingMode() view returns (bool)","function inPrivateTransferMode() view returns (bool)","function initialize(address[],address)","function isDepositToken(address) view returns (bool)","function isHandler(address) view returns (bool)","function isInitialized() view returns (bool)","function name() view returns (string)","function previousCumulatedRewardPerToken(address) view returns (uint256)","function rewardToken() view returns (address)","function setDepositToken(address,bool)","function setGov(address)","function setHandler(address,bool)","function setInPrivateClaimingMode(bool)","function setInPrivateStakingMode(bool)","function setInPrivateTransferMode(bool)","function stake(address,uint256)","function stakeForAccount(address,address,address,uint256)","function stakedAmounts(address) view returns (uint256)","function symbol() view returns (string)","function tokensPerInterval() view returns (uint256)","function totalDepositSupply(address) view returns (uint256)","function totalSupply() view returns (uint256)","function transfer(address,uint256) returns (bool)","function transferFrom(address,address,uint256) returns (bool)","function unstake(address,uint256)","function unstakeForAccount(address,address,uint256,address)","function updateRewards()","function withdrawToken(address,address,uint256)"]
|
1
simple_abi/Vester.json
Normal file
1
simple_abi/Vester.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
["constructor(string,string,uint256,address,address,address,address,bool)","event Approval(address indexed,address indexed,uint256)","event Claim(address,uint256)","event Deposit(address,uint256)","event PairTransfer(address indexed,address indexed,uint256)","event Transfer(address indexed,address indexed,uint256)","event Withdraw(address,uint256,uint256)","function allowance(address,address) view returns (uint256)","function approve(address,uint256) returns (bool)","function balanceOf(address) view returns (uint256)","function balances(address) view returns (uint256)","function bonusRewards(address) view returns (uint256)","function claim() returns (uint256)","function claimForAccount(address,address) returns (uint256)","function claimable(address) view returns (uint256)","function claimableToken() view returns (address)","function claimedAmounts(address) view returns (uint256)","function cumulativeClaimAmounts(address) view returns (uint256)","function cumulativeRewardDeductions(address) view returns (uint256)","function decimals() view returns (uint8)","function deposit(uint256)","function depositForAccount(address,uint256)","function esToken() view returns (address)","function getCombinedAverageStakedAmount(address) view returns (uint256)","function getMaxVestableAmount(address) view returns (uint256)","function getPairAmount(address,uint256) view returns (uint256)","function getTotalVested(address) view returns (uint256)","function getVestedAmount(address) view returns (uint256)","function gov() view returns (address)","function hasPairToken() view returns (bool)","function hasRewardTracker() view returns (bool)","function isHandler(address) view returns (bool)","function lastVestingTimes(address) view returns (uint256)","function name() view returns (string)","function needCheckStake() view returns (bool)","function pairAmounts(address) view returns (uint256)","function pairSupply() view returns (uint256)","function pairToken() view returns (address)","function rewardTracker() view returns (address)","function setBonusRewards(address,uint256)","function setCumulativeRewardDeductions(address,uint256)","function setGov(address)","function setHandler(address,bool)","function setRewardTracker(address)","function symbol() view returns (string)","function totalSupply() view returns (uint256)","function transfer(address,uint256) returns (bool)","function transferFrom(address,address,uint256) returns (bool)","function vestingDuration() view returns (uint256)","function withdraw()","function withdrawToken(address,address,uint256)"]
|
Loading…
x
Reference in New Issue
Block a user