23 lines
566 B
JavaScript
23 lines
566 B
JavaScript
'use strict';
|
|
|
|
const matchesStringOrRegExp = require('./matchesStringOrRegExp');
|
|
|
|
/**
|
|
* Check if an options object's propertyName contains a user-defined string or
|
|
* regex that matches the passed in input.
|
|
*
|
|
* @param {{ [x: string]: any; }} options
|
|
* @param {string} propertyName
|
|
* @param {unknown} input
|
|
*
|
|
* @returns {boolean}
|
|
*/
|
|
module.exports = function optionsMatches(options, propertyName, input) {
|
|
return Boolean(
|
|
options &&
|
|
options[propertyName] &&
|
|
typeof input === 'string' &&
|
|
matchesStringOrRegExp(input, options[propertyName]),
|
|
);
|
|
};
|