diff --git a/p2p-safe-swap/app/api/escrow/[contractId]/route.ts b/p2p-safe-swap/app/api/escrow/[contractId]/route.ts new file mode 100644 index 0000000..69c398d --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/[contractId]/route.ts @@ -0,0 +1,16 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function GET( + _req: NextRequest, + { params }: { params: Promise<{ contractId: string }> } +) { + try { + const { contractId } = await params; + const data = await trustlessWork.escrow.getByContractId(contractId); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/escrow/complete/route.ts b/p2p-safe-swap/app/api/escrow/complete/route.ts new file mode 100644 index 0000000..cf50f5e --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/complete/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.escrow.completeEscrow(body); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/escrow/dispute/route.ts b/p2p-safe-swap/app/api/escrow/dispute/route.ts new file mode 100644 index 0000000..545590e --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/dispute/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.escrow.disputeEscrow(body); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/escrow/fund/route.ts b/p2p-safe-swap/app/api/escrow/fund/route.ts new file mode 100644 index 0000000..ccbf40c --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/fund/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.escrow.fundEscrow(body); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/escrow/initialize/route.ts b/p2p-safe-swap/app/api/escrow/initialize/route.ts new file mode 100644 index 0000000..0735d4b --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/initialize/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.escrow.initialize(body); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/escrow/resolve-dispute/route.ts b/p2p-safe-swap/app/api/escrow/resolve-dispute/route.ts new file mode 100644 index 0000000..841c2b5 --- /dev/null +++ b/p2p-safe-swap/app/api/escrow/resolve-dispute/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.escrow.resolveDispute(body); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/app/api/helper/get-multiple-escrow-balance/route.ts b/p2p-safe-swap/app/api/helper/get-multiple-escrow-balance/route.ts new file mode 100644 index 0000000..720d155 --- /dev/null +++ b/p2p-safe-swap/app/api/helper/get-multiple-escrow-balance/route.ts @@ -0,0 +1,13 @@ +import { NextRequest, NextResponse } from "next/server"; +import { trustlessWork } from "@/lib/trustless-work"; + +export async function POST(req: NextRequest) { + try { + const body = await req.json(); + const data = await trustlessWork.helper.getMultipleEscrowBalance(body.addresses); + return NextResponse.json(data); + } catch (error) { + const message = error instanceof Error ? error.message : "Unknown error"; + return NextResponse.json({ error: message }, { status: 500 }); + } +} diff --git a/p2p-safe-swap/lib/trustless-work.ts b/p2p-safe-swap/lib/trustless-work.ts index 9820d12..0a22f97 100644 --- a/p2p-safe-swap/lib/trustless-work.ts +++ b/p2p-safe-swap/lib/trustless-work.ts @@ -62,4 +62,11 @@ export const trustlessWork = { body: JSON.stringify(body), }), }, + helper: { + getMultipleEscrowBalance: (addresses: string[]) => + request("/helper/get-multiple-escrow-balance", { + method: "POST", + body: JSON.stringify({ addresses }), + }), + }, };