Validate anything as you need using a simple higher order function.
NPM:
npm i eyval
Yarn:
yarn add eyval
import eyval from 'eyval'
const isOldEnough = (age: number) => age >= 18
const isYoungEnough = (age: number) => age < 100
const validateAge = eyval<number>(isOldEnough, isYoungEnough)
const validAge = 20
const tooYoung = 14
const tooOld = 200
validateAge(validAge) // returns true
validateAge(tooYoung) // returns false
validateAge(tooOld) // returns false
import eyval from 'eyval'
import isEmail from 'validator/lib/isEmail'
const validEmailAddress = 'foo@bar.com'
const invalidEmailAddress = 'foo@bar'
const validateEmail = eyval<string>(isEmail)
validateEmail(validEmailAddress) // returns true
validateEmail(invalidEmailAddress) // returns false
You can report bugs and issues here.
You can also send a PR if you feel like you can improve or fix something. Don't forget to write/update tests for your changes.