diff options
Diffstat (limited to 'node_modules/es5-ext/object/keys')
| -rw-r--r-- | node_modules/es5-ext/object/keys/implement.js | 10 | ||||
| -rw-r--r-- | node_modules/es5-ext/object/keys/index.js | 3 | ||||
| -rw-r--r-- | node_modules/es5-ext/object/keys/is-implemented.js | 10 | ||||
| -rw-r--r-- | node_modules/es5-ext/object/keys/shim.js | 7 |
4 files changed, 30 insertions, 0 deletions
diff --git a/node_modules/es5-ext/object/keys/implement.js b/node_modules/es5-ext/object/keys/implement.js new file mode 100644 index 00000000..72ecfbdf --- /dev/null +++ b/node_modules/es5-ext/object/keys/implement.js @@ -0,0 +1,10 @@ +"use strict"; + +if (!require("./is-implemented")()) { + Object.defineProperty(Object, "keys", { + value: require("./shim"), + configurable: true, + enumerable: false, + writable: true + }); +} diff --git a/node_modules/es5-ext/object/keys/index.js b/node_modules/es5-ext/object/keys/index.js new file mode 100644 index 00000000..d1942279 --- /dev/null +++ b/node_modules/es5-ext/object/keys/index.js @@ -0,0 +1,3 @@ +"use strict"; + +module.exports = require("./is-implemented")() ? Object.keys : require("./shim"); diff --git a/node_modules/es5-ext/object/keys/is-implemented.js b/node_modules/es5-ext/object/keys/is-implemented.js new file mode 100644 index 00000000..2dfcf1b9 --- /dev/null +++ b/node_modules/es5-ext/object/keys/is-implemented.js @@ -0,0 +1,10 @@ +"use strict"; + +module.exports = function () { + try { + Object.keys("primitive"); + return true; + } catch (e) { + return false; + } +}; diff --git a/node_modules/es5-ext/object/keys/shim.js b/node_modules/es5-ext/object/keys/shim.js new file mode 100644 index 00000000..a8908d5c --- /dev/null +++ b/node_modules/es5-ext/object/keys/shim.js @@ -0,0 +1,7 @@ +"use strict"; + +var isValue = require("../is-value"); + +var keys = Object.keys; + +module.exports = function (object) { return keys(isValue(object) ? Object(object) : object); }; |
