@tsed/common
Version:
A TypeScript Framework on top of Express
31 lines • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ParseExpressionPipe = void 0;
const tslib_1 = require("tslib");
const core_1 = require("@tsed/core");
const di_1 = require("@tsed/di");
const ParamTypes_1 = require("../models/ParamTypes");
let ParseExpressionPipe = class ParseExpressionPipe {
transform(value, param) {
if (!value) {
return value;
}
const { paramType, type } = param;
let { expression } = param;
if (paramType === ParamTypes_1.ParamTypes.HEADER) {
expression = String(param.expression).toLowerCase();
}
value = core_1.getValue(value, expression);
if ([ParamTypes_1.ParamTypes.QUERY, ParamTypes_1.ParamTypes.PATH].includes(paramType) && value === "" && type !== String) {
return undefined;
}
return value;
}
};
ParseExpressionPipe = tslib_1.__decorate([
di_1.Injectable({
priority: -1
})
], ParseExpressionPipe);
exports.ParseExpressionPipe = ParseExpressionPipe;
//# sourceMappingURL=ParseExpressionPipe.js.map