@trustless-work/escrow
Version:
<p align="center"> <img src="https://github.com/user-attachments/assets/5b182044-dceb-41f5-acf0-da22dea7c98a" alt="CLR-S (2)"> </p>
330 lines (313 loc) • 10.6 kB
JavaScript
;
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/hooks/index.ts
var hooks_exports = {};
__export(hooks_exports, {
useApproveMilestone: () => useApproveMilestone,
useChangeMilestoneStatus: () => useChangeMilestoneStatus,
useFundEscrow: () => useFundEscrow,
useGetEscrow: () => useGetEscrow,
useGetMultipleEscrowBalances: () => useGetMultipleEscrowBalances,
useInitializeEscrow: () => useInitializeEscrow,
useReleaseFunds: () => useReleaseFunds,
useResolveDispute: () => useResolveDispute,
useSendTransaction: () => useSendTransaction,
useStartDispute: () => useStartDispute,
useUpdateEscrow: () => useUpdateEscrow
});
module.exports = __toCommonJS(hooks_exports);
// src/hooks/useInitializeEscrow.ts
var import_react_query2 = require("@tanstack/react-query");
// src/provider.tsx
var import_react = __toESM(require("react"));
var import_react_query = require("@tanstack/react-query");
// src/client.ts
var import_axios = __toESM(require("axios"));
// src/provider.tsx
var TrustlessWorkContext = import_react.default.createContext({ client: null });
function useTrustlessWorkClient() {
const ctx = (0, import_react.useContext)(TrustlessWorkContext);
if (!ctx.client) {
throw new Error(
"useTrustlessWorkClient must be inside TrustlessWorkConfig"
);
}
return ctx.client;
}
// src/hooks/useInitializeEscrow.ts
function useInitializeEscrow() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query2.useQueryClient)();
const mutation = (0, import_react_query2.useMutation)({
mutationFn: ({
payload,
type
}) => client.initializeEscrow(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
deployEscrow: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useSendTransaction.ts
var import_react_query3 = require("@tanstack/react-query");
function useSendTransaction() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query3.useQueryClient)();
const mutation = (0, import_react_query3.useMutation)({
mutationFn: (signedXdr) => client.sendTransaction(signedXdr),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["sendTransaction"] });
}
});
return {
sendTransaction: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess
};
}
// src/hooks/useGetEscrow.ts
var import_react_query4 = require("@tanstack/react-query");
function useGetEscrow() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query4.useQueryClient)();
const mutation = (0, import_react_query4.useMutation)({
mutationFn: ({
payload,
type
}) => client.getEscrow(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
getEscrow: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
escrow: mutation.data
};
}
// src/hooks/useUpdateEscrow.ts
var import_react_query5 = require("@tanstack/react-query");
function useUpdateEscrow() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query5.useQueryClient)();
const mutation = (0, import_react_query5.useMutation)({
mutationFn: ({
payload,
type
}) => client.updateEscrow(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
updateEscrow: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useStartDispute.ts
var import_react_query6 = require("@tanstack/react-query");
function useStartDispute() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query6.useQueryClient)();
const mutation = (0, import_react_query6.useMutation)({
mutationFn: ({
payload,
type
}) => client.startDispute(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
startDispute: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useResolveDispute.ts
var import_react_query7 = require("@tanstack/react-query");
function useResolveDispute() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query7.useQueryClient)();
const mutation = (0, import_react_query7.useMutation)({
mutationFn: ({
payload,
type
}) => client.resolveDispute(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
resolveDispute: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useGetMultipleEscrowBalances.ts
var import_react_query8 = require("@tanstack/react-query");
function useGetMultipleEscrowBalances() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query8.useQueryClient)();
const mutation = (0, import_react_query8.useMutation)({
mutationFn: ({
payload,
type
}) => client.getMultipleEscrowBalances(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
getMultipleBalances: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
balances: mutation.data
};
}
// src/hooks/useReleaseFunds.ts
var import_react_query9 = require("@tanstack/react-query");
function useReleaseFunds() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query9.useQueryClient)();
const mutation = (0, import_react_query9.useMutation)({
mutationFn: ({
payload,
type
}) => client.releaseFunds(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
releaseFunds: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useFundEscrow.ts
var import_react_query10 = require("@tanstack/react-query");
function useFundEscrow() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query10.useQueryClient)();
const mutation = (0, import_react_query10.useMutation)({
mutationFn: ({
payload,
type
}) => client.fundEscrow(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
fundEscrow: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useChangeMilestoneStatus.ts
var import_react_query11 = require("@tanstack/react-query");
function useChangeMilestoneStatus() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query11.useQueryClient)();
const mutation = (0, import_react_query11.useMutation)({
mutationFn: ({
payload,
type
}) => client.changeMilestoneStatus(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
changeMilestoneStatus: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// src/hooks/useApproveMilestone.ts
var import_react_query12 = require("@tanstack/react-query");
function useApproveMilestone() {
const client = useTrustlessWorkClient();
const queryClient = (0, import_react_query12.useQueryClient)();
const mutation = (0, import_react_query12.useMutation)({
mutationFn: ({
payload,
type
}) => client.approveMilestone(payload, type),
onSuccess: (data) => {
queryClient.invalidateQueries({ queryKey: ["escrows"] });
}
});
return {
approveMilestone: mutation.mutateAsync,
isPending: mutation.isPending,
isError: mutation.isError,
isSuccess: mutation.isSuccess,
unsignedTransaction: mutation.data?.unsignedTransaction
};
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
useApproveMilestone,
useChangeMilestoneStatus,
useFundEscrow,
useGetEscrow,
useGetMultipleEscrowBalances,
useInitializeEscrow,
useReleaseFunds,
useResolveDispute,
useSendTransaction,
useStartDispute,
useUpdateEscrow
});