P2Pix-Front-End/src/blockchain/sellerMethods.ts
RcleydsonR 4999f3d145 Add typing on components layer
Co-authored-by: geovanne97 <geovannessaraiva97@gmail.com>
2023-01-18 23:35:08 -03:00

49 lines
1.2 KiB
TypeScript

import { getProvider } from "./provider";
import { getTokenAddress, getP2PixAddress } from "./addresses";
import { parseEther } from "ethers/lib/utils";
import { ethers } from "ethers";
import p2pix from "../utils/smart_contract_files/P2PIX.json";
import mockToken from "../utils/smart_contract_files/MockToken.json";
const approveTokens = async (tokenQty: string): Promise<any> => {
const provider = getProvider();
const signer = provider.getSigner();
const tokenContract = new ethers.Contract(
getTokenAddress(),
mockToken.abi,
signer
);
const apprv = await tokenContract.approve(
getP2PixAddress(),
parseEther(tokenQty)
);
await apprv.wait();
console.log(apprv);
return apprv;
};
const addDeposit = async (tokenQty: string, pixKey: string): Promise<any> => {
const provider = getProvider();
const signer = provider.getSigner();
const p2pContract = new ethers.Contract(getP2PixAddress(), p2pix.abi, signer);
const deposit = await p2pContract.deposit(
getTokenAddress(),
parseEther(tokenQty),
pixKey,
ethers.utils.formatBytes32String("")
);
await deposit.wait();
return deposit;
};
export { approveTokens, addDeposit };