@naturalcycles/nodejs-lib
Version:
Standard library for Node.js
19 lines • 936 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const JoiLib = require("@hapi/joi");
const dateString_extension_1 = require("./dateString.extension");
const dividable_extension_1 = require("./dividable.extension");
exports.Joi = JoiLib.defaults(schema => {
// hack to prevent infinite recursion due to .empty('') where '' is a stringSchema itself
if (schema.schemaType === 'string') {
return schema
.trim() // trim all strings by default
.empty([schema.valid('')]); // treat '' as empty (undefined, will be stripped out)
}
// Treat `null` as undefined for all schema types
// undefined values will be stripped by default from object values
return schema.empty(null);
})
.extend((joi) => dateString_extension_1.dateStringExtension(joi))
.extend((joi) => dividable_extension_1.dividableExtension(joi));
//# sourceMappingURL=joi.extensions.js.map