From 822e8804d5a2c980addcf3d34c56453e383af516 Mon Sep 17 00:00:00 2001 From: Leonid Nikiforenko Date: Thu, 26 May 2016 06:30:29 +0300 Subject: [PATCH] Make `JSXText` Immutable (#3510) --- .../fixtures/constant-elements/text-children/actual.js | 8 ++++++++ .../constant-elements/text-children/expected.js | 10 ++++++++++ packages/babel-types/src/definitions/jsx.js | 2 +- 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/actual.js create mode 100644 packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/expected.js diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/actual.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/actual.js new file mode 100644 index 0000000000..dc5e52de53 --- /dev/null +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/actual.js @@ -0,0 +1,8 @@ +var Foo = React.createClass({ + render: function () { + return
+ Text +
; + } +}); + diff --git a/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/expected.js b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/expected.js new file mode 100644 index 0000000000..2617a123fe --- /dev/null +++ b/packages/babel-plugin-transform-react-constant-elements/test/fixtures/constant-elements/text-children/expected.js @@ -0,0 +1,10 @@ +var _ref =
+ Text +
; + +var Foo = React.createClass({ + render: function () { + return _ref; + } +}); + diff --git a/packages/babel-types/src/definitions/jsx.js b/packages/babel-types/src/definitions/jsx.js index a74b098a38..5f13ec8349 100644 --- a/packages/babel-types/src/definitions/jsx.js +++ b/packages/babel-types/src/definitions/jsx.js @@ -127,7 +127,7 @@ defineType("JSXSpreadAttribute", { }); defineType("JSXText", { - aliases: ["JSX"], + aliases: ["JSX", "Immutable"], builder: ["value"], fields: { value: {