@optique/core 1.0.0-dev.557 → 1.0.0-dev.559
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/facade.cjs +3 -3
- package/dist/facade.js +3 -3
- package/dist/primitives.cjs +7 -4
- package/dist/primitives.js +7 -4
- package/package.json +1 -1
package/dist/facade.cjs
CHANGED
|
@@ -23,7 +23,7 @@ function createHelpParser(commandConfig, optionConfig) {
|
|
|
23
23
|
const commandParsers = [];
|
|
24
24
|
for (let i = 0; i < names.length; i++) commandParsers.push(require_primitives.command(names[i], innerParser, {
|
|
25
25
|
description: require_message.message`Show help information.`,
|
|
26
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
26
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
27
27
|
}));
|
|
28
28
|
helpCommand = commandParsers.length === 1 ? commandParsers[0] : require_constructs.longestMatch(...commandParsers);
|
|
29
29
|
}
|
|
@@ -51,7 +51,7 @@ function createVersionParser(commandConfig, optionConfig) {
|
|
|
51
51
|
const commandParsers = [];
|
|
52
52
|
for (let i = 0; i < names.length; i++) commandParsers.push(require_primitives.command(names[i], innerParser, {
|
|
53
53
|
description: require_message.message`Show version information.`,
|
|
54
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
54
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
55
55
|
}));
|
|
56
56
|
versionCommand = commandParsers.length === 1 ? commandParsers[0] : require_constructs.longestMatch(...commandParsers);
|
|
57
57
|
}
|
|
@@ -93,7 +93,7 @@ function createCompletionParser(programName, availableShells, commandConfig, opt
|
|
|
93
93
|
const commandParsers = [];
|
|
94
94
|
for (let i = 0; i < names.length; i++) commandParsers.push(require_primitives.command(names[i], completionInner, {
|
|
95
95
|
...completionCommandConfig,
|
|
96
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
96
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
97
97
|
}));
|
|
98
98
|
completionCommand = commandParsers.length === 1 ? commandParsers[0] : require_constructs.longestMatch(...commandParsers);
|
|
99
99
|
}
|
package/dist/facade.js
CHANGED
|
@@ -23,7 +23,7 @@ function createHelpParser(commandConfig, optionConfig) {
|
|
|
23
23
|
const commandParsers = [];
|
|
24
24
|
for (let i = 0; i < names.length; i++) commandParsers.push(command(names[i], innerParser, {
|
|
25
25
|
description: message`Show help information.`,
|
|
26
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
26
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
27
27
|
}));
|
|
28
28
|
helpCommand = commandParsers.length === 1 ? commandParsers[0] : longestMatch(...commandParsers);
|
|
29
29
|
}
|
|
@@ -51,7 +51,7 @@ function createVersionParser(commandConfig, optionConfig) {
|
|
|
51
51
|
const commandParsers = [];
|
|
52
52
|
for (let i = 0; i < names.length; i++) commandParsers.push(command(names[i], innerParser, {
|
|
53
53
|
description: message`Show version information.`,
|
|
54
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
54
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
55
55
|
}));
|
|
56
56
|
versionCommand = commandParsers.length === 1 ? commandParsers[0] : longestMatch(...commandParsers);
|
|
57
57
|
}
|
|
@@ -93,7 +93,7 @@ function createCompletionParser(programName, availableShells, commandConfig, opt
|
|
|
93
93
|
const commandParsers = [];
|
|
94
94
|
for (let i = 0; i < names.length; i++) commandParsers.push(command(names[i], completionInner, {
|
|
95
95
|
...completionCommandConfig,
|
|
96
|
-
hidden: i === 0 ? commandConfig.hidden :
|
|
96
|
+
hidden: i === 0 ? commandConfig.hidden : true
|
|
97
97
|
}));
|
|
98
98
|
completionCommand = commandParsers.length === 1 ? commandParsers[0] : longestMatch(...commandParsers);
|
|
99
99
|
}
|
package/dist/primitives.cjs
CHANGED
|
@@ -8,6 +8,10 @@ const require_usage_internals = require('./usage-internals.cjs');
|
|
|
8
8
|
const require_valueparser = require('./valueparser.cjs');
|
|
9
9
|
|
|
10
10
|
//#region src/primitives.ts
|
|
11
|
+
function hasParsedOptionValue(state, valueParser) {
|
|
12
|
+
if (valueParser != null) return require_dependency.isDeferredParseState(state) || require_dependency.isDependencySourceState(state) || state != null && "success" in state && state.success;
|
|
13
|
+
return state != null && "success" in state && state.success && state.value === true;
|
|
14
|
+
}
|
|
11
15
|
/**
|
|
12
16
|
* Helper function to create the appropriate state for an option value.
|
|
13
17
|
* - If the value parser is a DerivedValueParser, wraps the result in a DeferredParseState
|
|
@@ -354,8 +358,7 @@ function option(...args) {
|
|
|
354
358
|
consumed: context.buffer.slice(0, 1)
|
|
355
359
|
};
|
|
356
360
|
if (optionNames$1.includes(context.buffer[0])) {
|
|
357
|
-
|
|
358
|
-
if (hasValue) return {
|
|
361
|
+
if (hasParsedOptionValue(context.state, valueParser)) return {
|
|
359
362
|
success: false,
|
|
360
363
|
consumed: 1,
|
|
361
364
|
error: options.errors?.duplicate ? typeof options.errors.duplicate === "function" ? options.errors.duplicate(context.buffer[0]) : options.errors.duplicate : require_message.message`${require_message.optionName(context.buffer[0])} cannot be used multiple times.`
|
|
@@ -401,7 +404,7 @@ function option(...args) {
|
|
|
401
404
|
const prefixes = optionNames$1.filter((name) => name.startsWith("--") || name.startsWith("/") || name.startsWith("-") && name.length > 2).map((name) => name.startsWith("/") ? `${name}:` : `${name}=`);
|
|
402
405
|
for (const prefix of prefixes) {
|
|
403
406
|
if (!context.buffer[0].startsWith(prefix)) continue;
|
|
404
|
-
if (context.state
|
|
407
|
+
if (hasParsedOptionValue(context.state, valueParser)) {
|
|
405
408
|
const optionName$1 = prefix.slice(0, -1);
|
|
406
409
|
return {
|
|
407
410
|
success: false,
|
|
@@ -439,7 +442,7 @@ function option(...args) {
|
|
|
439
442
|
const shortOptions = optionNames$1.filter((name) => name.match(/^-[^-]$/));
|
|
440
443
|
for (const shortOption of shortOptions) {
|
|
441
444
|
if (!context.buffer[0].startsWith(shortOption)) continue;
|
|
442
|
-
if (context.state
|
|
445
|
+
if (hasParsedOptionValue(context.state, valueParser)) return {
|
|
443
446
|
success: false,
|
|
444
447
|
consumed: 1,
|
|
445
448
|
error: options.errors?.duplicate ? typeof options.errors.duplicate === "function" ? options.errors.duplicate(shortOption) : options.errors.duplicate : require_message.message`${require_message.optionName(shortOption)} cannot be used multiple times.`
|
package/dist/primitives.js
CHANGED
|
@@ -8,6 +8,10 @@ import { extractLeadingCommandNames } from "./usage-internals.js";
|
|
|
8
8
|
import { isValueParser } from "./valueparser.js";
|
|
9
9
|
|
|
10
10
|
//#region src/primitives.ts
|
|
11
|
+
function hasParsedOptionValue(state, valueParser) {
|
|
12
|
+
if (valueParser != null) return isDeferredParseState(state) || isDependencySourceState(state) || state != null && "success" in state && state.success;
|
|
13
|
+
return state != null && "success" in state && state.success && state.value === true;
|
|
14
|
+
}
|
|
11
15
|
/**
|
|
12
16
|
* Helper function to create the appropriate state for an option value.
|
|
13
17
|
* - If the value parser is a DerivedValueParser, wraps the result in a DeferredParseState
|
|
@@ -354,8 +358,7 @@ function option(...args) {
|
|
|
354
358
|
consumed: context.buffer.slice(0, 1)
|
|
355
359
|
};
|
|
356
360
|
if (optionNames$1.includes(context.buffer[0])) {
|
|
357
|
-
|
|
358
|
-
if (hasValue) return {
|
|
361
|
+
if (hasParsedOptionValue(context.state, valueParser)) return {
|
|
359
362
|
success: false,
|
|
360
363
|
consumed: 1,
|
|
361
364
|
error: options.errors?.duplicate ? typeof options.errors.duplicate === "function" ? options.errors.duplicate(context.buffer[0]) : options.errors.duplicate : message`${optionName(context.buffer[0])} cannot be used multiple times.`
|
|
@@ -401,7 +404,7 @@ function option(...args) {
|
|
|
401
404
|
const prefixes = optionNames$1.filter((name) => name.startsWith("--") || name.startsWith("/") || name.startsWith("-") && name.length > 2).map((name) => name.startsWith("/") ? `${name}:` : `${name}=`);
|
|
402
405
|
for (const prefix of prefixes) {
|
|
403
406
|
if (!context.buffer[0].startsWith(prefix)) continue;
|
|
404
|
-
if (context.state
|
|
407
|
+
if (hasParsedOptionValue(context.state, valueParser)) {
|
|
405
408
|
const optionName$1 = prefix.slice(0, -1);
|
|
406
409
|
return {
|
|
407
410
|
success: false,
|
|
@@ -439,7 +442,7 @@ function option(...args) {
|
|
|
439
442
|
const shortOptions = optionNames$1.filter((name) => name.match(/^-[^-]$/));
|
|
440
443
|
for (const shortOption of shortOptions) {
|
|
441
444
|
if (!context.buffer[0].startsWith(shortOption)) continue;
|
|
442
|
-
if (context.state
|
|
445
|
+
if (hasParsedOptionValue(context.state, valueParser)) return {
|
|
443
446
|
success: false,
|
|
444
447
|
consumed: 1,
|
|
445
448
|
error: options.errors?.duplicate ? typeof options.errors.duplicate === "function" ? options.errors.duplicate(shortOption) : options.errors.duplicate : message`${optionName(shortOption)} cannot be used multiple times.`
|