import { FreshContext, Handlers } from '$fresh/server.ts' import { knownMethods } from '$fresh/server/router.ts' import { isTable } from '@lyrics/db.ts' import { crudHandlerFor } from '@lyrics/api.ts' import { Display, Playlist, Song } from '@lyrics/models.ts' export const subHandlers = { song: crudHandlerFor(Song, 'song'), playlist: crudHandlerFor(Playlist, 'playlist'), display: crudHandlerFor(Display, 'display'), } export function isMethod(value: string): value is Table { return (value in []) } export const handler = (req: Request, ctx: FreshContext): Response => { const table = ctx.params.table req.method if (isTable(table)) { console.log({ table }) return new Response('yo') } else { return new Response( JSON.stringify({ message: `invalid table: ${ctx.params.table}` }), { status: 401 }, ) } }