Hook for loading loans.
import { Loan, useLoans } from "@niftyapes/sdk";
Usage
This hook uses React Query for data fetching and returns the complete useQueryobject in the response.
import React from "react";
import { Loan, useLoans } from "@niftyapes/sdk";
import { formatEther } from "ethers/lib/utils";
const UseLoans: React.FC = () => {
const { data, isFetched } = useLoans({
buyer: "0x1d671d1B191323A38490972D58354971E5c1cd2A",
});
if (!isFetched) {
return <div>Loading...</div>;
}
return (
<div>
<div>{data?.length} Loans</div>
<div>
{data?.map((loan: Loan, idx) => {
return (
<div key={`loan-${idx}`}>
{loan.status}
<span style={{ margin: "10px" }}>
Total {`${formatEther(loan.offer.offer.price)} ETH`}
</span>
<span style={{ margin: "10px" }}>
Payments {loan.paymentHistory.length}
</span>
<span style={{ margin: "10px" }}>
Principal {`${formatEther(loan.loan.remainingPrincipal)} ETH`}
</span>
</div>
);
})}
</div>
</div>
);
};
export default UseLoans;
Configuration
type IUseLoanConfig = {
buyer?: Address;
seller?: Address;
collection?: Address;
nftId?: string;
onlyActive?: boolean;
};
buyer (optional)
Buyer address.
{
buyer:'0x4298e663517593284Ad4FE199b21815BD48a9969'
}
seller (optional)
{
seller:'0x4298e663517593284Ad4FE199b21815BD48a9969'
}