From ddb7f86bbd95a49ab454bb554017bf7066435db0 Mon Sep 17 00:00:00 2001 From: Ben Newman Date: Thu, 7 Apr 2016 13:04:57 -0400 Subject: [PATCH] Use meteor-babel-helpers package in babel-runtime. --- .../.npm/package/npm-shrinkwrap.json | 5 +++ packages/babel-runtime/babel-runtime.js | 44 +------------------ packages/babel-runtime/package.js | 3 +- 3 files changed, 8 insertions(+), 44 deletions(-) diff --git a/packages/babel-runtime/.npm/package/npm-shrinkwrap.json b/packages/babel-runtime/.npm/package/npm-shrinkwrap.json index cb3007f22d..c853e040a9 100644 --- a/packages/babel-runtime/.npm/package/npm-shrinkwrap.json +++ b/packages/babel-runtime/.npm/package/npm-shrinkwrap.json @@ -1,5 +1,10 @@ { "dependencies": { + "meteor-babel-helpers": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/meteor-babel-helpers/-/meteor-babel-helpers-0.0.3.tgz", + "from": "meteor-babel-helpers@0.0.3" + }, "regenerator": { "version": "0.8.42", "resolved": "https://registry.npmjs.org/regenerator/-/regenerator-0.8.42.tgz", diff --git a/packages/babel-runtime/babel-runtime.js b/packages/babel-runtime/babel-runtime.js index 6c75768e0b..2e2f349d9c 100644 --- a/packages/babel-runtime/babel-runtime.js +++ b/packages/babel-runtime/babel-runtime.js @@ -2,49 +2,7 @@ var hasOwn = Object.prototype.hasOwnProperty; var S = typeof Symbol === "function" ? Symbol : {}; var iteratorSymbol = S.iterator || "@@iterator"; -function canDefineNonEnumerableProperties() { - var testObj = {}; - var testPropName = "t"; - - try { - Object.defineProperty(testObj, testPropName, { - enumerable: false, - value: testObj - }); - - for (var k in testObj) { - if (k === testPropName) { - return false; - } - } - } catch (e) { - return false; - } - - return testObj[testPropName] === testObj; -} - -meteorBabelHelpers = { - // Meteor-specific runtime helper for wrapping the object of for-in - // loops, so that inherited Array methods defined by es5-shim can be - // ignored in browsers where they cannot be defined as non-enumerable. - sanitizeForInObject: canDefineNonEnumerableProperties() - ? function (value) { return value; } - : function (obj) { - if (Array.isArray(obj)) { - var newObj = {}; - var keys = Object.keys(obj); - var keyCount = keys.length; - for (var i = 0; i < keyCount; ++i) { - var key = keys[i]; - newObj[key] = obj[key]; - } - return newObj; - } - - return obj; - } -}; +meteorBabelHelpers = require("meteor-babel-helpers"); var BabelRuntime = { // es6.templateLiterals diff --git a/packages/babel-runtime/package.js b/packages/babel-runtime/package.js index 8bc8b62505..2e9d423f95 100644 --- a/packages/babel-runtime/package.js +++ b/packages/babel-runtime/package.js @@ -6,7 +6,8 @@ Package.describe({ }); Npm.depends({ - regenerator: "0.8.42" + regenerator: "0.8.42", + "meteor-babel-helpers": "0.0.3" }); Package.onUse(function (api) {