UNPKG

motion

Version:

motion - moving development forward

31 lines (28 loc) 750 B
var baseMatches = require('./baseMatches'), baseMatchesProperty = require('./baseMatchesProperty'), identity = require('../identity'), isArray = require('../isArray'), property = require('../property'); /** * The base implementation of `_.iteratee`. * * @private * @param {*} [value=_.identity] The value to convert to an iteratee. * @returns {Function} Returns the iteratee. */ function baseIteratee(value) { var type = typeof value; if (type == 'function') { return value; } if (value == null) { return identity; } if (type == 'object') { return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); } return property(value); } module.exports = baseIteratee;