@valkyriestudios/validator
Version:
A lightweight configurable javascript validator
25 lines (24 loc) • 932 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.vBetween = vBetween;
exports.default = vBetween;
function vBetween(val, lower_bound, upper_bound) {
const n_upper_bound = typeof upper_bound === 'string' ? parseFloat(upper_bound) : upper_bound;
const n_lower_bound = typeof lower_bound === 'string' ? parseFloat(lower_bound) : lower_bound;
if (!Number.isFinite(n_upper_bound) || !Number.isFinite(n_lower_bound))
return false;
if (typeof val === 'string' || Array.isArray(val)) {
const len = val.length;
return len > n_lower_bound && len < n_upper_bound;
}
else if (Number.isFinite(val)) {
return val > n_lower_bound && val < n_upper_bound;
}
else if (val instanceof File || val instanceof Blob) {
const len = val.size;
return len > n_lower_bound && len < n_upper_bound;
}
else {
return false;
}
}