UNPKG

@lobehub/chat

Version:

Lobe Chat - an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.

44 lines (40 loc) 1.22 kB
import { z } from 'zod'; import { DESKTOP_USER_ID } from '@/const/desktop'; import { TableViewerRepo } from '@/database/repositories/tableViewer'; import { publicProcedure, router } from '@/libs/trpc/lambda'; import { serverDatabase } from '@/libs/trpc/lambda/middleware'; const pgTableProcedure = publicProcedure.use(serverDatabase).use(async ({ ctx, next }) => { return next({ ctx: { tableViewerRepo: new TableViewerRepo(ctx.serverDB, DESKTOP_USER_ID), }, }); }); export const pgTableRouter = router({ getAllTables: pgTableProcedure.query(async ({ ctx }) => { return ctx.tableViewerRepo.getAllTables(); }), getTableData: pgTableProcedure .input( z.object({ page: z.number(), pageSize: z.number(), tableName: z.string(), }), ) .query(async ({ input, ctx }) => { return ctx.tableViewerRepo.getTableData(input.tableName, { page: input.page, pageSize: input.pageSize, }); }), getTableDetails: pgTableProcedure .input( z.object({ tableName: z.string(), }), ) .query(async ({ input, ctx }) => { return ctx.tableViewerRepo.getTableDetails(input.tableName); }), });