import { TodosRpcs } from "@/lib/schemas/todos";
import { Layer } from "effect";
import { RpcSerialization, RpcServer } from "@effect/rpc";
import type { NextRequest } from "next/server";
import { HttpServer } from "@effect/platform";
import { TodosRouter } from "@/lib/routers/todos";
const handler = RpcServer.toWebHandler(TodosRpcs, {
layer: Layer.mergeAll(
TodosRouter,
RpcSerialization.layerJson,
HttpServer.layerContext
),
});
export const POST = async (req: NextRequest) => {
return await handler.handler(req);
};
import { TodosRpcs } from "@/lib/schemas/todos";
import { Layer } from "effect";
import { RpcSerialization, RpcServer } from "@effect/rpc";
import type { NextRequest } from "next/server";
import { HttpServer } from "@effect/platform";
import { TodosRouter } from "@/lib/routers/todos";
const handler = RpcServer.toWebHandler(TodosRpcs, {
layer: Layer.mergeAll(
TodosRouter,
RpcSerialization.layerJson,
HttpServer.layerContext
),
});
export const POST = async (req: NextRequest) => {
return await handler.handler(req);
};