UNPKG

express-cargo

Version:

express middleware for class-based request parsing

49 lines (48 loc) 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: Object.getOwnPropertyDescriptor(all, name).get }); } _export(exports, { get request () { return request; }, get transform () { return transform; }, get virtual () { return virtual; } }); const _metadata = require("./metadata"); function transform(transformer) { return (target, propertyKey)=>{ const classMeta = new _metadata.CargoClassMetadata(target); const fieldMeta = classMeta.getFieldMetadata(propertyKey); fieldMeta.setTransformer(transformer); classMeta.setFieldMetadata(propertyKey, fieldMeta); }; } function request(transformer) { return (target, propertyKey)=>{ const classMeta = new _metadata.CargoClassMetadata(target); const fieldMeta = classMeta.getFieldMetadata(propertyKey); fieldMeta.setRequestTransformer(transformer); classMeta.setFieldMetadata(propertyKey, fieldMeta); classMeta.setFieldList(propertyKey); }; } function virtual(transformer) { return (target, propertyKey)=>{ const classMeta = new _metadata.CargoClassMetadata(target); const fieldMeta = classMeta.getFieldMetadata(propertyKey); fieldMeta.setVirtualTransformer(transformer); classMeta.setFieldMetadata(propertyKey, fieldMeta); classMeta.setFieldList(propertyKey); }; }