import {ControllerRegistry} from '../ControllerRegistry'; export function Get(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'get', route); }; } export function Post(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'post', route); }; } export function Put(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'put', route); }; } export function Patch(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'patch', route); }; } export function Delete(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'delete', route); }; } export function Options(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'options', route); }; } export function All(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'all', route); }; } // head request should not return anything export function Head(route: string | RegExp) { return (target: any, actionName: string) => { registerHelper(target, actionName, 'head', route); }; } function registerHelper(target, actionName, method, route) { ControllerRegistry.registerAction(target.constructor, actionName, method, route); }