18 lines
447 B
TypeScript
18 lines
447 B
TypeScript
|
import { FreshContext, Handler } from '$fresh/server.ts'
|
||
|
import { TablesForModels } from '@lyrics/db.ts'
|
||
|
|
||
|
export function crudHandlerFor<
|
||
|
T extends { id: string },
|
||
|
M extends { parse: (a: T) => T },
|
||
|
P extends keyof typeof TablesForModels,
|
||
|
>(m: M, p: P): Handler {
|
||
|
return {
|
||
|
async GET(req: Request, ctx: FreshContext) {
|
||
|
if (req.
|
||
|
const resp = await ctx.render();
|
||
|
resp.headers.set("X-Custom-Header", "Hello");
|
||
|
return resp;
|
||
|
}
|
||
|
}
|
||
|
}
|