UNPKG

vue-good-table

Version:

A simple, clean data table for VueJS (2.x) with essential features like sorting, column filtering, pagination etc

35 lines (29 loc) 754 B
import { format, parse, isValid, compareAsc } from 'date-fns'; import clone from 'lodash.clone'; import def from './default'; const date = clone(def); date.isRight = true; date.compare = function (x, y, column) { function cook(d) { if (column && column.dateInputFormat) { return parse(`${d}`, `${column.dateInputFormat}`, new Date()); } return d; } x = cook(x); y = cook(y); if (!isValid(x)) { return -1; } if (!isValid(y)) { return 1; } return compareAsc(x, y); }; date.format = function (v, column) { if (v === undefined || v === null) return ''; // convert to date const date = parse(v, column.dateInputFormat, new Date()); return format(date, column.dateOutputFormat); }; export default date;