class-validator
Version:
Decorator-based property validation for classes.
25 lines • 1.2 kB
JavaScript
import { buildMessage, ValidateBy } from '../common/ValidateBy';
import matchesValidator from 'validator/lib/matches';
export var IS_MILITARY_TIME = 'isMilitaryTime';
/**
* Checks if the string represents a time without a given timezone in the format HH:MM (military)
* If the given value does not match the pattern HH:MM, then it returns false.
*/
export function isMilitaryTime(value) {
var militaryTimeRegex = /^([01]\d|2[0-3]):?([0-5]\d)$/;
return typeof value === 'string' && matchesValidator(value, militaryTimeRegex);
}
/**
* Checks if the string represents a time without a given timezone in the format HH:MM (military)
* If the given value does not match the pattern HH:MM, then it returns false.
*/
export function IsMilitaryTime(validationOptions) {
return ValidateBy({
name: IS_MILITARY_TIME,
validator: {
validate: function (value, args) { return isMilitaryTime(value); },
defaultMessage: buildMessage(function (eachPrefix) { return eachPrefix + '$property must be a valid representation of military time in the format HH:MM'; }, validationOptions),
},
}, validationOptions);
}
//# sourceMappingURL=IsMilitaryTime.js.map