From f387fa7717d9d4cf9913c43849cafc2ef5f2e8e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=2E=C2=A0S=2E=20Choi?= Date: Sun, 21 Nov 2021 19:03:32 -0700 Subject: [PATCH] =?UTF-8?q?parser=20plugin-utils:=20Remove=20Object.entrie?= =?UTF-8?q?s=20call=20for=20Node=C2=A06?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/babel-parser/src/parser/base.js | 6 +++--- packages/babel-parser/src/plugin-utils.js | 9 +++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/babel-parser/src/parser/base.js b/packages/babel-parser/src/parser/base.js index 7c0364db72eb..caa071937abc 100644 --- a/packages/babel-parser/src/parser/base.js +++ b/packages/babel-parser/src/parser/base.js @@ -44,8 +44,8 @@ export default class BaseParser { return false; } const actualOptions = this.plugins.get(pluginName); - for (const [key, value] of Object.entries(pluginOptions)) { - if (value !== actualOptions?.[key]) { + for (const key of Object.keys(pluginOptions)) { + if (actualOptions?.[key] !== pluginOptions[key]) { return false; } } @@ -55,7 +55,7 @@ export default class BaseParser { getPluginOption(plugin: string, name: string) { // $FlowIssue - if (this.hasPlugin(plugin)) return this.plugins.get(plugin)[name]; + return this.plugins.get(plugin)?.[name]; } } diff --git a/packages/babel-parser/src/plugin-utils.js b/packages/babel-parser/src/plugin-utils.js index e829e2b01bee..cb750f16e0ab 100644 --- a/packages/babel-parser/src/plugin-utils.js +++ b/packages/babel-parser/src/plugin-utils.js @@ -24,8 +24,9 @@ export function hasPlugin( const [expectedName, expectedOptions] = typeof expectedConfig === "string" ? [expectedConfig, {}] : expectedConfig; - const expectedOptionsIsEmpty = - [...Object.entries(expectedOptions)].length === 0; + const expectedKeys = Object.keys(expectedOptions); + + const expectedOptionsIsEmpty = expectedKeys.length === 0; return plugins.some(p => { if (typeof p === "string") { @@ -35,8 +36,8 @@ export function hasPlugin( if (pluginName !== expectedName) { return false; } - for (const [key, expectedValue] of Object.entries(expectedOptions)) { - if (expectedValue !== pluginOptions[key]) { + for (const key of expectedKeys) { + if (pluginOptions[key] !== expectedOptions[key]) { return false; } }