From 2e3ed440ba914eef7e5af117807f8c5d07b67caa Mon Sep 17 00:00:00 2001 From: Nitin Kumar Date: Sun, 23 Jan 2022 16:30:02 +0530 Subject: [PATCH 1/3] fix: respect `negatedDescription` for flags from schema --- packages/webpack-cli/lib/webpack-cli.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/packages/webpack-cli/lib/webpack-cli.js b/packages/webpack-cli/lib/webpack-cli.js index 42c25156f94..cd728ce8585 100644 --- a/packages/webpack-cli/lib/webpack-cli.js +++ b/packages/webpack-cli/lib/webpack-cli.js @@ -454,6 +454,16 @@ class WebpackCLI { return enumTypes; } } + + if (needNegativeOption) { + negativeOption = { + flags: `--no-${option.name}`, + description: + config.negatedDescription || + option.negatedDescription || + `Negative '${option.name}' option.`, + }; + } }); mainOption = { @@ -463,15 +473,6 @@ class WebpackCLI { multiple: option.multiple, defaultValue: option.defaultValue, }; - - if (needNegativeOption) { - negativeOption = { - flags: `--no-${option.name}`, - description: option.negatedDescription - ? option.negatedDescription - : `Negative '${option.name}' option.`, - }; - } } else { mainOption = { flags: option.alias ? `-${option.alias}, --${option.name}` : `--${option.name}`, From 03ef4255495fca3d2248ffe8325534782868db68 Mon Sep 17 00:00:00 2001 From: Nitin Kumar Date: Sun, 23 Jan 2022 17:04:36 +0530 Subject: [PATCH 2/3] fix: respect `negatedDescription` for flags from schema --- packages/webpack-cli/lib/webpack-cli.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/webpack-cli/lib/webpack-cli.js b/packages/webpack-cli/lib/webpack-cli.js index cd728ce8585..443fb656e88 100644 --- a/packages/webpack-cli/lib/webpack-cli.js +++ b/packages/webpack-cli/lib/webpack-cli.js @@ -402,6 +402,7 @@ class WebpackCLI { if (option.configs) { let needNegativeOption = false; + let negatedDescription; const mainOptionType = new Set(); option.configs.forEach((config) => { @@ -413,6 +414,7 @@ class WebpackCLI { case "boolean": if (!needNegativeOption) { needNegativeOption = true; + negatedDescription = config.negatedDescription; } mainOptionType.add(Boolean); @@ -454,16 +456,6 @@ class WebpackCLI { return enumTypes; } } - - if (needNegativeOption) { - negativeOption = { - flags: `--no-${option.name}`, - description: - config.negatedDescription || - option.negatedDescription || - `Negative '${option.name}' option.`, - }; - } }); mainOption = { @@ -473,6 +465,14 @@ class WebpackCLI { multiple: option.multiple, defaultValue: option.defaultValue, }; + + if (needNegativeOption) { + negativeOption = { + flags: `--no-${option.name}`, + description: + negatedDescription || option.negatedDescription || `Negative '${option.name}' option.`, + }; + } } else { mainOption = { flags: option.alias ? `-${option.alias}, --${option.name}` : `--${option.name}`, From 9ae7efc443429bcae78c2d13a3b0b98a4db0a390 Mon Sep 17 00:00:00 2001 From: Nitin Kumar Date: Mon, 24 Jan 2022 16:26:45 +0530 Subject: [PATCH 3/3] feat: allow negative descriptions --- packages/webpack-cli/lib/webpack-cli.js | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/webpack-cli/lib/webpack-cli.js b/packages/webpack-cli/lib/webpack-cli.js index 443fb656e88..b28ba64c1bb 100644 --- a/packages/webpack-cli/lib/webpack-cli.js +++ b/packages/webpack-cli/lib/webpack-cli.js @@ -451,6 +451,7 @@ class WebpackCLI { if (!needNegativeOption) { needNegativeOption = hasFalseEnum; + negatedDescription = config.negatedDescription; } return enumTypes;