ng-devui
Version:
DevUI components based on Angular
19 lines • 2.73 kB
JavaScript
import * as datefns from 'date-fns';
export function isValidDate(date) {
return datefns.isDate(date) && !isNaN(date.getTime());
}
export function parseDate(date, pattern) {
if (!date) {
return null;
}
if (datefns.isDate(date)) {
return date;
}
const parsedDate = pattern ? datefns.parse(date, pattern, new Date())
: datefns.parseISO(date);
return isValidDate(parsedDate) ? parsedDate : new Date(date);
}
export function formatDate(date, pattern = 'y-MM-dd HH:mm:ss') {
return isValidDate(date) ? datefns.format(date, pattern) : '';
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2RldnVpL3V0aWxzL2RhdGUtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFFcEMsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFVO0lBQ3BDLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUN4RCxDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FBQyxJQUFTLEVBQUUsT0FBZ0I7SUFDbkQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNuRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixPQUFPLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUFVLEVBQUUsT0FBTyxHQUFHLGtCQUFrQjtJQUNqRSxPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZGF0ZWZucyBmcm9tICdkYXRlLWZucyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRGF0ZShkYXRlOiBEYXRlKTogYm9vbGVhbiB7XG4gIHJldHVybiBkYXRlZm5zLmlzRGF0ZShkYXRlKSAmJiAhaXNOYU4oZGF0ZS5nZXRUaW1lKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VEYXRlKGRhdGU6IGFueSwgcGF0dGVybj86IHN0cmluZyk6IERhdGUge1xuICBpZiAoIWRhdGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChkYXRlZm5zLmlzRGF0ZShkYXRlKSkge1xuICAgIHJldHVybiBkYXRlO1xuICB9XG4gIGNvbnN0IHBhcnNlZERhdGUgPSBwYXR0ZXJuID8gZGF0ZWZucy5wYXJzZShkYXRlLCBwYXR0ZXJuLCBuZXcgRGF0ZSgpKVxuICAgIDogZGF0ZWZucy5wYXJzZUlTTyhkYXRlKTtcbiAgcmV0dXJuIGlzVmFsaWREYXRlKHBhcnNlZERhdGUpID8gcGFyc2VkRGF0ZSA6IG5ldyBEYXRlKGRhdGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0RGF0ZShkYXRlOiBEYXRlLCBwYXR0ZXJuID0gJ3ktTU0tZGQgSEg6bW06c3MnKTogc3RyaW5nIHtcbiAgcmV0dXJuIGlzVmFsaWREYXRlKGRhdGUpID8gZGF0ZWZucy5mb3JtYXQoZGF0ZSwgcGF0dGVybikgOiAnJztcbn1cbiJdfQ==