From 57a3c574f6db3715c9bfb2715d5e9662e957e4b8 Mon Sep 17 00:00:00 2001 From: Mateusz Krzeszowiak Date: Sun, 7 Feb 2016 23:06:06 +0100 Subject: [PATCH 1/3] Fixes rollup/rollup#493 --- src/finalisers/iife.js | 2 +- src/finalisers/umd.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/finalisers/iife.js b/src/finalisers/iife.js index 95c6d65..1d4dfb2 100644 --- a/src/finalisers/iife.js +++ b/src/finalisers/iife.js @@ -31,7 +31,7 @@ export default function iife ( bundle, magicString, { exportMode, indentString } } if ( exportMode === 'named' ) { - dependencies.unshift( `(this.${name} = {})` ); + dependencies.unshift( `(this.${name} = this.${name} || {})` ); args.unshift( 'exports' ); } diff --git a/src/finalisers/umd.js b/src/finalisers/umd.js index 3e8e813..e0d18e1 100644 --- a/src/finalisers/umd.js +++ b/src/finalisers/umd.js @@ -31,7 +31,7 @@ export default function umd ( bundle, magicString, { exportMode, indentString }, if ( exportMode === 'named' ) { amdDeps.unshift( `'exports'` ); cjsDeps.unshift( `exports` ); - globalDeps.unshift( `(${setupNamespace(options.moduleName)} = {})` ); + globalDeps.unshift( `(${setupNamespace(options.moduleName)} = global.${options.moduleName} || {})` ); args.unshift( 'exports' ); } From afed9d4d437187d2973df1119f049e081a2fb9ad Mon Sep 17 00:00:00 2001 From: Mateusz Krzeszowiak Date: Sun, 7 Feb 2016 23:06:22 +0100 Subject: [PATCH 2/3] Test fixes rollup/rollup#493 --- test/form/computed-properties/_expected/iife.js | 2 +- test/form/computed-properties/_expected/umd.js | 4 ++-- test/form/dedupes-external-imports/_expected/iife.js | 2 +- test/form/dedupes-external-imports/_expected/umd.js | 4 ++-- test/form/export-all-from-internal/_expected/iife.js | 2 +- test/form/export-all-from-internal/_expected/umd.js | 4 ++-- test/form/exports-at-end-if-possible/_expected/iife.js | 2 +- test/form/exports-at-end-if-possible/_expected/umd.js | 4 ++-- test/form/multiple-exports/_expected/iife.js | 2 +- test/form/multiple-exports/_expected/umd.js | 4 ++-- test/form/namespaced-named-exports/_expected/iife.js | 2 +- test/form/namespaced-named-exports/_expected/umd.js | 4 ++-- test/form/preserves-comments-after-imports/_expected/iife.js | 2 +- test/form/preserves-comments-after-imports/_expected/umd.js | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/test/form/computed-properties/_expected/iife.js b/test/form/computed-properties/_expected/iife.js index 35b80af..963508a 100644 --- a/test/form/computed-properties/_expected/iife.js +++ b/test/form/computed-properties/_expected/iife.js @@ -7,4 +7,4 @@ exports.x = x; -}((this.computedProperties = {}))); \ No newline at end of file +}((this.computedProperties = this.computedProperties || {}))); diff --git a/test/form/computed-properties/_expected/umd.js b/test/form/computed-properties/_expected/umd.js index 5f7d146..1414460 100644 --- a/test/form/computed-properties/_expected/umd.js +++ b/test/form/computed-properties/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.computedProperties = {}))); + (factory((global.computedProperties = global.computedProperties || {}))); }(this, function (exports) { 'use strict'; var foo = 'foo'; @@ -10,4 +10,4 @@ exports.x = x; -})); \ No newline at end of file +})); diff --git a/test/form/dedupes-external-imports/_expected/iife.js b/test/form/dedupes-external-imports/_expected/iife.js index 17ed0b7..57e6649 100644 --- a/test/form/dedupes-external-imports/_expected/iife.js +++ b/test/form/dedupes-external-imports/_expected/iife.js @@ -30,4 +30,4 @@ exports.bar = bar; exports.baz = baz; -}((this.myBundle = {}),external)); +}((this.myBundle = this.myBundle || {}),external)); diff --git a/test/form/dedupes-external-imports/_expected/umd.js b/test/form/dedupes-external-imports/_expected/umd.js index 70bc301..e33aca8 100644 --- a/test/form/dedupes-external-imports/_expected/umd.js +++ b/test/form/dedupes-external-imports/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('external')) : typeof define === 'function' && define.amd ? define(['exports', 'external'], factory) : - (factory((global.myBundle = {}),global.external)); + (factory((global.myBundle = global.myBundle || {}),global.external)); }(this, function (exports,external) { 'use strict'; class Foo extends external.Component { @@ -33,4 +33,4 @@ exports.bar = bar; exports.baz = baz; -})); \ No newline at end of file +})); diff --git a/test/form/export-all-from-internal/_expected/iife.js b/test/form/export-all-from-internal/_expected/iife.js index b5dad56..8a3cd17 100644 --- a/test/form/export-all-from-internal/_expected/iife.js +++ b/test/form/export-all-from-internal/_expected/iife.js @@ -7,4 +7,4 @@ exports.a = a; exports.b = b; -}((this.exposedInternals = {}))); +}((this.exposedInternals = this.exposedInternals || {}))); diff --git a/test/form/export-all-from-internal/_expected/umd.js b/test/form/export-all-from-internal/_expected/umd.js index 74613b4..c1bf8a9 100644 --- a/test/form/export-all-from-internal/_expected/umd.js +++ b/test/form/export-all-from-internal/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.exposedInternals = {}))); + (factory((global.exposedInternals = global.exposedInternals || {}))); }(this, function (exports) { 'use strict'; const a = 1; @@ -10,4 +10,4 @@ exports.a = a; exports.b = b; -})); \ No newline at end of file +})); diff --git a/test/form/exports-at-end-if-possible/_expected/iife.js b/test/form/exports-at-end-if-possible/_expected/iife.js index a0ce6a9..1c5c67b 100644 --- a/test/form/exports-at-end-if-possible/_expected/iife.js +++ b/test/form/exports-at-end-if-possible/_expected/iife.js @@ -9,4 +9,4 @@ exports.FOO = FOO; -}((this.myBundle = {}))); +}((this.myBundle = this.myBundle || {}))); diff --git a/test/form/exports-at-end-if-possible/_expected/umd.js b/test/form/exports-at-end-if-possible/_expected/umd.js index 20d0d2a..09b2ea6 100644 --- a/test/form/exports-at-end-if-possible/_expected/umd.js +++ b/test/form/exports-at-end-if-possible/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.myBundle = {}))); + (factory((global.myBundle = global.myBundle || {}))); }(this, function (exports) { 'use strict'; var FOO = 'foo'; @@ -12,4 +12,4 @@ exports.FOO = FOO; -})); \ No newline at end of file +})); diff --git a/test/form/multiple-exports/_expected/iife.js b/test/form/multiple-exports/_expected/iife.js index 3a3975d..d2da90f 100644 --- a/test/form/multiple-exports/_expected/iife.js +++ b/test/form/multiple-exports/_expected/iife.js @@ -7,4 +7,4 @@ exports.foo = foo; exports.bar = bar; -}((this.myBundle = {}))); +}((this.myBundle = this.myBundle || {}))); diff --git a/test/form/multiple-exports/_expected/umd.js b/test/form/multiple-exports/_expected/umd.js index 485e381..32d762a 100644 --- a/test/form/multiple-exports/_expected/umd.js +++ b/test/form/multiple-exports/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.myBundle = {}))); + (factory((global.myBundle = global.myBundle || {}))); }(this, function (exports) { 'use strict'; var foo = 1; @@ -10,4 +10,4 @@ exports.foo = foo; exports.bar = bar; -})); \ No newline at end of file +})); diff --git a/test/form/namespaced-named-exports/_expected/iife.js b/test/form/namespaced-named-exports/_expected/iife.js index 2fc75df..69637e9 100644 --- a/test/form/namespaced-named-exports/_expected/iife.js +++ b/test/form/namespaced-named-exports/_expected/iife.js @@ -7,4 +7,4 @@ this.foo.bar = this.foo.bar || {}; exports.answer = answer; -}((this.foo.bar.baz = {}))); +}((this.foo.bar.baz = this.foo.bar.baz || {}))); diff --git a/test/form/namespaced-named-exports/_expected/umd.js b/test/form/namespaced-named-exports/_expected/umd.js index aeb7775..3717913 100644 --- a/test/form/namespaced-named-exports/_expected/umd.js +++ b/test/form/namespaced-named-exports/_expected/umd.js @@ -1,11 +1,11 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.foo = global.foo || {}, global.foo.bar = global.foo.bar || {}, global.foo.bar.baz = {}))); + (factory((global.foo = global.foo || {}, global.foo.bar = global.foo.bar || {}, global.foo.bar.baz = global.foo.bar.baz || {}))); }(this, function (exports) { 'use strict'; var answer = 42; exports.answer = answer; -})); \ No newline at end of file +})); diff --git a/test/form/preserves-comments-after-imports/_expected/iife.js b/test/form/preserves-comments-after-imports/_expected/iife.js index e9338dc..ee4c000 100644 --- a/test/form/preserves-comments-after-imports/_expected/iife.js +++ b/test/form/preserves-comments-after-imports/_expected/iife.js @@ -9,4 +9,4 @@ exports.obj = obj; -}((this.myBundle = {}))); +}((this.myBundle = this.myBundle || {}))); diff --git a/test/form/preserves-comments-after-imports/_expected/umd.js b/test/form/preserves-comments-after-imports/_expected/umd.js index ac58856..4d34fef 100644 --- a/test/form/preserves-comments-after-imports/_expected/umd.js +++ b/test/form/preserves-comments-after-imports/_expected/umd.js @@ -1,7 +1,7 @@ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'], factory) : - (factory((global.myBundle = {}))); + (factory((global.myBundle = global.myBundle || {}))); }(this, function (exports) { 'use strict'; /** A comment for a number */ @@ -12,4 +12,4 @@ exports.obj = obj; -})); \ No newline at end of file +})); From 92703bf46db0e18536cfc6817fed2498b3be10e2 Mon Sep 17 00:00:00 2001 From: Mateusz Krzeszowiak Date: Mon, 8 Feb 2016 11:31:01 +0100 Subject: [PATCH 3/3] Remove empty lines at the end of files added by Atom --- test/form/computed-properties/_expected/iife.js | 2 +- test/form/computed-properties/_expected/umd.js | 2 +- test/form/dedupes-external-imports/_expected/umd.js | 2 +- test/form/export-all-from-internal/_expected/umd.js | 2 +- test/form/exports-at-end-if-possible/_expected/umd.js | 2 +- test/form/multiple-exports/_expected/umd.js | 2 +- test/form/namespaced-named-exports/_expected/umd.js | 2 +- test/form/preserves-comments-after-imports/_expected/umd.js | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/test/form/computed-properties/_expected/iife.js b/test/form/computed-properties/_expected/iife.js index 963508a..5e8b95c 100644 --- a/test/form/computed-properties/_expected/iife.js +++ b/test/form/computed-properties/_expected/iife.js @@ -7,4 +7,4 @@ exports.x = x; -}((this.computedProperties = this.computedProperties || {}))); +}((this.computedProperties = this.computedProperties || {}))); \ No newline at end of file diff --git a/test/form/computed-properties/_expected/umd.js b/test/form/computed-properties/_expected/umd.js index 1414460..dde36f1 100644 --- a/test/form/computed-properties/_expected/umd.js +++ b/test/form/computed-properties/_expected/umd.js @@ -10,4 +10,4 @@ exports.x = x; -})); +})); \ No newline at end of file diff --git a/test/form/dedupes-external-imports/_expected/umd.js b/test/form/dedupes-external-imports/_expected/umd.js index e33aca8..06be0e7 100644 --- a/test/form/dedupes-external-imports/_expected/umd.js +++ b/test/form/dedupes-external-imports/_expected/umd.js @@ -33,4 +33,4 @@ exports.bar = bar; exports.baz = baz; -})); +})); \ No newline at end of file diff --git a/test/form/export-all-from-internal/_expected/umd.js b/test/form/export-all-from-internal/_expected/umd.js index c1bf8a9..b249cc6 100644 --- a/test/form/export-all-from-internal/_expected/umd.js +++ b/test/form/export-all-from-internal/_expected/umd.js @@ -10,4 +10,4 @@ exports.a = a; exports.b = b; -})); +})); \ No newline at end of file diff --git a/test/form/exports-at-end-if-possible/_expected/umd.js b/test/form/exports-at-end-if-possible/_expected/umd.js index 09b2ea6..e9cbc8d 100644 --- a/test/form/exports-at-end-if-possible/_expected/umd.js +++ b/test/form/exports-at-end-if-possible/_expected/umd.js @@ -12,4 +12,4 @@ exports.FOO = FOO; -})); +})); \ No newline at end of file diff --git a/test/form/multiple-exports/_expected/umd.js b/test/form/multiple-exports/_expected/umd.js index 32d762a..30a54d6 100644 --- a/test/form/multiple-exports/_expected/umd.js +++ b/test/form/multiple-exports/_expected/umd.js @@ -10,4 +10,4 @@ exports.foo = foo; exports.bar = bar; -})); +})); \ No newline at end of file diff --git a/test/form/namespaced-named-exports/_expected/umd.js b/test/form/namespaced-named-exports/_expected/umd.js index 3717913..9a0f47d 100644 --- a/test/form/namespaced-named-exports/_expected/umd.js +++ b/test/form/namespaced-named-exports/_expected/umd.js @@ -8,4 +8,4 @@ exports.answer = answer; -})); +})); \ No newline at end of file diff --git a/test/form/preserves-comments-after-imports/_expected/umd.js b/test/form/preserves-comments-after-imports/_expected/umd.js index 4d34fef..13a54bf 100644 --- a/test/form/preserves-comments-after-imports/_expected/umd.js +++ b/test/form/preserves-comments-after-imports/_expected/umd.js @@ -12,4 +12,4 @@ exports.obj = obj; -})); +})); \ No newline at end of file