From cf4bf1adc0572fe2b380fcad0cc91d6df1c047ed Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Fri, 24 Dec 2021 19:34:18 +0800 Subject: [PATCH] Simplify cli options stack (#11994) --- src/cli/context.js | 21 ++++++++------------- src/index.js | 1 + 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/cli/context.js b/src/cli/context.js index ba3b78e98..1009b6561 100644 --- a/src/cli/context.js +++ b/src/cli/context.js @@ -1,5 +1,7 @@ "use strict"; -const pick = require("lodash/pick"); +const { + utils: { getLast }, +} = require("./prettier-internal.js"); const getContextOptions = require("./options/get-context-options.js"); const { parseArgv, @@ -46,21 +48,14 @@ class Context { * @param {string[]=} pluginSearchDirs */ pushContextPlugins(plugins, pluginSearchDirs) { - this.stack.push( - pick(this, [ - "supportOptions", - "detailedOptions", - "detailedOptionMap", - "apiDefaultOptions", - "languages", - ]) - ); - - Object.assign(this, getContextOptions(plugins, pluginSearchDirs)); + const options = getContextOptions(plugins, pluginSearchDirs); + this.stack.push(options); + Object.assign(this, options); } popContextPlugins() { - Object.assign(this, this.stack.pop()); + this.stack.pop(); + Object.assign(this, getLast(this.stack)); } } diff --git a/src/index.js b/src/index.js index f6fc80c53..0312d18e7 100644 --- a/src/index.js +++ b/src/index.js @@ -74,6 +74,7 @@ module.exports = { optionsNormalizer: require("./main/options-normalizer.js"), utils: { arrayify: require("./utils/arrayify.js"), + getLast: require("./utils/get-last.js"), }, },