Skip to content

Commit

Permalink
Fix polyfillLazyGlobal to work with allowTopLevelThis = false
Browse files Browse the repository at this point in the history
Summary:
`polyfillLazyGlobal` used a top level this which get stripped by babel `transform-es2015-modules-commonjs` with the default config. This is mainly an issues for people not using the react native babel preset.

This also replaces a few GLOBAL with global for consistency with the rest of the file.

**Test plan**

Tested that there was an error when using `['transform-es2015-modules-commonjs', { strict: true, allowTopLevelThis: false }]` in the babel config and that it was fixed after applying my changes.

Fixes #7700
Closes #7971

Differential Revision: D3427675

Pulled By: javache

fbshipit-source-id: 48f258b0db1bf21185193bd56df453ced9242e64
  • Loading branch information
janicduplessis authored and Facebook Github Bot 5 committed Jun 13, 2016
1 parent df46891 commit f9e26b3
Showing 1 changed file with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
*/

/* eslint strict: 0 */
/* globals GLOBAL: true, window: true */
/* globals window: true */

require('regenerator-runtime/runtime');

Expand All @@ -33,10 +33,10 @@ if (typeof window === 'undefined') {
}

function setUpProcess() {
GLOBAL.process = GLOBAL.process || {};
GLOBAL.process.env = GLOBAL.process.env || {};
if (!GLOBAL.process.env.NODE_ENV) {
GLOBAL.process.env.NODE_ENV = __DEV__ ? 'development' : 'production';
global.process = global.process || {};
global.process.env = global.process.env || {};
if (!global.process.env.NODE_ENV) {
global.process.env.NODE_ENV = __DEV__ ? 'development' : 'production';
}
}

Expand Down Expand Up @@ -102,10 +102,10 @@ function polyfillLazyGlobal(name, valueFn, scope = global) {
configurable: true,
enumerable: enumerable !== false,
get() {
return (this[name] = valueFn());
return (global[name] = valueFn());
},
set(value) {
Object.defineProperty(this, name, {
Object.defineProperty(global, name, {
configurable: true,
enumerable: enumerable !== false,
writable: writable !== false,
Expand Down

0 comments on commit f9e26b3

Please sign in to comment.