aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/lib/trpc.tsx
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-02-11 14:54:52 +0000
committerMohamedBassem <me@mbassem.com>2024-02-11 14:55:09 +0000
commit2c2d05fd0a2c3c26d765f8a6beb88d907a097c1d (patch)
treec4738ba0bc011d60361f89aca9be3293474ab9e9 /packages/web/lib/trpc.tsx
parentc2f1d6d8b8a0f09820153fc736806b147d46abfe (diff)
downloadkarakeep-2c2d05fd0a2c3c26d765f8a6beb88d907a097c1d.tar.zst
refactor: Migrating to trpc instead of next's route handers
Diffstat (limited to '')
-rw-r--r--packages/web/lib/trpc.tsx20
1 files changed, 20 insertions, 0 deletions
diff --git a/packages/web/lib/trpc.tsx b/packages/web/lib/trpc.tsx
new file mode 100644
index 00000000..540c6ab5
--- /dev/null
+++ b/packages/web/lib/trpc.tsx
@@ -0,0 +1,20 @@
+"use client";
+import { httpBatchLink } from "@trpc/client";
+import type { AppRouter } from "@/server/api/routers/_app";
+
+import { loggerLink } from "@trpc/client";
+import { createTRPCClient } from "@trpc/client";
+
+export const api = createTRPCClient<AppRouter>({
+ links: [
+ loggerLink({
+ enabled: (op) =>
+ process.env.NODE_ENV === "development" ||
+ (op.direction === "down" && op.result instanceof Error),
+ }),
+ httpBatchLink({
+ // TODO: Change this to be a full URL exposed as a client side setting
+ url: `/api/trpc`,
+ }),
+ ],
+});