eslint-config-airbnb-standard
Version:
Airbnb's JS ESLint config + JS Standard Style + semicolons
29 lines (24 loc) • 726 B
JavaScript
/**
* @fileoverview Utility functions for propWrapperFunctions setting
*/
;
function getPropWrapperFunctions(context) {
return new Set(context.settings.propWrapperFunctions || []);
}
function isPropWrapperFunction(context, name) {
if (typeof name !== 'string') {
return false;
}
const propWrapperFunctions = getPropWrapperFunctions(context);
const splitName = name.split('.');
return Array.from(propWrapperFunctions).some((func) => {
if (splitName.length === 2 && func.object === splitName[0] && func.property === splitName[1]) {
return true;
}
return name === func || func.property === name;
});
}
module.exports = {
getPropWrapperFunctions,
isPropWrapperFunction
};