Add valid Deposit model and return types of blockchain methods
Co-authored-by: geovanne97 <geovannessaraiva97@gmail.com>
This commit is contained in:
parent
c8a3fd12b2
commit
f87434debe
@ -5,7 +5,7 @@ import { getP2PixAddress } from "./addresses";
|
||||
|
||||
import p2pix from "../utils/smart_contract_files/P2PIX.json";
|
||||
|
||||
import { BigNumber, ethers, type Event } from "ethers";
|
||||
import { BigNumber, ethers } from "ethers";
|
||||
import { formatEther, parseEther } from "ethers/lib/utils";
|
||||
|
||||
// Buyer Flow methods //
|
||||
@ -14,7 +14,7 @@ import { formatEther, parseEther } from "ethers/lib/utils";
|
||||
const addLock = async (
|
||||
depositId: BigNumber,
|
||||
amount: number
|
||||
): Promise<Event> => {
|
||||
): Promise<any> => {
|
||||
const etherStore = useEtherStore();
|
||||
|
||||
const provider = getProvider();
|
||||
@ -41,7 +41,7 @@ const releaseLock = async (
|
||||
amount: Number,
|
||||
e2eId: string,
|
||||
lockId: string
|
||||
) => {
|
||||
): Promise<any> => {
|
||||
const mockBacenSigner = new ethers.Wallet(
|
||||
"0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80"
|
||||
);
|
||||
@ -77,7 +77,7 @@ const releaseLock = async (
|
||||
return release;
|
||||
};
|
||||
|
||||
const cancelDeposit = async (depositId: BigNumber): Promise<Boolean> => {
|
||||
const cancelDeposit = async (depositId: BigNumber): Promise<boolean> => {
|
||||
const provider = getProvider();
|
||||
|
||||
const signer = provider.getSigner();
|
||||
@ -89,7 +89,7 @@ const cancelDeposit = async (depositId: BigNumber): Promise<Boolean> => {
|
||||
return true;
|
||||
};
|
||||
|
||||
const withdrawDeposit = async (depositId: BigNumber): Promise<Boolean> => {
|
||||
const withdrawDeposit = async (depositId: BigNumber): Promise<boolean> => {
|
||||
const provider = getProvider();
|
||||
|
||||
if (!provider) return false;
|
||||
|
@ -5,8 +5,9 @@ import p2pix from "../utils/smart_contract_files/P2PIX.json";
|
||||
import { formatEther } from "ethers/lib/utils";
|
||||
import { getProvider } from "./provider";
|
||||
import { getP2PixAddress } from "./addresses";
|
||||
import type { ValidDeposit } from "@/model/ValidDeposit";
|
||||
|
||||
const getNetworksLiquidity = async () => {
|
||||
const getNetworksLiquidity = async (): Promise<void> => {
|
||||
const etherStore = useEtherStore();
|
||||
console.log("Loading events");
|
||||
|
||||
@ -41,7 +42,7 @@ const getNetworksLiquidity = async () => {
|
||||
console.log(depositListMumbai);
|
||||
};
|
||||
|
||||
const getValidDeposits = async (contract?: Contract): Promise<any[]> => {
|
||||
const getValidDeposits = async (contract?: Contract): Promise<ValidDeposit[]> => {
|
||||
let p2pContract: Contract;
|
||||
|
||||
if (contract) {
|
||||
@ -56,7 +57,7 @@ const getValidDeposits = async (contract?: Contract): Promise<any[]> => {
|
||||
const filterDeposits = p2pContract.filters.DepositAdded(null);
|
||||
const eventsDeposits = await p2pContract.queryFilter(filterDeposits);
|
||||
|
||||
const depositList: any[] = await Promise.all(
|
||||
const depositList = await Promise.all(
|
||||
eventsDeposits
|
||||
.map(async (deposit) => {
|
||||
const mappedDeposit = await p2pContract.mapDeposits(
|
||||
@ -79,7 +80,7 @@ const getValidDeposits = async (contract?: Contract): Promise<any[]> => {
|
||||
.filter((deposit) => deposit)
|
||||
);
|
||||
|
||||
return depositList;
|
||||
return depositList as ValidDeposit[];
|
||||
};
|
||||
|
||||
export { getValidDeposits, getNetworksLiquidity };
|
||||
|
@ -11,7 +11,7 @@ import mockToken from "../utils/smart_contract_files/MockToken.json";
|
||||
// Seller Flow methods //
|
||||
|
||||
// Approve Tokens
|
||||
const approveTokens = async (tokenQty: string) => {
|
||||
const approveTokens = async (tokenQty: string): Promise<any> => {
|
||||
const provider = getProvider();
|
||||
const signer = provider.getSigner();
|
||||
|
||||
@ -27,11 +27,12 @@ const approveTokens = async (tokenQty: string) => {
|
||||
);
|
||||
|
||||
await apprv.wait();
|
||||
console.log(apprv);
|
||||
return apprv;
|
||||
};
|
||||
|
||||
// Add deposit
|
||||
const addDeposit = async (tokenQty: string, pixKey: string) => {
|
||||
const addDeposit = async (tokenQty: string, pixKey: string): Promise<any> => {
|
||||
const provider = getProvider();
|
||||
|
||||
const signer = provider.getSigner();
|
||||
@ -46,9 +47,7 @@ const addDeposit = async (tokenQty: string, pixKey: string) => {
|
||||
|
||||
await deposit.wait();
|
||||
|
||||
await updateWalletStatus();
|
||||
// await updateDepositAddedEvents();
|
||||
// await updateValidDeposits();
|
||||
return deposit;
|
||||
};
|
||||
|
||||
export { approveTokens, addDeposit };
|
||||
|
@ -6,11 +6,12 @@ import { getP2PixAddress, getTokenAddress, possibleChains } from "./addresses";
|
||||
import p2pix from "../utils/smart_contract_files/P2PIX.json";
|
||||
import mockToken from "../utils/smart_contract_files/MockToken.json";
|
||||
|
||||
import { ethers } from "ethers";
|
||||
import { ethers, type Event } from "ethers";
|
||||
import { formatEther } from "ethers/lib/utils";
|
||||
import { getValidDeposits } from "./events";
|
||||
import type { ValidDeposit } from "@/model/ValidDeposit";
|
||||
|
||||
const updateWalletStatus = async () => {
|
||||
const updateWalletStatus = async (): Promise<void> => {
|
||||
const etherStore = useEtherStore();
|
||||
|
||||
const provider = getProvider();
|
||||
@ -34,8 +35,9 @@ const updateWalletStatus = async () => {
|
||||
|
||||
const listValidDepositTransactionsByWalletAddress = async (
|
||||
walletAddress: string
|
||||
): Promise<any[]> => {
|
||||
): Promise<ValidDeposit[]> => {
|
||||
const walletDeposits = await getValidDeposits();
|
||||
|
||||
if (walletDeposits) {
|
||||
return walletDeposits
|
||||
.filter((deposit) => deposit.seller == walletAddress)
|
||||
@ -43,14 +45,14 @@ const listValidDepositTransactionsByWalletAddress = async (
|
||||
return b.blockNumber - a.blockNumber;
|
||||
});
|
||||
}
|
||||
|
||||
return [];
|
||||
};
|
||||
|
||||
const listAllTransactionByWalletAddress = async (
|
||||
walletAddress: string
|
||||
): Promise<any[] | undefined> => {
|
||||
): Promise<Event[]> => {
|
||||
const provider = getProvider();
|
||||
if (!provider) return;
|
||||
|
||||
const signer = provider.getSigner();
|
||||
const p2pContract = new ethers.Contract(getP2PixAddress(), p2pix.abi, signer);
|
||||
@ -76,9 +78,8 @@ const listAllTransactionByWalletAddress = async (
|
||||
// get wallet's release transactions
|
||||
const listReleaseTransactionByWalletAddress = async (
|
||||
walletAddress: string
|
||||
): Promise<any[] | undefined> => {
|
||||
): Promise<Event[]> => {
|
||||
const provider = getProvider();
|
||||
if (!provider) return;
|
||||
|
||||
const signer = provider.getSigner();
|
||||
const p2pContract = new ethers.Contract(getP2PixAddress(), p2pix.abi, signer);
|
||||
|
10
src/model/ValidDeposit.ts
Normal file
10
src/model/ValidDeposit.ts
Normal file
@ -0,0 +1,10 @@
|
||||
import type { BigNumber } from "ethers";
|
||||
|
||||
export type ValidDeposit = {
|
||||
depositID: BigNumber;
|
||||
blockNumber: number;
|
||||
remaining: string;
|
||||
seller: string;
|
||||
pixKey: (string | undefined);
|
||||
pixTarget?: string;
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user