Comparing version 17.0.1 to 17.0.2-candidate
@@ -167,16 +167,11 @@ import { assertNotStrictEqual, } from './typings/common-types.js'; | ||
.runYargsParserAndExecuteCommands(null, undefined, true, commandIndex, helpOnly); | ||
if (isPromise(innerArgv)) { | ||
return innerArgv.then(argv => { | ||
return { | ||
aliases: innerYargs.parsed.aliases, | ||
innerArgv: argv, | ||
}; | ||
}); | ||
} | ||
else { | ||
return { | ||
return isPromise(innerArgv) | ||
? innerArgv.then(argv => ({ | ||
aliases: innerYargs.parsed.aliases, | ||
innerArgv: argv, | ||
})) | ||
: { | ||
aliases: innerYargs.parsed.aliases, | ||
innerArgv: innerArgv, | ||
}; | ||
} | ||
} | ||
@@ -227,8 +222,5 @@ shouldUpdateUsage(yargs) { | ||
const handlerResult = commandHandler.handler(result); | ||
if (isPromise(handlerResult)) { | ||
return handlerResult.then(() => result); | ||
} | ||
else { | ||
return result; | ||
} | ||
return isPromise(handlerResult) | ||
? handlerResult.then(() => result) | ||
: result; | ||
}); | ||
@@ -347,3 +339,3 @@ if (!isDefaultCommand) { | ||
Object.keys(parsed.argv).forEach(key => { | ||
if (positionalKeys.indexOf(key) !== -1) { | ||
if (positionalKeys.includes(key)) { | ||
if (!positionalMap[key]) | ||
@@ -350,0 +342,0 @@ positionalMap[key] = parsed.argv[key]; |
@@ -38,4 +38,5 @@ import { isCommandBuilderCallback } from './command.js'; | ||
commandCompletions(completions, args, current) { | ||
const parentCommands = this.yargs.getInternalMethods().getContext() | ||
.commands; | ||
const parentCommands = this.yargs | ||
.getInternalMethods() | ||
.getContext().commands; | ||
if (!current.match(/^-/) && | ||
@@ -42,0 +43,0 @@ parentCommands[parentCommands.length - 1] !== current) { |
@@ -250,6 +250,6 @@ import { objFilter } from './utils/obj-filter.js'; | ||
.map(key => { | ||
if (~aliasKeys.indexOf(key)) | ||
if (aliasKeys.includes(key)) | ||
return key; | ||
for (let i = 0, aliasKey; (aliasKey = aliasKeys[i]) !== undefined; i++) { | ||
if (~(options.alias[aliasKey] || []).indexOf(key)) | ||
if ((options.alias[aliasKey] || []).includes(key)) | ||
return aliasKey; | ||
@@ -271,3 +271,3 @@ } | ||
return ((/^[0-9]$/.test(sw) | ||
? ~options.boolean.indexOf(key) | ||
? options.boolean.includes(key) | ||
? '-' | ||
@@ -310,15 +310,15 @@ : '--' | ||
let type = null; | ||
if (~desc.lastIndexOf(deferY18nLookupPrefix)) | ||
if (desc.includes(deferY18nLookupPrefix)) | ||
desc = __(desc.substring(deferY18nLookupPrefix.length)); | ||
if (~options.boolean.indexOf(key)) | ||
if (options.boolean.includes(key)) | ||
type = `[${__('boolean')}]`; | ||
if (~options.count.indexOf(key)) | ||
if (options.count.includes(key)) | ||
type = `[${__('count')}]`; | ||
if (~options.string.indexOf(key)) | ||
if (options.string.includes(key)) | ||
type = `[${__('string')}]`; | ||
if (~options.normalize.indexOf(key)) | ||
if (options.normalize.includes(key)) | ||
type = `[${__('string')}]`; | ||
if (~options.array.indexOf(key)) | ||
if (options.array.includes(key)) | ||
type = `[${__('array')}]`; | ||
if (~options.number.indexOf(key)) | ||
if (options.number.includes(key)) | ||
type = `[${__('number')}]`; | ||
@@ -406,13 +406,13 @@ const deprecatedExtra = (deprecated) => typeof deprecated === 'string' | ||
yargs.demandOption(key, demandedOptions[alias]); | ||
if (~options.boolean.indexOf(alias)) | ||
if (options.boolean.includes(alias)) | ||
yargs.boolean(key); | ||
if (~options.count.indexOf(alias)) | ||
if (options.count.includes(alias)) | ||
yargs.count(key); | ||
if (~options.string.indexOf(alias)) | ||
if (options.string.includes(alias)) | ||
yargs.string(key); | ||
if (~options.normalize.indexOf(alias)) | ||
if (options.normalize.includes(alias)) | ||
yargs.normalize(key); | ||
if (~options.array.indexOf(alias)) | ||
if (options.array.includes(alias)) | ||
yargs.array(key); | ||
if (~options.number.indexOf(alias)) | ||
if (options.number.includes(alias)) | ||
yargs.number(key); | ||
@@ -419,0 +419,0 @@ }); |
@@ -69,2 +69,3 @@ import { argsert } from './argsert.js'; | ||
self.unknownArguments = function unknownArguments(argv, aliases, positionalMap, isDefaultCommand, checkPositionals = true) { | ||
var _a; | ||
const commandKeys = yargs | ||
@@ -77,3 +78,3 @@ .getInternalMethods() | ||
Object.keys(argv).forEach(key => { | ||
if (specialKeys.indexOf(key) === -1 && | ||
if (!specialKeys.includes(key) && | ||
!Object.prototype.hasOwnProperty.call(positionalMap, key) && | ||
@@ -90,3 +91,3 @@ !Object.prototype.hasOwnProperty.call(yargs.getInternalMethods().getParseContext(), key) && | ||
argv._.slice(currentContext.commands.length).forEach(key => { | ||
if (commandKeys.indexOf('' + key) === -1) { | ||
if (!commandKeys.includes('' + key)) { | ||
unknown.push('' + key); | ||
@@ -96,3 +97,17 @@ } | ||
} | ||
if (unknown.length > 0) { | ||
if (checkPositionals) { | ||
const demandedCommands = yargs.getDemandedCommands(); | ||
const maxNonOptDemanded = ((_a = demandedCommands._) === null || _a === void 0 ? void 0 : _a.max) || 0; | ||
const expected = currentContext.commands.length + maxNonOptDemanded; | ||
if (expected < argv._.length) { | ||
argv._.slice(expected).forEach(key => { | ||
key = String(key); | ||
if (!currentContext.commands.includes(key) && | ||
!unknown.includes(key)) { | ||
unknown.push(key); | ||
} | ||
}); | ||
} | ||
} | ||
if (unknown.length) { | ||
usage.fail(__n('Unknown argument: %s', 'Unknown arguments: %s', unknown.length, unknown.join(', '))); | ||
@@ -110,3 +125,3 @@ } | ||
argv._.slice(currentContext.commands.length).forEach(key => { | ||
if (commandKeys.indexOf('' + key) === -1) { | ||
if (!commandKeys.includes('' + key)) { | ||
unknown.push('' + key); | ||
@@ -113,0 +128,0 @@ } |
{ | ||
"Commands:": "命令:", | ||
"Options:": "選項:", | ||
"Examples:": "例:", | ||
"boolean": "布林", | ||
"count": "次數", | ||
"string": "字串", | ||
"number": "數字", | ||
"array": "陣列", | ||
"required": "必須", | ||
"default": "預設值", | ||
"default:": "預設值:", | ||
"choices:": "可選值:", | ||
"aliases:": "別名:", | ||
"generated-value": "生成的值", | ||
"Not enough non-option arguments: got %s, need at least %s": { | ||
"one": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個", | ||
"other": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個" | ||
}, | ||
"Too many non-option arguments: got %s, maximum of %s": { | ||
"one": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個", | ||
"other": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個" | ||
}, | ||
"Missing argument value: %s": { | ||
"one": "此引數無指定值:%s", | ||
"other": "這些引數無指定值:%s" | ||
}, | ||
"Missing required argument: %s": { | ||
"one": "缺少必須的引數:%s", | ||
"other": "缺少這些必須的引數:%s" | ||
}, | ||
"Unknown argument: %s": { | ||
"one": "未知的引數:%s", | ||
"other": "未知的這些引數:%s" | ||
}, | ||
"Invalid values:": "無效的選項值:", | ||
"Argument: %s, Given: %s, Choices: %s": "引數名稱: %s, 傳入的值: %s, 可選的值:%s", | ||
"Argument check failed: %s": "引數驗證失敗:%s", | ||
"Implications failed:": "缺少依賴的選項:", | ||
"Not enough arguments following: %s": "沒有提供足夠的值給此引數:%s", | ||
"Invalid JSON config file: %s": "無效的 JSON 設置文件:%s", | ||
"Path to JSON config file": "JSON 設置文件的路徑", | ||
"Show help": "顯示說明", | ||
"Show version number": "顯示版本", | ||
"Did you mean %s?": "是指 %s?", | ||
"Arguments %s and %s are mutually exclusive" : "引數 %s 和 %s 是互斥的" | ||
} | ||
"Commands:": "命令:", | ||
"Options:": "選項:", | ||
"Examples:": "範例:", | ||
"boolean": "布林", | ||
"count": "次數", | ||
"string": "字串", | ||
"number": "數字", | ||
"array": "陣列", | ||
"required": "必填", | ||
"default": "預設值", | ||
"default:": "預設值:", | ||
"choices:": "可選值:", | ||
"aliases:": "別名:", | ||
"generated-value": "生成的值", | ||
"Not enough non-option arguments: got %s, need at least %s": { | ||
"one": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個", | ||
"other": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個" | ||
}, | ||
"Too many non-option arguments: got %s, maximum of %s": { | ||
"one": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個", | ||
"other": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個" | ||
}, | ||
"Missing argument value: %s": { | ||
"one": "此引數無指定值:%s", | ||
"other": "這些引數無指定值:%s" | ||
}, | ||
"Missing required argument: %s": { | ||
"one": "缺少必須的引數:%s", | ||
"other": "缺少這些必須的引數:%s" | ||
}, | ||
"Unknown argument: %s": { | ||
"one": "未知的引數:%s", | ||
"other": "未知的引數:%s" | ||
}, | ||
"Invalid values:": "無效的選項值:", | ||
"Argument: %s, Given: %s, Choices: %s": "引數名稱: %s, 傳入的值: %s, 可選的值:%s", | ||
"Argument check failed: %s": "引數驗證失敗:%s", | ||
"Implications failed:": "缺少依賴引數:", | ||
"Not enough arguments following: %s": "沒有提供足夠的值給此引數:%s", | ||
"Invalid JSON config file: %s": "無效的 JSON 設置文件:%s", | ||
"Path to JSON config file": "JSON 設置文件的路徑", | ||
"Show help": "顯示說明", | ||
"Show version number": "顯示版本", | ||
"Did you mean %s?": "您是指 %s 嗎?", | ||
"Arguments %s and %s are mutually exclusive" : "引數 %s 和 %s 互斥", | ||
"Positionals:": "位置:", | ||
"command": "命令", | ||
"deprecated": "已淘汰", | ||
"deprecated: %s": "已淘汰:%s" | ||
} |
{ | ||
"name": "yargs", | ||
"version": "17.0.1", | ||
"version": "17.0.2-candidate", | ||
"description": "yargs the modern, pirate-themed, successor to optimist.", | ||
@@ -72,3 +72,3 @@ "main": "./index.cjs", | ||
"hashish": "0.0.4", | ||
"mocha": "^8.0.0", | ||
"mocha": "^9.0.0", | ||
"rimraf": "^3.0.2", | ||
@@ -75,0 +75,0 @@ "rollup": "^2.23.0", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
283672
4914
2