clonegur/backend/server/decorators/route.ts

10 lines
343 B
TypeScript

import Router, { Handler, addMetaQuery } from "../Router.ts";
export default function route<KeyT extends keyof T & string, T extends Router & { [x in KeyT]: Handler }>(path?: string) {
return (target: T, key: KeyT) => {
addMetaQuery(target, r => ({
handler: r[key],
path: path ?? key,
}));
};
}