From 078f6c0ed336bfc909d2639d8d07a027b55702a6 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Wed, 16 Mar 2016 23:26:52 -0700 Subject: [PATCH] Only attempt to rename export declarations, not expressions - fixes T7215 --- .../fixtures/transformation/misc/T7215/actual.js | 5 +++++ .../fixtures/transformation/misc/T7215/expected.js | 13 +++++++++++++ .../fixtures/transformation/misc/T7215/options.json | 4 ++++ packages/babel-traverse/src/scope/lib/renamer.js | 2 +- 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 packages/babel-core/test/fixtures/transformation/misc/T7215/actual.js create mode 100644 packages/babel-core/test/fixtures/transformation/misc/T7215/expected.js create mode 100644 packages/babel-core/test/fixtures/transformation/misc/T7215/options.json diff --git a/packages/babel-core/test/fixtures/transformation/misc/T7215/actual.js b/packages/babel-core/test/fixtures/transformation/misc/T7215/actual.js new file mode 100644 index 0000000000..9003788157 --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/misc/T7215/actual.js @@ -0,0 +1,5 @@ +export default (onClick) => ({ + onClick: function(){ + onClick(text); + }, +}); diff --git a/packages/babel-core/test/fixtures/transformation/misc/T7215/expected.js b/packages/babel-core/test/fixtures/transformation/misc/T7215/expected.js new file mode 100644 index 0000000000..cdb25f2b92 --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/misc/T7215/expected.js @@ -0,0 +1,13 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +exports.default = function (_onClick) { + return { + onClick: function onClick() { + _onClick(text); + } + }; +}; diff --git a/packages/babel-core/test/fixtures/transformation/misc/T7215/options.json b/packages/babel-core/test/fixtures/transformation/misc/T7215/options.json new file mode 100644 index 0000000000..c6017628c1 --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/misc/T7215/options.json @@ -0,0 +1,4 @@ +{ + "presets": ["es2015"], + "plugins": ["external-helpers"] +} diff --git a/packages/babel-traverse/src/scope/lib/renamer.js b/packages/babel-traverse/src/scope/lib/renamer.js index bf89b3f10f..e5a45773e6 100644 --- a/packages/babel-traverse/src/scope/lib/renamer.js +++ b/packages/babel-traverse/src/scope/lib/renamer.js @@ -105,7 +105,7 @@ export default class Renamer { let { binding, oldName, newName } = this; let { scope, path } = binding; - let parentDeclar = path.find((path) => path.isDeclaration() || path.isFunctionExpression()); + let parentDeclar = path.find((path) => path.isDeclaration()); if (parentDeclar) { this.maybeConvertFromExportDeclaration(parentDeclar); }