This commit is contained in:
Julien Valverdé
2024-07-06 23:31:07 +02:00
parent b7ecf2401d
commit 6e429060d5
8 changed files with 17 additions and 14 deletions

BIN
bun.lockb

Binary file not shown.

View File

@@ -3,11 +3,11 @@
"type": "module", "type": "module",
"exports": { "exports": {
"./data": "./src/data/index.ts", "./data": "./src/data/index.ts",
"./rpc": "./src/rpc/index.ts",
"./traits": "./src/traits/index.ts" "./traits": "./src/traits/index.ts"
}, },
"private": true, "private": true,
"dependencies": { "dependencies": {
"@effect/rpc": "^0.31.18",
"@effect/schema": "^0.68.15", "@effect/schema": "^0.68.15",
"@thilawyn/thilalib": "^0.1.5", "@thilawyn/thilalib": "^0.1.5",
"effect": "^3.4.6" "effect": "^3.4.6"

View File

@@ -1,11 +1 @@
import { Rpc } from "@effect/rpc" export type { Router } from "@todo-tests/server"
import { Schema as S } from "@effect/schema"
import { JsonifiableTodo } from "../data"
export class GetTodos extends Rpc.StreamRequest<GetTodos>()(
"GetTodos",
S.Never,
JsonifiableTodo,
{},
) {}

View File

@@ -1,11 +1,13 @@
{ {
"name": "@todo-tests/server", "name": "@todo-tests/server",
"type": "module", "type": "module",
"exports": {
".": "./src/router.ts"
},
"private": true, "private": true,
"dependencies": { "dependencies": {
"@effect/platform": "^0.58.18", "@effect/platform": "^0.58.18",
"@effect/platform-bun": "^0.38.17", "@effect/platform-bun": "^0.38.17",
"@effect/rpc-http": "^0.29.18",
"@effect/schema": "^0.68.15", "@effect/schema": "^0.68.15",
"@thilawyn/thilalib": "^0.1.5", "@thilawyn/thilalib": "^0.1.5",
"@todo-tests/common": "workspace:*", "@todo-tests/common": "workspace:*",

View File

@@ -0,0 +1,4 @@
import type { RPCRouter } from "./rpc/RPCRouter"
export type Router = RPCRouter.Router

View File

@@ -23,6 +23,5 @@ export class RPCRouter extends Context.Tag("RPCRouter")<RPCRouter,
export module RPCRouter { export module RPCRouter {
export type Router = Context.Tag.Service<RPCRouter> export type Router = Context.Tag.Service<RPCRouter>
export const Live = Layer.effect(RPCRouter, router) export const Live = Layer.effect(RPCRouter, router)
} }

View File

@@ -9,6 +9,9 @@
"preview": "vite preview" "preview": "vite preview"
}, },
"dependencies": { "dependencies": {
"@tanstack/react-query": "4",
"@trpc/client": "^10.45.2",
"@trpc/react-query": "^10.45.2",
"react": "^18.3.1", "react": "^18.3.1",
"react-dom": "^18.3.1" "react-dom": "^18.3.1"
}, },

View File

@@ -0,0 +1,5 @@
import type { Router } from "@todo-tests/common/rpc"
import { createTRPCReact } from "@trpc/react-query"
export const trpc = createTRPCReact<Router>()