/**
* @module flitter-orm/src/schema/types/Date
*/
const Type = require('../Type')
/**
* Schema type representing an ISODate value.
* @extends {module:flitter-orm/src/schema/Type~Type}
*/
class DateType extends Type {
/**
* Determine if the specified value can be cast
* to a JavaScript Date instance.
* @param {*} value
* @returns {boolean}
*/
static validate(value) {
if ( value instanceof Date ) return true
else return (new Date(value)).toString() !== 'Invalid Date'
}
/**
* Casts the specified value to a JavaScript Date instance.
* @param {*} value
* @returns {Date}
*/
static cast(value) {
return new Date(value)
}
}
module.exports = exports = DateType