From f428dde41e9796b51325656ee90949fbc470d8d6 Mon Sep 17 00:00:00 2001 From: James Addison Date: Sat, 4 Jul 2020 14:17:50 +0100 Subject: [PATCH 1/2] babel-traverse: prefer clearer, reduced-bias option naming --- packages/babel-traverse/src/index.js | 12 ++++++------ packages/babel-traverse/src/path/context.js | 8 ++++---- packages/babel-traverse/src/visitors.js | 2 +- packages/babel-traverse/test/traverse.js | 4 ++-- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/babel-traverse/src/index.js b/packages/babel-traverse/src/index.js index 1af05587ca2b..51c3a3867285 100644 --- a/packages/babel-traverse/src/index.js +++ b/packages/babel-traverse/src/index.js @@ -77,7 +77,7 @@ traverse.removeProperties = function (tree, opts) { return tree; }; -function hasBlacklistedType(path, state) { +function hasDenylistedType(path, state) { if (path.node.type === state.type) { state.has = true; path.stop(); @@ -87,10 +87,10 @@ function hasBlacklistedType(path, state) { traverse.hasType = function ( tree: Object, type: Object, - blacklistTypes: Array, + denylistTypes: Array, ): boolean { - // the node we're searching in is blacklisted - if (includes(blacklistTypes, tree.type)) return false; + // the node we're searching in is denylisted + if (includes(denylistTypes, tree.type)) return false; // the type we're looking for is the same as the passed node if (tree.type === type) return true; @@ -104,8 +104,8 @@ traverse.hasType = function ( tree, { noScope: true, - blacklist: blacklistTypes, - enter: hasBlacklistedType, + denylist: denylistTypes, + enter: hasDenylistedType, }, null, state, diff --git a/packages/babel-traverse/src/path/context.js b/packages/babel-traverse/src/path/context.js index 5587f0b9b559..e90e1c0ee55b 100644 --- a/packages/babel-traverse/src/path/context.js +++ b/packages/babel-traverse/src/path/context.js @@ -51,9 +51,9 @@ export function _call(fns?: Array): boolean { return false; } -export function isBlacklisted(): boolean { - const blacklist = this.opts.blacklist; - return blacklist && blacklist.indexOf(this.node.type) > -1; +export function isDenylisted(): boolean { + const denylist = this.opts.denylist; + return denylist && denylist.indexOf(this.node.type) > -1; } export function visit(): boolean { @@ -61,7 +61,7 @@ export function visit(): boolean { return false; } - if (this.isBlacklisted()) { + if (this.isDenylisted()) { return false; } diff --git a/packages/babel-traverse/src/visitors.js b/packages/babel-traverse/src/visitors.js index 0748865341c7..c1b4c803f570 100644 --- a/packages/babel-traverse/src/visitors.js +++ b/packages/babel-traverse/src/visitors.js @@ -275,7 +275,7 @@ function shouldIgnoreKey(key) { if (key === "enter" || key === "exit" || key === "shouldSkip") return true; // ignore other options - if (key === "blacklist" || key === "noScope" || key === "skipKeys") { + if (key === "denylist" || key === "noScope" || key === "skipKeys") { return true; } diff --git a/packages/babel-traverse/test/traverse.js b/packages/babel-traverse/test/traverse.js index d2492a71b329..adbe705cd290 100644 --- a/packages/babel-traverse/test/traverse.js +++ b/packages/babel-traverse/test/traverse.js @@ -61,7 +61,7 @@ describe("traverse", function () { }); }); - it("traverse blacklistTypes", function () { + it("traverse denylistTypes", function () { const expected = [ body[0], body[0].declarations[0], @@ -75,7 +75,7 @@ describe("traverse", function () { const actual = []; traverse(program, { - blacklist: ["MemberExpression"], + denylist: ["MemberExpression"], enter: function (path) { actual.push(path.node); }, From 38a7c3783468d424d6b2f4a3ff2faf7d73156064 Mon Sep 17 00:00:00 2001 From: James Addison Date: Sun, 5 Jul 2020 16:33:25 +0100 Subject: [PATCH 2/2] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Nicolò Ribaudo --- packages/babel-traverse/src/path/context.js | 5 ++++- packages/babel-traverse/src/visitors.js | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/babel-traverse/src/path/context.js b/packages/babel-traverse/src/path/context.js index e90e1c0ee55b..03afe0205464 100644 --- a/packages/babel-traverse/src/path/context.js +++ b/packages/babel-traverse/src/path/context.js @@ -52,10 +52,13 @@ export function _call(fns?: Array): boolean { } export function isDenylisted(): boolean { - const denylist = this.opts.denylist; + const denylist = this.opts.denylist ?? this.opts.blacklist; return denylist && denylist.indexOf(this.node.type) > -1; } +// TODO: Remove in Babel 8 +export { isDenylisted as isBlacklisted }; + export function visit(): boolean { if (!this.node) { return false; diff --git a/packages/babel-traverse/src/visitors.js b/packages/babel-traverse/src/visitors.js index c1b4c803f570..28d7883a9953 100644 --- a/packages/babel-traverse/src/visitors.js +++ b/packages/babel-traverse/src/visitors.js @@ -275,7 +275,13 @@ function shouldIgnoreKey(key) { if (key === "enter" || key === "exit" || key === "shouldSkip") return true; // ignore other options - if (key === "denylist" || key === "noScope" || key === "skipKeys") { + if ( + key === "denylist" || + key === "noScope" || + key === "skipKeys" || + // TODO: Remove in Babel 8 + key === "blacklist" + ) { return true; }