verificator
Version:
Client and server-side validation JavaScript library
20 lines (19 loc) • 535 B
JavaScript
import escape from './escape';
const is = (patterns, value) => {
patterns = Array.isArray(patterns) ? patterns : [patterns];
patterns = patterns.filter(Boolean);
if (patterns.length === 0) {
return false;
}
for (let pattern of patterns) {
if (pattern === value) {
return true;
}
const regex = new RegExp(`^${escape(pattern).replace(/\\\*/g, '.*')}$`, 'u');
if (regex.test(value)) {
return true;
}
}
return false;
};
export default is;