🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@sameke/expressjs-decorators

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sameke/expressjs-decorators - npm Package Compare versions

Comparing version
1.1.5
to
1.1.8
+1
-1
dist/express.d.ts
import { Application, NextFunction, Request, Response, Router } from 'express';
export declare type Middleware = (req: Request, res: Response, next: NextFunction) => void;
export type Middleware = (req: Request, res: Response, next: NextFunction) => void;
export declare function Controller(path: string): (target: any) => void;

@@ -4,0 +4,0 @@ export declare function Get(path?: string, middleware?: Middleware[]): (target: any, key: string, descriptor: PropertyDescriptor) => void;

@@ -276,3 +276,3 @@ "use strict";

let meta = getMeta(controller);
let router = express_1.Router();
let router = (0, express_1.Router)();
let url = meta.url;

@@ -357,2 +357,1 @@ for (let methodName of Object.keys(meta.routes)) {

}
//# sourceMappingURL=express.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"express.js","sourceRoot":"","sources":["../src/express.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"express.js","sourceRoot":"","sources":["../src/express.ts"],"names":[],"mappings":"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"}
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {

@@ -10,6 +14,5 @@ if (k2 === undefined) k2 = k;

var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./express"), exports);
//# sourceMappingURL=index.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B"}
{
"name": "@sameke/expressjs-decorators",
"version": "1.1.5",
"version": "1.1.8",
"description": "express decorators",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist/**/*"
],
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "tsc",
"prepare": "npm run build",
"prepublishOnly": "gulp -- bump",
"postpublish": "git add . && git commit -m \"published\" && git push"
"build": "tsc -p tsconfig.json",
"prepare": "npm run build && npm run git && npm version patch",
"git": "git add . && git diff-index --quiet HEAD || git commit -m \"publishing\"",
"postpublish": "git push"
},

@@ -30,11 +33,9 @@ "repository": {

"peerDependencies": {
"express": "^4.17.1"
"express": "4.18.2"
},
"devDependencies": {
"@types/express": "^4.17.1",
"@types/node": "10.17.26",
"gulp": "4.0.2",
"gulp-bump": "3.1.3",
"typescript": "3.9.5"
"@types/express": "4.17.17",
"@types/node": "18.17.17",
"typescript": "5.2.2"
}
}
}
const gulp = require('gulp');
const bump = require('gulp-bump');
gulp.task('bump', () => {
return gulp.src('./package.json')
.pipe(bump({ type: 'patch' }))
.pipe(gulp.dest('./'));
});
import { Application, NextFunction, Request, Response, Router } from 'express';
import * as express from 'express';
import { ServerResponse } from 'http';
enum ParameterType {
REQUEST,
RESPONSE,
PARAMS,
NUM_PARAM,
QUERY,
NUM_QUERY,
BODY,
HEADERS,
NEXT
}
interface IParameterDeclaration {
index: number;
type: ParameterType;
name?: string;
isFloat?: boolean;
}
interface IRouteDeclaration {
url: string;
method: string;
params: IParameterDeclaration[];
mw: Middleware[];
}
export type Middleware = (req: Request, res: Response, next: NextFunction) => void;
/**
* function decorator
* @param path base path for the controller
*/
export function Controller(path: string) {
return (target: any) => {
let meta = getMeta(target.prototype);
meta.url = path;
};
}
/**
* function decorator
* @param path path for get method
*/
export function Get(path: string = '', middleware?: Middleware[]) {
return (target: any, key: string, descriptor: PropertyDescriptor) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
meta.routes[key].url = path || '';
meta.routes[key].method = 'get';
meta.routes[key].mw = middleware;
return;
};
}
/**
* function decorator
* @param path path for post method
*/
export function Post(path: string = '', middleware?: Middleware[]) {
return (target: any, key: string, descriptor: PropertyDescriptor) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
meta.routes[key].url = path;
meta.routes[key].method = 'post';
meta.routes[key].mw = middleware;
return;
};
}
/**
* function decorator
* @param path path for put method
*/
export function Put(path: string = '', middleware?: Middleware[]) {
return (target: any, key: string, descriptor: PropertyDescriptor) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
meta.routes[key].url = path;
meta.routes[key].method = 'put';
meta.routes[key].mw = middleware;
return;
};
}
/**
* function decorator
* @param path path for delete method
*/
export function Delete(path: string = '', middleware?: Middleware[]) {
return (target: any, key: string, descriptor: PropertyDescriptor) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
meta.routes[key].url = path;
meta.routes[key].method = 'delete';
meta.routes[key].mw = middleware;
return;
};
}
/**
* parameter decorator
* @param name name of param to pass from request params
*/
export function Params(name?: string) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.PARAMS
});
};
}
/**
* parameter decorator
* @param name name of param to pass from request params as number
*/
export function NumParam(name: string, isFloat: boolean = false) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.NUM_PARAM,
isFloat: isFloat
});
};
}
/**
* parameter decorator
* @param name name of param to pass from request query
*/
export function Query(name?: string) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.QUERY
});
};
}
/**
* parameter decorator
* @param name name of param to pass from request query as number
*/
export function NumQuery(name: string, isFloat: boolean = false) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.NUM_QUERY,
isFloat: isFloat
});
};
}
/**
* parameter decorator
* @param name name of param to pass from request query
*/
export function Headers(name?: string) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.HEADERS
});
};
}
/**
* parameter decorator
* @param name name of param to pass from request body
*/
export function Body(name?: string) {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
name: name,
type: ParameterType.BODY
});
};
}
/**
* parameter decorator
* parameter to pass express Response object as
*/
export function Response() {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
type: ParameterType.RESPONSE
});
};
}
/**
* parameter decorator
* parameter to pass express Request object as
*/
export function Request() {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
type: ParameterType.REQUEST
});
};
}
/**
* parameter decorator
* parameter to pass express next function as
*/
export function Next() {
return (target: any, key: string, index: number) => {
let meta = getMeta(target);
if (meta.routes[key] == null) {
meta.routes[key] = {} as IRouteDeclaration;
}
let routeDeclaration = meta.routes[key];
if (routeDeclaration.params == null) {
routeDeclaration.params = [];
}
routeDeclaration.params.push({
index: index,
type: ParameterType.NEXT
});
};
}
/**
* function decorator
* wraps express route method in try catch and will respond with error result message
*/
export function CatchAndSendError() {
return (target: any, key: string, descriptor: PropertyDescriptor) => {
const originalMethod = descriptor.value;
descriptor.value = function (...args: any) {
// if we do not have a response object we cannot handle the error
let res: Response = null;
for (let arg of args) {
if (arg instanceof ServerResponse) {
res = arg as Response;
break;
}
}
try {
let value = originalMethod.apply(this, args);
if (value != null && value.catch != null) {
value.catch((err: Error) => {
if (res != null) {
res.status(400).json({ error: err.message });
} else {
// throw and let default handler handle this
throw err;
}
});
}
} catch (ex) {
if (res != null) {
res.status(400).json({ error: ex.message || 'an error has occurred processing request' });
} else {
// throw and let default handler handle this
throw ex;
}
}
};
};
}
/**
* creates and registeres the given controller type with express
* @param app express app or router instance
* @param controller instance of your Express router class decorated with the @Controller attribute
*/
// tslint:disable-next-line:no-shadowed-variable
export function registerController(app: Application | Router, controller: any) {
let meta = getMeta(controller);
let router = Router();
let url = meta.url;
for (let methodName of Object.keys(meta.routes)) {
let route = meta.routes[methodName];
const routeHandler = (req: Request, res: Response, next: NextFunction) => {
let args = getParameters(req, res, next, route.params);
let handler = controller[methodName].apply(controller, args);
return handler;
};
if (route.mw != null && route.mw.length > 0) {
(router as any)[route.method].apply(router, [route.url, ...route.mw, routeHandler]);
} else {
(router as any)[route.method].apply(router, [route.url, routeHandler]);
}
}
app.use(url, router as Application); // router as sub application, for some reason the type defs updated for v 4.17+ and must cast to Application
}
function getParameters(req: Request, res: Response, next: NextFunction, params: IParameterDeclaration[]): any[] {
if (params == null || params.length <= 0) {
return [req, res, next];
}
const args = [];
for (let pd of params) {
switch (pd.type) {
case ParameterType.RESPONSE:
args[pd.index] = res;
break;
case ParameterType.REQUEST:
args[pd.index] = req;
break;
case ParameterType.NEXT:
args[pd.index] = next;
break;
case ParameterType.PARAMS:
args[pd.index] = pd.name != null ? (req.params[pd.name] != null ? req.params[pd.name] : null) : req.params;
break;
case ParameterType.NUM_PARAM:
try {
let value = pd.isFloat ? parseFloat(req.params[pd.name]) : parseInt(req.params[pd.name], 10);
args[pd.index] = isNaN(value) === true ? null : value;
} catch {
args[pd.index] = null;
}
break;
case ParameterType.QUERY:
args[pd.index] = pd.name != null ? (req.query[pd.name] != null ? req.query[pd.name] : null) : req.query;
break;
case ParameterType.NUM_QUERY:
try {
let value = pd.isFloat ? parseFloat(req.query[pd.name]) : parseInt(req.query[pd.name], 10);
args[pd.index] = isNaN(value) === true ? null : value;
} catch {
args[pd.index] = null;
}
break;
case ParameterType.BODY:
args[pd.index] = pd.name != null ? (req.body[pd.name] != null ? req.body[pd.name] : null) : req.body;
break;
case ParameterType.HEADERS:
args[pd.index] = pd.name != null ? (req.headers[pd.name] != null ? req.headers[pd.name] : null) : req.headers;
break;
default:
args[pd.index] = null;
}
}
return args;
}
function getMeta(target: any): { url: string, routes: { [key: string]: IRouteDeclaration } } {
if (target.__express_meta__ == null) {
target.__express_meta__ = {
url: '',
routes: {}
};
}
return target.__express_meta__;
}
export * from './express';
{
"compileOnSave": false,
"compilerOptions": {
"rootDir": "src",
"outDir": "dist",
"sourceMap": true,
"target": "es2017",
"module": "commonjs",
"declaration": true,
"noImplicitAny": true,
"removeComments": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"moduleResolution": "node"
},
"include": [
"src"
],
"exclude": [
"node_modules"
]
}
{
"extends": "tslint:recommended",
"rules": {
"quotemark": [
true,
"single"
],
"trailing-comma": false,
"object-literal-sort-keys": false,
"semicolon": true,
"eofline": false,
"interface-name": true,
"space-before-function-paren": false,
"variable-name": [
true,
"ban-keywords",
"check-format",
"allow-leading-underscore",
"allow-pascal-case"
],
"no-empty": false,
"no-empty-interface": false,
"max-line-length": [
true,
{
"limit": 200,
"ignore-pattern": "^\\s*\\*"
}
],
"member-ordering": false,
"object-literal-shorthand": false,
"prefer-const": false,
"forin": false
},
"linterOptions": {
"exclude": [
"node_modules"
]
}
}