UNPKG

sipp

Version:

An Opinionated, High-Productivity MVC Web Framework in TypeScript

87 lines 2.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Query = exports.Params = exports.Headers = exports.Body = exports.Req = void 0; const Validator_1 = require("../../validation/Validator"); const ORIGINAL_BODY = Symbol('original body'); class Req { constructor(req) { this.req = req; this.sym = Symbol('request storage'); req[this.sym] = {}; this.method = req.method; this.path = req.path; this.id = req.id; } set(key, value) { this.req[this.sym][key] = value; } get(key) { return this.req[this.sym][key]; } } exports.Req = Req; class Body extends Validator_1.Validator { constructor(__body) { super(); this.__body = __body; Object.assign(this, __body); this[ORIGINAL_BODY] = JSON.parse(JSON.stringify(__body)); } getOriginal() { return this[ORIGINAL_BODY]; } get(key, defaultValue) { return this.hasOwnProperty(key) ? this[key] : defaultValue; } set(key, value) { this.__body[key] = value; this[key] = value; } } exports.Body = Body; class Headers extends Validator_1.Validator { constructor(__headers) { super(); this.__headers = __headers; Object.assign(this, __headers); } get(key, defaultValue) { return this.hasOwnProperty(key) ? this[key] : defaultValue; } set(key, value) { this.__headers[key] = value; this[key] = value; } } exports.Headers = Headers; class Params extends Validator_1.Validator { constructor(__params) { super(); this.__params = __params; Object.assign(this, __params); } get(key, defaultValue) { return this.hasOwnProperty(key) ? this[key] : defaultValue; } set(key, value) { this.__params[key] = value; this[key] = value; } } exports.Params = Params; class Query extends Validator_1.Validator { constructor(__query) { super(); this.__query = __query; Object.assign(this, __query); } get(key, defaultValue) { return this.hasOwnProperty(key) ? this[key] : defaultValue; } set(key, value) { this.__query[key] = value; this[key] = value; } } exports.Query = Query; //# sourceMappingURL=Req.js.map