forked from actions/setup-maven
25 lines
751 B
JavaScript
25 lines
751 B
JavaScript
|
var restArguments = require('./restArguments.js');
|
||
|
var isFunction = require('./isFunction.js');
|
||
|
var negate = require('./negate.js');
|
||
|
var map = require('./map.js');
|
||
|
var _flatten = require('./_flatten.js');
|
||
|
var contains = require('./contains.js');
|
||
|
var pick = require('./pick.js');
|
||
|
|
||
|
// Return a copy of the object without the disallowed properties.
|
||
|
var omit = restArguments(function(obj, keys) {
|
||
|
var iteratee = keys[0], context;
|
||
|
if (isFunction(iteratee)) {
|
||
|
iteratee = negate(iteratee);
|
||
|
if (keys.length > 1) context = keys[1];
|
||
|
} else {
|
||
|
keys = map(_flatten(keys, false, false), String);
|
||
|
iteratee = function(value, key) {
|
||
|
return !contains(keys, key);
|
||
|
};
|
||
|
}
|
||
|
return pick(obj, iteratee, context);
|
||
|
});
|
||
|
|
||
|
module.exports = omit;
|