From 342f9d5eb5aef7daea5ee9839d933dc67cf7cfe8 Mon Sep 17 00:00:00 2001 From: Amjad Masad Date: Thu, 10 Mar 2016 11:47:33 -0800 Subject: [PATCH] Don't consider flow types as bindings --- .../test/fixtures/general/flow-declar/actual.js | 2 ++ .../test/fixtures/general/flow-declar/expected.js | 1 + .../test/fixtures/general/flow-declar/options.json | 3 +++ packages/babel-traverse/src/scope/index.js | 3 +++ 4 files changed, 9 insertions(+) create mode 100644 packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/actual.js create mode 100644 packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/expected.js create mode 100644 packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/options.json diff --git a/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/actual.js b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/actual.js new file mode 100644 index 0000000000..e9ca299ae8 --- /dev/null +++ b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/actual.js @@ -0,0 +1,2 @@ +declare class foo {} +const foo = 1; diff --git a/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/expected.js b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/expected.js new file mode 100644 index 0000000000..9375fc4abd --- /dev/null +++ b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/expected.js @@ -0,0 +1 @@ +var foo = 1; diff --git a/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/options.json b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/options.json new file mode 100644 index 0000000000..954431d3a9 --- /dev/null +++ b/packages/babel-plugin-check-es2015-constants/test/fixtures/general/flow-declar/options.json @@ -0,0 +1,3 @@ +{ + "plugins": ["check-es2015-constants", "transform-es2015-block-scoping", "transform-flow-strip-types"] +} diff --git a/packages/babel-traverse/src/scope/index.js b/packages/babel-traverse/src/scope/index.js index 084100c815..e05ad675ca 100644 --- a/packages/babel-traverse/src/scope/index.js +++ b/packages/babel-traverse/src/scope/index.js @@ -48,6 +48,9 @@ let collectorVisitor = { // this will be hit again once we traverse into it after this iteration if (path.isExportDeclaration() && path.get("declaration").isDeclaration()) return; + // Skip flow declarations + if (path.isFlow()) return; + // we've ran into a declaration! path.scope.getFunctionParent().registerDeclaration(path); },