useGetEscrowsFromIndexerByRole
Returns the escrows that you're looking for. It comes from our indexer (database) synchronizer with the blockchain.
Usage
This custom hook exposes a function to get the escrows that you are looking obtain.
import { useGetEscrowsFromIndexerByRole } from "@trustless-work/escrow/hooks";
import { GetEscrowsFromIndexerByRoleParams } from "@trustless-work/escrow/types";
/*
* useGetEscrowsFromIndexerByRole
*/
const { getEscrowsByRole } = useGetEscrowsFromIndexerByRole();
/*
* It returns the escrows that you are looking for
* payload should be of type `GetEscrowsFromIndexerByRoleParams`
*/
await getEscrowsByRole(payload);
Function
getEscrowsByRole
Responsible for building and returning data based on the provided payload.
Argument:
GetEscrowsFromIndexerByRoleParams
: An object containing the required fields to get the escrows by role.
Return Value:
escrows
: The escrows that you are looking for.
Usage ExampleForm
import {
useGetEscrowsFromIndexerByRole,
} from "@trustless-work/escrow/hooks";
import {
GetEscrowsFromIndexerByRoleParams,
} from "@trustless-work/escrow/types";
export const useGetEscrowsFromIndexerByRoleForm = () => {
/*
* useGetEscrowsFromIndexerByRole
*/
const { getEscrowsByRole } = useGetEscrowsFromIndexerByRole();
/*
* onSubmit function, this could be called by form button
*/
const onSubmit = async (payload: GetEscrowsFromIndexerByRoleParams) => {
try {
/**
* API call by using the trustless work hooks
* @Note:
* - We need to pass the payload to the getEscrowsByRole function
* - The result will be an escrow
*/
const escrows = await getEscrowsByRole(payload);
if (!escrows) {
throw new Error("Escrows not found");
}
/**
* @Responses:
* escrows !== null
* - Escrows received successfully
* - Show a success toast
*
* escrows === null
* - Show an error toast
*/
if (escrows) {
toast.success("Escrows Received");
}
} catch (error: unknown) {
// catch error logic
}
};
}
Last updated
Was this helpful?