validata
Version:
Type safe data validation and sanitization
23 lines • 1.12 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.maybeAsBoolean = exports.asBoolean = exports.maybeBoolean = exports.isBoolean = void 0;
const common_1 = require("./common");
const check = (value) => {
return typeof value === 'boolean';
};
const convert = (value) => {
if (value === 'false' || value === '' || value === 0 || Number.isNaN(value))
return false;
if (value === 'true' || (typeof value === 'number' && isFinite(value)))
return true;
return undefined;
};
const coerce = () => (next) => (value, path) => {
return next(value, path);
};
const validate = (value, path, options) => (0, common_1.basicValidation)(value, path, options);
exports.isBoolean = (0, common_1.createIsCheck)('boolean', check, coerce, validate);
exports.maybeBoolean = (0, common_1.createMaybeCheck)('boolean', check, coerce, validate);
exports.asBoolean = (0, common_1.createAsCheck)('boolean', check, convert, coerce, validate);
exports.maybeAsBoolean = (0, common_1.createMaybeAsCheck)('boolean', check, convert, coerce, validate);
//# sourceMappingURL=boolean.js.map
;