@vulcan-sql/build
Version:
VulcanSQL package for building projects
30 lines • 1.32 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AddRequiredValidatorForPath = void 0;
const tslib_1 = require("tslib");
const core_1 = require("@vulcan-sql/core");
const middleware_1 = require("./middleware");
// Add the "required" validator when the parameters are in path
class AddRequiredValidatorForPath extends middleware_1.SchemaParserMiddleware {
handle(schemas, next) {
var _a, _b;
return tslib_1.__awaiter(this, void 0, void 0, function* () {
yield next();
const requests = schemas.request || [];
for (const request of requests) {
if (request.fieldIn !== core_1.FieldInType.PATH)
continue;
if (!request.validators)
request.validators = [];
if (!((_a = request.validators) === null || _a === void 0 ? void 0 : _a.some((validator) => validator.name === 'required'))) {
(_b = request.validators) === null || _b === void 0 ? void 0 : _b.push({
name: 'required',
args: {},
});
}
}
});
}
}
exports.AddRequiredValidatorForPath = AddRequiredValidatorForPath;
//# sourceMappingURL=addRequiredValidatorForPath.js.map