UNPKG

validatees

Version:

✅ Validation library for ES6+ modules

32 lines (31 loc) 1.09 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.isValidDate = void 0; const isFalsy_1 = __importDefault(require("../types/isFalsy")); function isValidDate(date) { if (date instanceof Date) { const dateString = new Date(date).toDateString(); return dateString !== "Invalid Date" && false === isNaN(Date.parse(dateString)); } else if (typeof date === "string") { const parsedDate = Date.parse(date); const numDate = Number.parseInt(date); if (0 > numDate) { return false; } return !(0, isFalsy_1.default)(parsedDate); } else if (typeof date === "number") { if (0 > date) { return false; } date = new Date(date); return !(0, isFalsy_1.default)(date.getTime()) && !(0, isFalsy_1.default)(date); } return false; } exports.isValidDate = isValidDate; exports.default = isValidDate;