Files
Henry Whitaker ea5808047f Tweaked gitignore
gitignore removed all composer and npm files, so automated builds would fail
2020-04-12 21:24:03 +01:00

24 lines
519 B
JavaScript
Vendored

'use strict';
var nestedValue = require('../helpers/nestedValue');
var _require = require('../helpers/is'),
isFunction = _require.isFunction;
module.exports = function keyBy(key) {
var collection = {};
if (isFunction(key)) {
this.items.forEach(function (item) {
collection[key(item)] = item;
});
} else {
this.items.forEach(function (item) {
var keyValue = nestedValue(item, key);
collection[keyValue || ''] = item;
});
}
return new this.constructor(collection);
};