UNPKG

validatees

Version:

✅ Validation library for ES6+ modules

38 lines (37 loc) 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isFalsy = void 0; function isFalsy(value) { if ("undefined" === typeof value || undefined === typeof value || value === null || null === typeof value) { return true; } else if ("bigint" === typeof value) { return BigInt(Number.MAX_SAFE_INTEGER) < value || BigInt(Number.MIN_SAFE_INTEGER) > value; } else if ("number" === typeof value) { return (0 === value || Object.is(value, -0) || Number.isNaN(value) || Number.MAX_SAFE_INTEGER < value || Number.MIN_SAFE_INTEGER > value); } else if ("string" === typeof value) { return ("" === value || `` === value || " " === value.trim() || "" === value.trim() || 0 >= value.length || 0 >= value.trim().length || "0" === value.trim() || "0" === value); } else if ("boolean" === typeof value) { return false === value; } else if ("function" === typeof value) { return isFalsy(value()); } return false; } exports.isFalsy = isFalsy; exports.default = isFalsy;