0.1.21 #22
@@ -16,11 +16,22 @@ const { TRPCContextCreator, TRPCContextCreatorLive } = TRPC.TRPCContextCreator.m
|
||||
const { TRPCBuilder, TRPCBuilderLive } = TRPC.TRPCBuilder.make<Services>()
|
||||
|
||||
|
||||
const router = TRPCBuilder.pipe(Effect.map(t => t.router({
|
||||
const router = Effect.gen(function*() {
|
||||
const t = yield* TRPCBuilder
|
||||
|
||||
return t.router({
|
||||
ping: t.procedure.query(({ ctx }) => ctx.run(
|
||||
Effect.succeed("pong")
|
||||
)),
|
||||
})))
|
||||
|
||||
expressOnlyProcedure: t.procedure
|
||||
.use(yield* TRPC.ExpressOnly)
|
||||
.query(({ ctx }) => ctx.run(Effect.gen(function*() {
|
||||
ctx.transaction
|
||||
}))),
|
||||
})
|
||||
})
|
||||
|
||||
const { TRPCRouter, TRPCRouterLive } = TRPC.TRPCRouter.make(router)
|
||||
|
||||
|
||||
|
||||
@@ -9,7 +9,8 @@ export const ExpressOnly = importTRPCServer.pipe(Effect.map(({
|
||||
}) => experimental_standaloneMiddleware<{
|
||||
ctx: TRPCContextTransaction
|
||||
}>().create(({ ctx, next }) => next({
|
||||
ctx: Match.value(ctx.transaction).pipe(
|
||||
ctx: {
|
||||
transaction: Match.value(ctx.transaction).pipe(
|
||||
Match.tag("Express", identity),
|
||||
|
||||
Match.orElse(() => {
|
||||
@@ -19,4 +20,5 @@ export const ExpressOnly = importTRPCServer.pipe(Effect.map(({
|
||||
})
|
||||
}),
|
||||
)
|
||||
}
|
||||
}))))
|
||||
|
||||
@@ -9,7 +9,8 @@ export const WebSocketOnly = importTRPCServer.pipe(Effect.map(({
|
||||
}) => experimental_standaloneMiddleware<{
|
||||
ctx: TRPCContextTransaction
|
||||
}>().create(({ ctx, next }) => next({
|
||||
ctx: Match.value(ctx.transaction).pipe(
|
||||
ctx: {
|
||||
transaction: Match.value(ctx.transaction).pipe(
|
||||
Match.tag("WebSocket", identity),
|
||||
|
||||
Match.orElse(() => {
|
||||
@@ -19,4 +20,5 @@ export const WebSocketOnly = importTRPCServer.pipe(Effect.map(({
|
||||
})
|
||||
}),
|
||||
)
|
||||
}
|
||||
}))))
|
||||
|
||||
Reference in New Issue
Block a user