Files
P2Pix-Front-End/src/blockchain/sellerMethods.ts
hueso 4b4b5af550
Some checks failed
Deploy FrontEnd / deploy-staging (push) Has been cancelled
Deploy FrontEnd / deploy-production (push) Has been cancelled
CI script / lint (push) Has been cancelled
CI script / build (push) Has been cancelled
CI script / SonarCloud (push) Has been cancelled
update contract ABI
2024-10-06 20:23:28 -03:00

48 lines
1.2 KiB
TypeScript

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