Skip to content
This repository was archived by the owner on Jan 11, 2023. It is now read-only.

Commit fb67a4f

Browse files
loganfsmythjasonLaster
authored andcommitted
Exclude Flowtype bindings from original scope list. (#5692)
1 parent dd18727 commit fb67a4f

File tree

13 files changed

+428
-2
lines changed

13 files changed

+428
-2
lines changed

src/test/mochitest/browser.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ support-files =
2727
examples/babel/fixtures/modules/output.js.map
2828
examples/babel/fixtures/non-modules/output.js
2929
examples/babel/fixtures/non-modules/output.js.map
30+
examples/babel/fixtures/flowtype-bindings/output.js
31+
examples/babel/fixtures/flowtype-bindings/output.js.map
3032
examples/babel/fixtures/step-over-for-of/output.js
3133
examples/babel/fixtures/step-over-for-of/output.js.map
3234
examples/babel/fixtures/step-over-for-of-closure/output.js

src/test/mochitest/browser_dbg-babel-scopes.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,12 @@ add_task(async function() {
253253

254254
await breakpointScopes(dbg, "non-modules", { line: 7, column: 2 }, []);
255255

256+
await breakpointScopes(dbg, "flowtype-bindings", { line: 8, column: 2 }, [
257+
"Module",
258+
["aConst", '"a-const"'],
259+
"root()"
260+
]);
261+
256262
await breakpointScopes(dbg, "switches", { line: 7, column: 6 }, [
257263
"Switch",
258264
["val", "2"],
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import type { One, Two, Three } from "./src/mod";
2+
3+
type Other = {};
4+
5+
const aConst = "a-const";
6+
7+
export default function root() {
8+
console.log("pause here", aConst, root);
9+
}

src/test/mochitest/examples/babel/fixtures/flowtype-bindings/output.js

Lines changed: 89 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/test/mochitest/examples/babel/fixtures/flowtype-bindings/output.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export default "a-default";

src/test/mochitest/examples/babel/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
"babel-core": "^6.26.0",
1414
"babel-loader": "^7.1.2",
1515
"babel-plugin-add-module-exports": "^0.2.1",
16+
"babel-plugin-transform-flow-strip-types": "^6.22.0",
1617
"babel-preset-env": "^1.6.1",
1718
"webpack": "^3.7.1"
1819
},

src/test/mochitest/examples/babel/webpack.config.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,9 @@ module.exports = [
7676
? [["env", { modules: babelModules ? "commonjs" : false }]]
7777
: [],
7878
plugins:
79-
babelEnv && babelModules ? ["add-module-exports"] : []
79+
(babelEnv && babelModules ? ["add-module-exports"] : []).concat([
80+
"babel-plugin-transform-flow-strip-types",
81+
])
8082
}
8183
}
8284
]

src/test/mochitest/examples/doc-babel.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
<button onclick="classes()">Run classes</button>
1818
<script src="babel/fixtures/commonjs/output.js"></script>
1919
<button onclick="commonjs()">Run commonjs</button>
20+
<script src="babel/fixtures/flowtype-bindings/output.js"></script>
21+
<button onclick="flowtypeBindings()">Run flowtypeBindings</button>
2022
<script src="babel/fixtures/for-loops/output.js"></script>
2123
<button onclick="forLoops()">Run forLoops</button>
2224
<script src="babel/fixtures/for-of/output.js"></script>

src/workers/parser/getScopes/visitor.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,10 @@ const scopeCollectionVisitor = {
540540
state.sourceId
541541
);
542542
});
543-
} else if (t.isImportDeclaration(node)) {
543+
} else if (
544+
t.isImportDeclaration(node) &&
545+
(!node.importKind || node.importKind === "value")
546+
) {
544547
node.specifiers.forEach(spec => {
545548
if (t.isImportNamespaceSpecifier(spec)) {
546549
state.scope.bindings[spec.local.name] = {

0 commit comments

Comments
 (0)