@adonisjs-community/girouette
Version:
An AdonisJS package allowing decorators-based routing.
22 lines (21 loc) • 557 B
JavaScript
import { REFLECT_GROUP_MIDDLEWARE_KEY } from '../constants.js';
/**
* The GroupMiddleware decorator allows you to apply middleware to all routes within
* a controller.
*
* @param middleware Middleware to apply to all routes
*
* @example
* ```ts
* @GroupMiddleware([middleware.auth()])
* export default class AdminController {
* @Get('/dashboard')
* index() {}
* }
* ```
*/
export const GroupMiddleware = (middleware) => {
return (target) => {
Reflect.defineMetadata(REFLECT_GROUP_MIDDLEWARE_KEY, middleware, target);
};
};