UNPKG

@busy-hour/blaze

Version:

<h1 align='center'>🔥 Blaze</h1> <div align='center'> An event driven framework for 🔥 Hono.js </div>

24 lines (23 loc) • 720 B
// src/loader/trpc/helper.ts import { z } from "zod"; function getValidator(validator) { const defaultValidation = z.any().nullable().default(null); return z.object({ headers: validator?.header ?? defaultValidation, params: validator?.params ?? defaultValidation, query: validator?.query ?? defaultValidation, body: validator?.body ?? defaultValidation }); } function trpcHandler(action, input) { const { body = {}, headers = {}, params = {}, query = {} } = input; return action.actionHandler(body, params, headers, query); } function getTrpcInput(procedure, action) { return procedure.input(getValidator(action.action.validator)); } export { getTrpcInput, getValidator, trpcHandler };