From b32e0f540c4b40e4e12d1b5c076beaee3909d491 Mon Sep 17 00:00:00 2001 From: James Kyle Date: Mon, 2 Nov 2015 00:24:45 -0800 Subject: [PATCH 1/2] Fix minify-booleans transform. Fixes #2736 --- .../babel-plugin-transform-minify-booleans/src/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/babel-plugin-transform-minify-booleans/src/index.js b/packages/babel-plugin-transform-minify-booleans/src/index.js index 5347377871..e6ae284cf6 100644 --- a/packages/babel-plugin-transform-minify-booleans/src/index.js +++ b/packages/babel-plugin-transform-minify-booleans/src/index.js @@ -1,9 +1,9 @@ export default function ({ types: t }) { return { visitor: { - Literal(node) { - if (typeof node.value === "boolean") { - return t.unaryExpression("!", t.literal(+!node.value), true); + Literal(path) { + if (typeof path.node.value === "boolean") { + path.replaceWith(t.unaryExpression("!", t.numberLiteral(+!path.node.value), true)); } } } From 45d8ac7c12c33239ddf1f0702fd1fce744496a3a Mon Sep 17 00:00:00 2001 From: James Kyle Date: Mon, 2 Nov 2015 00:38:56 -0800 Subject: [PATCH 2/2] Add minify-booleans test --- .../transformation/minification.booleans/booleans/actual.js | 2 ++ .../transformation/minification.booleans/booleans/expected.js | 2 ++ .../fixtures/transformation/minification.booleans/options.json | 3 +++ 3 files changed, 7 insertions(+) create mode 100644 packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/actual.js create mode 100644 packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/expected.js create mode 100644 packages/babel-core/test/fixtures/transformation/minification.booleans/options.json diff --git a/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/actual.js b/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/actual.js new file mode 100644 index 0000000000..0c99ce8f3b --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/actual.js @@ -0,0 +1,2 @@ +true; +false; diff --git a/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/expected.js b/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/expected.js new file mode 100644 index 0000000000..231fd3cb88 --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/minification.booleans/booleans/expected.js @@ -0,0 +1,2 @@ +!0; +!1; diff --git a/packages/babel-core/test/fixtures/transformation/minification.booleans/options.json b/packages/babel-core/test/fixtures/transformation/minification.booleans/options.json new file mode 100644 index 0000000000..1d61190fe6 --- /dev/null +++ b/packages/babel-core/test/fixtures/transformation/minification.booleans/options.json @@ -0,0 +1,3 @@ +{ + "plugins": ["transform-minify-booleans"] +}