massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / core-js / internals / object-keys-internal.js
1 var uncurryThis = require('../internals/function-uncurry-this');
2 var hasOwn = require('../internals/has-own-property');
3 var toIndexedObject = require('../internals/to-indexed-object');
4 var indexOf = require('../internals/array-includes').indexOf;
5 var hiddenKeys = require('../internals/hidden-keys');
6
7 var push = uncurryThis([].push);
8
9 module.exports = function (object, names) {
10   var O = toIndexedObject(object);
11   var i = 0;
12   var result = [];
13   var key;
14   for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);
15   // Don't enum bug & hidden keys
16   while (names.length > i) if (hasOwn(O, key = names[i++])) {
17     ~indexOf(result, key) || push(result, key);
18   }
19   return result;
20 };