Changeset View
Changeset View
Standalone View
Standalone View
lib/app/base-chips/field-types/date.js
"use strict"; | |||||
module.exports = { | module.exports = { | ||||
name: "date", | name: "date", | ||||
get_description: function() { | get_description() { | ||||
return "Date standard ISO 8601 (YYYY-MM-DD)"; | return "Date standard ISO 8601 (YYYY-MM-DD)"; | ||||
}, | }, | ||||
is_proper_value: function(context, params, date) { | is_proper_value(context, params, date) { | ||||
const date_in_string = date.toString(); | const date_in_string = date.toString(); | ||||
const regex = /^([0-9]{4})-(0?[1-9]|1[0-2])-([0-2]?[0-9]|30|31)$/; // granulation_per_day | const regex = /^([0-9]{4})-(0?[1-9]|1[0-2])-([0-2]?[0-9]|30|31)$/; // granulation_per_day | ||||
if ( | if ( | ||||
regex.test(date_in_string) === false || | regex.test(date_in_string) === false || | ||||
isNaN(Date.parse(date_in_string)) | isNaN(Date.parse(date_in_string)) | ||||
) { | ) { | ||||
return Promise.reject( | return Promise.reject( | ||||
`Value "${date}" is not date calendar format. Expected value standard IS0 8601 (YYYY-MM-DD)` | `Value "${date}" is not date calendar format. Expected value standard IS0 8601 (YYYY-MM-DD)` | ||||
); | ); | ||||
} else { | |||||
return Promise.resolve(); | |||||
} | } | ||||
return Promise.resolve(); | |||||
}, | }, | ||||
}; | }; |