lib/is-element-finder.js
'use strict' /** * Checks if a given node is an ElementFinder instance. * * @fileoverview Utility function to determine if a node is an ElementFinder * @author Alexander Afanasyev */ var elementArrayFinderGetMethods = [ 'get', 'last', 'first']var elementFinderConstructors = [ '$', 'element'] Function `exports` has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.module.exports = function (node) { var callee = node.callee if (!callee) { return false } // handling raw $ and element if (elementFinderConstructors.indexOf(callee.name) > -1) { return true } // handling $ and element chaining if (callee.type === 'MemberExpression' && callee.property) { if (elementFinderConstructors.indexOf(callee.property.name) > -1) { return true } // got element finder from element array finder var isElementArrayFinderMethod = elementArrayFinderGetMethods.indexOf(callee.property.name) > -1 if (isElementArrayFinderMethod && callee.object && isElementArrayFinder(callee.object)) { return true } } Avoid too many `return` statements within this function. return false}var isElementArrayFinder = require('./is-element-array-finder')