im-angular-validators
Version:
This library will help you with lots of already written mostly used validators for Angular 2+ applications.
16 lines • 2.65 kB
JavaScript
import { IMWorkingDateFormat } from '../constants/general.constant';
export const IMDateInRangeValidator = (from, to) => {
return (control) => {
const error = {
isInvalid: true,
from: from?.format(IMWorkingDateFormat),
to: to?.format(IMWorkingDateFormat)
};
if (from && to && control.value) {
if (from.isAfter(control.value) || to.isBefore(control.value)) {
return { dateInRange: error };
}
}
};
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1pbi1yYW5nZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXZhbGlkYXRvcnMvc3JjL2xpYi92YWxpZGF0b3JzL2RhdGUtaW4tcmFuZ2UudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRWxFLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQUMsSUFBWSxFQUFFLEVBQVUsRUFBZSxFQUFFO0lBQzlFLE9BQU8sQ0FBQyxPQUF3QixFQUE4QyxFQUFFO1FBQzlFLE1BQU0sS0FBSyxHQUFnQztZQUN6QyxTQUFTLEVBQUUsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLG1CQUFtQixDQUFDO1lBQ3ZDLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLG1CQUFtQixDQUFDO1NBQ3BDLENBQUM7UUFFRixJQUFJLElBQUksSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRTtZQUMvQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM3RCxPQUFPLEVBQUMsV0FBVyxFQUFFLEtBQUssRUFBQyxDQUFDO2FBQzdCO1NBQ0Y7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtNb21lbnR9IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7SU1EYXRlSW5SYW5nZUVycm9ySW50ZXJmYWNlfSBmcm9tICcuLi9pbnRlcmZhY2VzL2RhdGUtaW4tcmFuZ2UtZXJyb3IuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtJTVdvcmtpbmdEYXRlRm9ybWF0fSBmcm9tICcuLi9jb25zdGFudHMvZ2VuZXJhbC5jb25zdGFudCc7XHJcblxyXG5leHBvcnQgY29uc3QgSU1EYXRlSW5SYW5nZVZhbGlkYXRvciA9IChmcm9tOiBNb21lbnQsIHRvOiBNb21lbnQpOiBWYWxpZGF0b3JGbiA9PiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7ZGF0ZUluUmFuZ2U6IElNRGF0ZUluUmFuZ2VFcnJvckludGVyZmFjZX0gPT4ge1xyXG4gICAgY29uc3QgZXJyb3I6IElNRGF0ZUluUmFuZ2VFcnJvckludGVyZmFjZSA9IHtcclxuICAgICAgaXNJbnZhbGlkOiB0cnVlLFxyXG4gICAgICBmcm9tOiBmcm9tPy5mb3JtYXQoSU1Xb3JraW5nRGF0ZUZvcm1hdCksXHJcbiAgICAgIHRvOiB0bz8uZm9ybWF0KElNV29ya2luZ0RhdGVGb3JtYXQpXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChmcm9tICYmIHRvICYmIGNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgaWYgKGZyb20uaXNBZnRlcihjb250cm9sLnZhbHVlKSB8fCB0by5pc0JlZm9yZShjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICAgIHJldHVybiB7ZGF0ZUluUmFuZ2U6IGVycm9yfTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcbn07XHJcbiJdfQ==