artdaq_node_server  v1_00_08
 All Classes Namespaces Files Variables Pages
sortBy.js
1 var baseFlatten = require('./_baseFlatten'),
2  baseOrderBy = require('./_baseOrderBy'),
3  baseRest = require('./_baseRest'),
4  isIterateeCall = require('./_isIterateeCall');
5 
35 var sortBy = baseRest(function(collection, iteratees) {
36  if (collection == null) {
37  return [];
38  }
39  var length = iteratees.length;
40  if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {
41  iteratees = [];
42  } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {
43  iteratees = [iteratees[0]];
44  }
45  return baseOrderBy(collection, baseFlatten(iteratees, 1), []);
46 });
47 
48 module.exports = sortBy;