update smart contract files and implement mapDeposits method to return specific info about a deposit

Co-authored-by: brunoedcf <brest.dallacosta@outlook.com>
This commit is contained in:
RcleydsonR
2022-11-25 15:27:01 -03:00
parent ae0e96e6ef
commit eb70e0d970
5 changed files with 339 additions and 124 deletions

View File

@@ -1,5 +1,5 @@
import { useEtherStore } from "@/store/ether";
import { ethers } from "ethers";
import { BigNumber, ethers } from "ethers";
// smart contract imports
import mockToken from "./smart_contract_files/MockToken.json";
@@ -55,13 +55,9 @@ const connectProvider = async () => {
const splitTokens = async () => {
const etherStore = useEtherStore();
const window_ = window as any;
const connection = window_.ethereum;
let provider: ethers.providers.Web3Provider | null = null;
const provider = getProvider();
if (!provider) return;
if (!connection) return;
provider = new ethers.providers.Web3Provider(connection);
const signer = provider.getSigner();
const contract = new ethers.Contract(addresses.token, mockToken.abi, signer);
@@ -73,27 +69,23 @@ const splitTokens = async () => {
};
const mockDeposit = async () => {
const mockDeposit = async (tokenQty = "1000.0", pixKey = "00011122233") => {
const etherStore = useEtherStore();
const window_ = window as any;
const connection = window_.ethereum;
let provider: ethers.providers.Web3Provider | null = null;
const provider = getProvider();
if (!provider) return;
if (!connection) return;
provider = new ethers.providers.Web3Provider(connection);
const signer = provider.getSigner();
const tokenContract = new ethers.Contract(addresses.token, mockToken.abi, signer);
const p2pContract = new ethers.Contract(addresses.p2pix, p2pix.abi, signer);
// first get the approval
const apprv = await tokenContract.approve(addresses.p2pix, ethers.utils.parseEther("1000.0"));
const apprv = await tokenContract.approve(addresses.p2pix, ethers.utils.parseEther(tokenQty));
await apprv.wait();
// deposit
const mockPixKey = "00011122233";
const deposit = await p2pContract.deposit(addresses.token, ethers.utils.parseEther("1000.0"), mockPixKey);
const deposit = await p2pContract.deposit(addresses.token, ethers.utils.parseEther(tokenQty), pixKey);
await deposit.wait();
updateWalletStatus(etherStore.walletAddress);
@@ -109,13 +101,9 @@ const mockDeposit = async () => {
const countDeposit = async () => {
const window_ = window as any;
const connection = window_.ethereum;
let provider: ethers.providers.Web3Provider | null = null;
const provider = getProvider();
if (!provider) return;
if (!connection) return;
provider = new ethers.providers.Web3Provider(connection);
const signer = provider.getSigner();
const contract = new ethers.Contract(addresses.p2pix, p2pix.abi, signer);
@@ -124,6 +112,18 @@ const countDeposit = async () => {
console.log(Number(count))
};
const mapDeposits = async (depositId: BigNumber) => {
const provider = getProvider();
if (!provider) return;
const signer = provider.getSigner();
const contract = new ethers.Contract(addresses.p2pix, p2pix.abi, signer);
const deposit = await contract.mapDeposits(depositId);
console.log(deposit)
};
const formatEther = (balance: string) => {
const formatted = ethers.utils.formatEther(balance);
return formatted;
@@ -138,4 +138,4 @@ const getProvider = (): ethers.providers.Web3Provider | null => {
return new ethers.providers.Web3Provider(connection);
};
export default { connectProvider, formatEther, splitTokens, mockDeposit, countDeposit };
export default { connectProvider, formatEther, splitTokens, mockDeposit, countDeposit, mapDeposits };

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,8 +1,6 @@
{
"wallets":[
"0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
"0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC",
"0x90F79bf6EB2c4f870365E785982E1f101E93b906",
"0x15d34AAf54267DB7D7c367839AAf71A00a2C6A65"
"0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC"
]
}