aboutsummaryrefslogtreecommitdiff
path: root/node_modules/lodash/_getSymbols.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-04-20 03:09:25 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-04-24 16:14:29 +0200
commit82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8 (patch)
tree965f6eb89b84d65a62b49008fd972c004832ccd1 /node_modules/lodash/_getSymbols.js
parente6e0cbc387c2a77b48e4065c229daa65bf1aa0fa (diff)
Reorganize module loading.
We now use webpack instead of SystemJS, effectively bundling modules into one file (plus commons chunks) for every entry point. This results in a much smaller extension size (almost half). Furthermore we use yarn/npm even for extension run-time dependencies. This relieves us from manually vendoring and building dependencies. It's also easier to understand for new developers familiar with node.
Diffstat (limited to 'node_modules/lodash/_getSymbols.js')
-rw-r--r--node_modules/lodash/_getSymbols.js18
1 files changed, 16 insertions, 2 deletions
diff --git a/node_modules/lodash/_getSymbols.js b/node_modules/lodash/_getSymbols.js
index b53c1270b..7d6eafebb 100644
--- a/node_modules/lodash/_getSymbols.js
+++ b/node_modules/lodash/_getSymbols.js
@@ -1,6 +1,12 @@
-var overArg = require('./_overArg'),
+var arrayFilter = require('./_arrayFilter'),
stubArray = require('./stubArray');
+/** Used for built-in method references. */
+var objectProto = Object.prototype;
+
+/** Built-in value references. */
+var propertyIsEnumerable = objectProto.propertyIsEnumerable;
+
/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeGetSymbols = Object.getOwnPropertySymbols;
@@ -11,6 +17,14 @@ var nativeGetSymbols = Object.getOwnPropertySymbols;
* @param {Object} object The object to query.
* @returns {Array} Returns the array of symbols.
*/
-var getSymbols = nativeGetSymbols ? overArg(nativeGetSymbols, Object) : stubArray;
+var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
+ if (object == null) {
+ return [];
+ }
+ object = Object(object);
+ return arrayFilter(nativeGetSymbols(object), function(symbol) {
+ return propertyIsEnumerable.call(object, symbol);
+ });
+};
module.exports = getSymbols;