@optique/core 1.1.0-dev.2096 → 1.1.0-dev.2146
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/annotation-state.cjs +26 -26
- package/dist/annotation-state.d.cts +133 -1
- package/dist/annotation-state.d.ts +133 -1
- package/dist/annotations.cjs +2 -2
- package/dist/constructs.cjs +141 -73
- package/dist/constructs.js +70 -2
- package/dist/dependency-metadata.cjs +12 -12
- package/dist/dependency-metadata.d.cts +34 -3
- package/dist/dependency-metadata.d.ts +34 -3
- package/dist/dependency-runtime.cjs +37 -13
- package/dist/dependency-runtime.d.cts +197 -2
- package/dist/dependency-runtime.d.ts +197 -2
- package/dist/dependency-runtime.js +22 -1
- package/dist/dependency.cjs +7 -7
- package/dist/displaywidth.d.cts +12 -0
- package/dist/displaywidth.d.ts +12 -0
- package/dist/execution-context.d.cts +23 -0
- package/dist/execution-context.d.ts +23 -0
- package/dist/extension.cjs +14 -14
- package/dist/facade.cjs +46 -36
- package/dist/facade.js +31 -21
- package/dist/index.cjs +22 -21
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -3
- package/dist/input-trace.d.cts +2 -1
- package/dist/input-trace.d.ts +2 -1
- package/dist/internal/annotations.cjs +3 -0
- package/dist/internal/annotations.d.cts +47 -5
- package/dist/internal/annotations.d.ts +47 -5
- package/dist/internal/annotations.js +1 -1
- package/dist/internal/command-alias.cjs +16 -0
- package/dist/internal/command-alias.js +14 -0
- package/dist/internal/dependency.cjs +131 -0
- package/dist/internal/dependency.d.cts +311 -2
- package/dist/internal/dependency.d.ts +311 -2
- package/dist/internal/dependency.js +119 -1
- package/dist/internal/parser.cjs +35 -13
- package/dist/internal/parser.d.cts +44 -3
- package/dist/internal/parser.d.ts +44 -3
- package/dist/internal/parser.js +28 -6
- package/dist/modifiers.cjs +41 -41
- package/dist/parser.cjs +11 -11
- package/dist/phase2-seed.cjs +2 -2
- package/dist/phase2-seed.d.cts +50 -0
- package/dist/phase2-seed.d.ts +50 -0
- package/dist/primitives.cjs +74 -33
- package/dist/primitives.d.cts +10 -0
- package/dist/primitives.d.ts +10 -0
- package/dist/primitives.js +54 -13
- package/dist/suggestion.cjs +72 -2
- package/dist/suggestion.d.cts +188 -0
- package/dist/suggestion.d.ts +188 -0
- package/dist/suggestion.js +71 -3
- package/dist/usage-internals.cjs +5 -1
- package/dist/usage-internals.js +5 -1
- package/dist/usage.cjs +9 -1
- package/dist/usage.d.cts +14 -0
- package/dist/usage.d.ts +14 -0
- package/dist/usage.js +9 -1
- package/dist/validate.cjs +1 -0
- package/dist/validate.d.cts +99 -0
- package/dist/validate.d.ts +99 -0
- package/dist/validate.js +1 -1
- package/dist/valueparser.cjs +333 -79
- package/dist/valueparser.d.cts +197 -1
- package/dist/valueparser.d.ts +197 -1
- package/dist/valueparser.js +334 -81
- package/package.json +19 -4
package/dist/facade.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { injectAnnotations, isInjectedAnnotationWrapper, unwrapInjectedAnnotationWrapper } from "./internal/annotations.js";
|
|
2
2
|
import { commandLine, formatMessage, lineBreak, message, optionName, text, value } from "./message.js";
|
|
3
|
-
import { bash, fish, nu, pwsh, zsh } from "./completion.js";
|
|
4
3
|
import { validateCommandNames, validateContextIds, validateMetaNameCollisions, validateOptionNames, validateProgramName } from "./validate.js";
|
|
5
4
|
import { formatUsage, isSuggestionHidden } from "./usage.js";
|
|
6
5
|
import { formatDocPage } from "./doc.js";
|
|
@@ -8,6 +7,8 @@ import { dispatchByMode } from "./internal/mode-dispatch.js";
|
|
|
8
7
|
import { collectExplicitSourceValues, collectExplicitSourceValuesAsync, createDependencyRuntimeContext } from "./dependency-runtime.js";
|
|
9
8
|
import { createInputTrace } from "./input-trace.js";
|
|
10
9
|
import { createParserContext, getDocPage } from "./internal/parser.js";
|
|
10
|
+
import { bash, fish, nu, pwsh, zsh } from "./completion.js";
|
|
11
|
+
import { allowDuplicateLeadingCommandNamesKey, hiddenCommandAliasesKey } from "./internal/command-alias.js";
|
|
11
12
|
import { completeOrExtractPhase2Seed } from "./phase2-seed.js";
|
|
12
13
|
import { group, longestMatch, object } from "./constructs.js";
|
|
13
14
|
import { multiple, optional, withDefault } from "./modifiers.js";
|
|
@@ -15,6 +16,14 @@ import { string } from "./valueparser.js";
|
|
|
15
16
|
import { argument, command, constant, flag, option } from "./primitives.js";
|
|
16
17
|
|
|
17
18
|
//#region src/facade.ts
|
|
19
|
+
/**
|
|
20
|
+
* Combines built-in meta commands while intentionally bypassing duplicate
|
|
21
|
+
* leading command name validation in `createLongestMatch()`.
|
|
22
|
+
*/
|
|
23
|
+
function longestMatchForMetaCommands(...parsers) {
|
|
24
|
+
const options = { [allowDuplicateLeadingCommandNamesKey]: true };
|
|
25
|
+
return longestMatch(...parsers, options);
|
|
26
|
+
}
|
|
18
27
|
const SuppressedErrorCtor = typeof SuppressedError === "function" ? SuppressedError : (() => {
|
|
19
28
|
class SuppressedErrorPolyfill extends Error {
|
|
20
29
|
error;
|
|
@@ -278,6 +287,10 @@ async function extractPhase2SeedAsync(parser, args) {
|
|
|
278
287
|
} while (context.buffer.length > 0);
|
|
279
288
|
return await completeOrExtractPhase2Seed(parser, context.state, createPhase2SeedExec(parser, context));
|
|
280
289
|
}
|
|
290
|
+
function getMetaCommandAliases(names) {
|
|
291
|
+
const [, firstAlias, ...restAliases] = names;
|
|
292
|
+
return firstAlias == null ? void 0 : [firstAlias, ...restAliases];
|
|
293
|
+
}
|
|
281
294
|
/**
|
|
282
295
|
* Creates help parsers based on the sub-config.
|
|
283
296
|
*/
|
|
@@ -287,12 +300,12 @@ function createHelpParser(commandConfig, optionConfig) {
|
|
|
287
300
|
if (commandConfig) {
|
|
288
301
|
const names = commandConfig.names ?? ["help"];
|
|
289
302
|
const innerParser = multiple(argument(string({ metavar: "COMMAND" }), { description: message`Command name to show help for.` }));
|
|
290
|
-
const
|
|
291
|
-
|
|
303
|
+
const aliases = getMetaCommandAliases(names);
|
|
304
|
+
helpCommand = command(names[0], innerParser, {
|
|
292
305
|
description: message`Show help information.`,
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
306
|
+
...aliases != null ? { [hiddenCommandAliasesKey]: aliases } : {},
|
|
307
|
+
hidden: commandConfig.hidden
|
|
308
|
+
});
|
|
296
309
|
}
|
|
297
310
|
if (optionConfig) {
|
|
298
311
|
const names = optionConfig.names ?? ["--help"];
|
|
@@ -315,12 +328,12 @@ function createVersionParser(commandConfig, optionConfig) {
|
|
|
315
328
|
if (commandConfig) {
|
|
316
329
|
const names = commandConfig.names ?? ["version"];
|
|
317
330
|
const innerParser = object({});
|
|
318
|
-
const
|
|
319
|
-
|
|
331
|
+
const aliases = getMetaCommandAliases(names);
|
|
332
|
+
versionCommand = command(names[0], innerParser, {
|
|
320
333
|
description: message`Show version information.`,
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
334
|
+
...aliases != null ? { [hiddenCommandAliasesKey]: aliases } : {},
|
|
335
|
+
hidden: commandConfig.hidden
|
|
336
|
+
});
|
|
324
337
|
}
|
|
325
338
|
if (optionConfig) {
|
|
326
339
|
const names = optionConfig.names ?? ["--version"];
|
|
@@ -358,12 +371,12 @@ function createCompletionParser(programName, availableShells, commandConfig, opt
|
|
|
358
371
|
description: message`Generate shell completion script or provide completions.`,
|
|
359
372
|
footer: message`Examples:${lineBreak()} Bash: ${commandLine(`eval "$(${programName} ${displayName} bash)"`)}${lineBreak()} zsh: ${commandLine(`eval "$(${programName} ${displayName} zsh)"`)}${lineBreak()} fish: ${commandLine(`eval "$(${programName} ${displayName} fish)"`)}${lineBreak()} PowerShell: ${commandLine(`${programName} ${displayName} pwsh > ${programName}-completion.ps1; . ./${programName}-completion.ps1`)}${lineBreak()} Nushell: ${commandLine(`${programName} ${displayName} nu | save ${programName}-completion.nu; source ./${programName}-completion.nu`)}`
|
|
360
373
|
};
|
|
361
|
-
const
|
|
362
|
-
|
|
374
|
+
const aliases = getMetaCommandAliases(names);
|
|
375
|
+
completionCommand = command(names[0], completionInner, {
|
|
363
376
|
...completionCommandConfig,
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
377
|
+
...aliases != null ? { [hiddenCommandAliasesKey]: aliases } : {},
|
|
378
|
+
hidden: commandConfig.hidden
|
|
379
|
+
});
|
|
367
380
|
}
|
|
368
381
|
if (optionConfig) {
|
|
369
382
|
const names = optionConfig.names ?? ["--completion"];
|
|
@@ -463,9 +476,7 @@ function combineWithHelpVersion(originalParser, helpParsers, versionParsers, com
|
|
|
463
476
|
}));
|
|
464
477
|
const mainParserIndex = parsers.length - 1;
|
|
465
478
|
if (parsers.length === 1) return parsers[0];
|
|
466
|
-
let combined;
|
|
467
|
-
if (parsers.length === 2) combined = longestMatch(parsers[0], parsers[1]);
|
|
468
|
-
else combined = longestMatch(...parsers);
|
|
479
|
+
let combined = longestMatchForMetaCommands(...parsers);
|
|
469
480
|
const topUsage = combined.usage[0];
|
|
470
481
|
if (topUsage?.type === "exclusive" && mainParserIndex > 0) {
|
|
471
482
|
const terms = [...topUsage.terms];
|
|
@@ -1080,8 +1091,7 @@ function runParser(parserOrProgram, programNameOrArgs, argsOrOptions, optionsPar
|
|
|
1080
1091
|
for (const [label, optParsers] of Object.entries(groupedMetaOptions)) if (optParsers.length === 1) commandParsers.push(group(label, optParsers[0]));
|
|
1081
1092
|
else commandParsers.push(group(label, longestMatch(...optParsers)));
|
|
1082
1093
|
if (commandParsers.length === 1) helpGeneratorParser = commandParsers[0];
|
|
1083
|
-
else
|
|
1084
|
-
else helpGeneratorParser = longestMatch(...commandParsers);
|
|
1094
|
+
else helpGeneratorParser = longestMatchForMetaCommands(...commandParsers);
|
|
1085
1095
|
}
|
|
1086
1096
|
const reportInvalidHelpCommand = (validationError) => {
|
|
1087
1097
|
stderr(`Usage: ${indentLines(formatUsage(programName, augmentedParser.usage, {
|
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
const
|
|
1
|
+
const require_internal_annotations = require('./internal/annotations.cjs');
|
|
2
2
|
const require_message = require('./message.cjs');
|
|
3
|
-
const require_completion = require('./completion.cjs');
|
|
4
3
|
const require_usage = require('./usage.cjs');
|
|
5
4
|
const require_doc = require('./doc.cjs');
|
|
6
|
-
const
|
|
7
|
-
const
|
|
5
|
+
const require_internal_dependency = require('./internal/dependency.cjs');
|
|
6
|
+
const require_internal_parser = require('./internal/parser.cjs');
|
|
7
|
+
const require_completion = require('./completion.cjs');
|
|
8
8
|
const require_constructs = require('./constructs.cjs');
|
|
9
9
|
const require_modifiers = require('./modifiers.cjs');
|
|
10
10
|
const require_nonempty = require('./nonempty.cjs');
|
|
@@ -30,13 +30,13 @@ exports.commandLine = require_message.commandLine;
|
|
|
30
30
|
exports.concat = require_constructs.concat;
|
|
31
31
|
exports.conditional = require_constructs.conditional;
|
|
32
32
|
exports.constant = require_primitives.constant;
|
|
33
|
-
exports.createParserContext =
|
|
33
|
+
exports.createParserContext = require_internal_parser.createParserContext;
|
|
34
34
|
exports.deduplicateDocEntries = require_doc.deduplicateDocEntries;
|
|
35
35
|
exports.deduplicateDocFragments = require_doc.deduplicateDocFragments;
|
|
36
|
-
exports.dependency =
|
|
37
|
-
exports.deriveFrom =
|
|
38
|
-
exports.deriveFromAsync =
|
|
39
|
-
exports.deriveFromSync =
|
|
36
|
+
exports.dependency = require_internal_dependency.dependency;
|
|
37
|
+
exports.deriveFrom = require_internal_dependency.deriveFrom;
|
|
38
|
+
exports.deriveFromAsync = require_internal_dependency.deriveFromAsync;
|
|
39
|
+
exports.deriveFromSync = require_internal_dependency.deriveFromSync;
|
|
40
40
|
exports.domain = require_valueparser.domain;
|
|
41
41
|
exports.email = require_valueparser.email;
|
|
42
42
|
exports.ensureNonEmptyString = require_nonempty.ensureNonEmptyString;
|
|
@@ -47,6 +47,7 @@ exports.extractLiteralValues = require_usage.extractLiteralValues;
|
|
|
47
47
|
exports.extractOptionNames = require_usage.extractOptionNames;
|
|
48
48
|
exports.fail = require_primitives.fail;
|
|
49
49
|
exports.fileSize = require_valueparser.fileSize;
|
|
50
|
+
exports.firstOf = require_valueparser.firstOf;
|
|
50
51
|
exports.fish = require_completion.fish;
|
|
51
52
|
exports.flag = require_primitives.flag;
|
|
52
53
|
exports.float = require_valueparser.float;
|
|
@@ -54,18 +55,18 @@ exports.formatDocPage = require_doc.formatDocPage;
|
|
|
54
55
|
exports.formatMessage = require_message.formatMessage;
|
|
55
56
|
exports.formatUsage = require_usage.formatUsage;
|
|
56
57
|
exports.formatUsageTerm = require_usage.formatUsageTerm;
|
|
57
|
-
exports.getAnnotations =
|
|
58
|
-
exports.getDocPage =
|
|
59
|
-
exports.getDocPageAsync =
|
|
60
|
-
exports.getDocPageSync =
|
|
58
|
+
exports.getAnnotations = require_internal_annotations.getAnnotations;
|
|
59
|
+
exports.getDocPage = require_internal_parser.getDocPage;
|
|
60
|
+
exports.getDocPageAsync = require_internal_parser.getDocPageAsync;
|
|
61
|
+
exports.getDocPageSync = require_internal_parser.getDocPageSync;
|
|
61
62
|
exports.group = require_constructs.group;
|
|
62
63
|
exports.hostname = require_valueparser.hostname;
|
|
63
64
|
exports.integer = require_valueparser.integer;
|
|
64
65
|
exports.ip = require_valueparser.ip;
|
|
65
66
|
exports.ipv4 = require_valueparser.ipv4;
|
|
66
67
|
exports.ipv6 = require_valueparser.ipv6;
|
|
67
|
-
exports.isDependencySource =
|
|
68
|
-
exports.isDerivedValueParser =
|
|
68
|
+
exports.isDependencySource = require_internal_dependency.isDependencySource;
|
|
69
|
+
exports.isDerivedValueParser = require_internal_dependency.isDerivedValueParser;
|
|
69
70
|
exports.isDocEntryHidden = require_doc.isDocEntryHidden;
|
|
70
71
|
exports.isDocHidden = require_usage.isDocHidden;
|
|
71
72
|
exports.isNonEmptyString = require_nonempty.isNonEmptyString;
|
|
@@ -94,9 +95,9 @@ exports.optionName = require_message.optionName;
|
|
|
94
95
|
exports.optionNames = require_message.optionNames;
|
|
95
96
|
exports.optional = require_modifiers.optional;
|
|
96
97
|
exports.or = require_constructs.or;
|
|
97
|
-
exports.parse =
|
|
98
|
-
exports.parseAsync =
|
|
99
|
-
exports.parseSync =
|
|
98
|
+
exports.parse = require_internal_parser.parse;
|
|
99
|
+
exports.parseAsync = require_internal_parser.parseAsync;
|
|
100
|
+
exports.parseSync = require_internal_parser.parseSync;
|
|
100
101
|
exports.passThrough = require_primitives.passThrough;
|
|
101
102
|
exports.port = require_valueparser.port;
|
|
102
103
|
exports.portRange = require_valueparser.portRange;
|
|
@@ -111,9 +112,9 @@ exports.semVer = require_valueparser.semVer;
|
|
|
111
112
|
exports.seq = require_constructs.seq;
|
|
112
113
|
exports.socketAddress = require_valueparser.socketAddress;
|
|
113
114
|
exports.string = require_valueparser.string;
|
|
114
|
-
exports.suggest =
|
|
115
|
-
exports.suggestAsync =
|
|
116
|
-
exports.suggestSync =
|
|
115
|
+
exports.suggest = require_internal_parser.suggest;
|
|
116
|
+
exports.suggestAsync = require_internal_parser.suggestAsync;
|
|
117
|
+
exports.suggestSync = require_internal_parser.suggestSync;
|
|
117
118
|
exports.text = require_message.text;
|
|
118
119
|
exports.tuple = require_constructs.tuple;
|
|
119
120
|
exports.url = require_valueparser.url;
|
package/dist/index.d.cts
CHANGED
|
@@ -3,7 +3,7 @@ import { NonEmptyString, ensureNonEmptyString, isNonEmptyString } from "./nonemp
|
|
|
3
3
|
import { Message, MessageFormatOptions, MessageTerm, ValueSetOptions, commandLine, envVar, formatMessage, lineBreak, link, message, metavar, optionName, optionNames, text, value, valueSet, values } from "./message.cjs";
|
|
4
4
|
import { HiddenVisibility, OptionName, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, cloneUsage, cloneUsageTerm, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, formatUsage, formatUsageTerm, isDocHidden, isSuggestionHidden, isUsageHidden, mergeHidden, normalizeUsage } from "./usage.cjs";
|
|
5
5
|
import { DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, ShowChoicesOptions, ShowDefaultOptions, cloneDocEntry, deduplicateDocEntries, deduplicateDocFragments, formatDocPage, isDocEntryHidden } from "./doc.cjs";
|
|
6
|
-
import { ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, DeferredMap, DomainOptions, EmailOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FloatOptions, HostnameOptions, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, MacAddressOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SocketAddressOptions, SocketAddressValue, StringOptions, UrlOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.cjs";
|
|
6
|
+
import { ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, DeferredMap, DomainOptions, EmailOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FirstOfOptions, FloatOptions, HostnameOptions, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, MacAddressOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SocketAddressOptions, SocketAddressValue, StringOptions, UrlOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, firstOf, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.cjs";
|
|
7
7
|
import { CombineModes, DocState, ExecutionContext, ExecutionPhase, InferMode, InferValue, Mode, ModeIterable, ModeValue, ParseFrame, Parser, ParserContext, ParserResult, Result, Suggestion, createParserContext, getDocPage, getDocPageAsync, getDocPageSync, parse, parseAsync, parseSync, suggest, suggestAsync, suggestSync } from "./internal/parser.cjs";
|
|
8
8
|
import { ShellCompletion, bash, fish, nu, pwsh, zsh } from "./completion.cjs";
|
|
9
9
|
import { ConditionalErrorOptions, ConditionalOptions, DuplicateOptionError, GroupOptions, LongestMatchErrorOptions, LongestMatchOptions, MergeOptions, NoMatchContext, ObjectErrorOptions, ObjectOptions, OrErrorOptions, OrOptions, SeqOptions, TupleOptions, concat, conditional, group, longestMatch, merge, object, or, seq, tuple } from "./constructs.cjs";
|
|
@@ -12,4 +12,4 @@ import { AnyDependencySource, CombineMode, CombinedDependencyMode, DependencyMod
|
|
|
12
12
|
import { CommandSubConfig, ContextOptionsParam, ExtractRequiredOptions, OptionSubConfig, RunOptions, RunParserError, RunWithOptions, SubstituteParserValue, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync } from "./facade.cjs";
|
|
13
13
|
import { MultipleErrorOptions, MultipleOptions, WithDefaultError, WithDefaultOptions, map, multiple, nonEmpty, optional, withDefault } from "./modifiers.cjs";
|
|
14
14
|
import { ArgumentErrorOptions, ArgumentOptions, CommandErrorOptions, CommandOptions, FlagErrorOptions, FlagOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, OptionErrorOptions, OptionOptions, OptionState, PassThroughFormat, PassThroughOptions, argument, command, constant, fail, flag, negatableFlag, option, passThrough } from "./primitives.cjs";
|
|
15
|
-
export { type Annotations, AnyDependencySource, ArgumentErrorOptions, ArgumentOptions, ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, CombineMode, CombineModes, CombinedDependencyMode, CommandErrorOptions, CommandOptions, CommandSubConfig, ConditionalErrorOptions, ConditionalOptions, ContextOptionsParam, DeferredMap, DependencyMode, DependencySource, DependencyValue, DependencyValues, DeriveAsyncOptions, DeriveFromAsyncOptions, DeriveFromOptions, DeriveFromSyncOptions, DeriveOptions, DeriveSyncOptions, DerivedValueParser, DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, DocState, DomainOptions, DuplicateOptionError, EmailOptions, ExecutionContext, ExecutionPhase, ExtractRequiredOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FlagErrorOptions, FlagOptions, FloatOptions, GroupOptions, HiddenVisibility, HostnameOptions, InferMode, InferValue, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, LongestMatchErrorOptions, LongestMatchOptions, MacAddressOptions, MergeOptions, type Message, type MessageFormatOptions, type MessageTerm, Mode, ModeIterable, ModeValue, MultipleErrorOptions, MultipleOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, NoMatchContext, NonEmptyString, ObjectErrorOptions, ObjectOptions, OptionErrorOptions, OptionName, OptionOptions, OptionState, OptionSubConfig, OrErrorOptions, OrOptions, ParseFrame, type ParseOptions, Parser, ParserContext, ParserResult, ParserValuePlaceholder, PassThroughFormat, PassThroughOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, Result, RunOptions, RunParserError, RunWithOptions, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SeqOptions, ShellCompletion, ShowChoicesOptions, ShowDefaultOptions, SocketAddressOptions, SocketAddressValue, SourceContext, SourceContextRequest, StringOptions, SubstituteParserValue, Suggestion, TupleOptions, UrlOptions, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, type ValueSetOptions, WithDefaultError, WithDefaultOptions, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
|
15
|
+
export { type Annotations, AnyDependencySource, ArgumentErrorOptions, ArgumentOptions, ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, CombineMode, CombineModes, CombinedDependencyMode, CommandErrorOptions, CommandOptions, CommandSubConfig, ConditionalErrorOptions, ConditionalOptions, ContextOptionsParam, DeferredMap, DependencyMode, DependencySource, DependencyValue, DependencyValues, DeriveAsyncOptions, DeriveFromAsyncOptions, DeriveFromOptions, DeriveFromSyncOptions, DeriveOptions, DeriveSyncOptions, DerivedValueParser, DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, DocState, DomainOptions, DuplicateOptionError, EmailOptions, ExecutionContext, ExecutionPhase, ExtractRequiredOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FirstOfOptions, FlagErrorOptions, FlagOptions, FloatOptions, GroupOptions, HiddenVisibility, HostnameOptions, InferMode, InferValue, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, LongestMatchErrorOptions, LongestMatchOptions, MacAddressOptions, MergeOptions, type Message, type MessageFormatOptions, type MessageTerm, Mode, ModeIterable, ModeValue, MultipleErrorOptions, MultipleOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, NoMatchContext, NonEmptyString, ObjectErrorOptions, ObjectOptions, OptionErrorOptions, OptionName, OptionOptions, OptionState, OptionSubConfig, OrErrorOptions, OrOptions, ParseFrame, type ParseOptions, Parser, ParserContext, ParserResult, ParserValuePlaceholder, PassThroughFormat, PassThroughOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, Result, RunOptions, RunParserError, RunWithOptions, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SeqOptions, ShellCompletion, ShowChoicesOptions, ShowDefaultOptions, SocketAddressOptions, SocketAddressValue, SourceContext, SourceContextRequest, StringOptions, SubstituteParserValue, Suggestion, TupleOptions, UrlOptions, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, type ValueSetOptions, WithDefaultError, WithDefaultOptions, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, firstOf, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { NonEmptyString, ensureNonEmptyString, isNonEmptyString } from "./nonemp
|
|
|
3
3
|
import { Message, MessageFormatOptions, MessageTerm, ValueSetOptions, commandLine, envVar, formatMessage, lineBreak, link, message, metavar, optionName, optionNames, text, value, valueSet, values } from "./message.js";
|
|
4
4
|
import { HiddenVisibility, OptionName, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, cloneUsage, cloneUsageTerm, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, formatUsage, formatUsageTerm, isDocHidden, isSuggestionHidden, isUsageHidden, mergeHidden, normalizeUsage } from "./usage.js";
|
|
5
5
|
import { DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, ShowChoicesOptions, ShowDefaultOptions, cloneDocEntry, deduplicateDocEntries, deduplicateDocFragments, formatDocPage, isDocEntryHidden } from "./doc.js";
|
|
6
|
-
import { ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, DeferredMap, DomainOptions, EmailOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FloatOptions, HostnameOptions, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, MacAddressOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SocketAddressOptions, SocketAddressValue, StringOptions, UrlOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.js";
|
|
6
|
+
import { ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, DeferredMap, DomainOptions, EmailOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FirstOfOptions, FloatOptions, HostnameOptions, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, MacAddressOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SocketAddressOptions, SocketAddressValue, StringOptions, UrlOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, firstOf, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.js";
|
|
7
7
|
import { CombineModes, DocState, ExecutionContext, ExecutionPhase, InferMode, InferValue, Mode, ModeIterable, ModeValue, ParseFrame, Parser, ParserContext, ParserResult, Result, Suggestion, createParserContext, getDocPage, getDocPageAsync, getDocPageSync, parse, parseAsync, parseSync, suggest, suggestAsync, suggestSync } from "./internal/parser.js";
|
|
8
8
|
import { ShellCompletion, bash, fish, nu, pwsh, zsh } from "./completion.js";
|
|
9
9
|
import { ConditionalErrorOptions, ConditionalOptions, DuplicateOptionError, GroupOptions, LongestMatchErrorOptions, LongestMatchOptions, MergeOptions, NoMatchContext, ObjectErrorOptions, ObjectOptions, OrErrorOptions, OrOptions, SeqOptions, TupleOptions, concat, conditional, group, longestMatch, merge, object, or, seq, tuple } from "./constructs.js";
|
|
@@ -12,4 +12,4 @@ import { AnyDependencySource, CombineMode, CombinedDependencyMode, DependencyMod
|
|
|
12
12
|
import { CommandSubConfig, ContextOptionsParam, ExtractRequiredOptions, OptionSubConfig, RunOptions, RunParserError, RunWithOptions, SubstituteParserValue, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync } from "./facade.js";
|
|
13
13
|
import { MultipleErrorOptions, MultipleOptions, WithDefaultError, WithDefaultOptions, map, multiple, nonEmpty, optional, withDefault } from "./modifiers.js";
|
|
14
14
|
import { ArgumentErrorOptions, ArgumentOptions, CommandErrorOptions, CommandOptions, FlagErrorOptions, FlagOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, OptionErrorOptions, OptionOptions, OptionState, PassThroughFormat, PassThroughOptions, argument, command, constant, fail, flag, negatableFlag, option, passThrough } from "./primitives.js";
|
|
15
|
-
export { type Annotations, AnyDependencySource, ArgumentErrorOptions, ArgumentOptions, ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, CombineMode, CombineModes, CombinedDependencyMode, CommandErrorOptions, CommandOptions, CommandSubConfig, ConditionalErrorOptions, ConditionalOptions, ContextOptionsParam, DeferredMap, DependencyMode, DependencySource, DependencyValue, DependencyValues, DeriveAsyncOptions, DeriveFromAsyncOptions, DeriveFromOptions, DeriveFromSyncOptions, DeriveOptions, DeriveSyncOptions, DerivedValueParser, DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, DocState, DomainOptions, DuplicateOptionError, EmailOptions, ExecutionContext, ExecutionPhase, ExtractRequiredOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FlagErrorOptions, FlagOptions, FloatOptions, GroupOptions, HiddenVisibility, HostnameOptions, InferMode, InferValue, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, LongestMatchErrorOptions, LongestMatchOptions, MacAddressOptions, MergeOptions, type Message, type MessageFormatOptions, type MessageTerm, Mode, ModeIterable, ModeValue, MultipleErrorOptions, MultipleOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, NoMatchContext, NonEmptyString, ObjectErrorOptions, ObjectOptions, OptionErrorOptions, OptionName, OptionOptions, OptionState, OptionSubConfig, OrErrorOptions, OrOptions, ParseFrame, type ParseOptions, Parser, ParserContext, ParserResult, ParserValuePlaceholder, PassThroughFormat, PassThroughOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, Result, RunOptions, RunParserError, RunWithOptions, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SeqOptions, ShellCompletion, ShowChoicesOptions, ShowDefaultOptions, SocketAddressOptions, SocketAddressValue, SourceContext, SourceContextRequest, StringOptions, SubstituteParserValue, Suggestion, TupleOptions, UrlOptions, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, type ValueSetOptions, WithDefaultError, WithDefaultOptions, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
|
15
|
+
export { type Annotations, AnyDependencySource, ArgumentErrorOptions, ArgumentOptions, ChoiceOptions, ChoiceOptionsBase, ChoiceOptionsNumber, ChoiceOptionsString, CidrOptions, CidrValue, Color, ColorFormat, ColorOptions, CombineMode, CombineModes, CombinedDependencyMode, CommandErrorOptions, CommandOptions, CommandSubConfig, ConditionalErrorOptions, ConditionalOptions, ContextOptionsParam, DeferredMap, DependencyMode, DependencySource, DependencyValue, DependencyValues, DeriveAsyncOptions, DeriveFromAsyncOptions, DeriveFromOptions, DeriveFromSyncOptions, DeriveOptions, DeriveSyncOptions, DerivedValueParser, DocEntry, DocFragment, DocFragments, DocPage, DocPageFormatOptions, DocSection, DocState, DomainOptions, DuplicateOptionError, EmailOptions, ExecutionContext, ExecutionPhase, ExtractRequiredOptions, FileSizeOptions, FileSizeOptionsBigInt, FileSizeOptionsNumber, FileSizeUnit, FirstOfOptions, FlagErrorOptions, FlagOptions, FloatOptions, GroupOptions, HiddenVisibility, HostnameOptions, InferMode, InferValue, IntegerOptionsBigInt, IntegerOptionsNumber, IpOptions, Ipv4Options, Ipv6Options, Json, JsonOptions, LocaleOptions, LongestMatchErrorOptions, LongestMatchOptions, MacAddressOptions, MergeOptions, type Message, type MessageFormatOptions, type MessageTerm, Mode, ModeIterable, ModeValue, MultipleErrorOptions, MultipleOptions, NegatableFlagErrorOptions, NegatableFlagNameList, NegatableFlagNames, NegatableFlagOptions, NegatableFlagState, NoMatchContext, NonEmptyString, ObjectErrorOptions, ObjectOptions, OptionErrorOptions, OptionName, OptionOptions, OptionState, OptionSubConfig, OrErrorOptions, OrOptions, ParseFrame, type ParseOptions, Parser, ParserContext, ParserResult, ParserValuePlaceholder, PassThroughFormat, PassThroughOptions, PortOptionsBigInt, PortOptionsNumber, PortRangeOptionsBigInt, PortRangeOptionsNumber, PortRangeValueBigInt, PortRangeValueNumber, Result, RunOptions, RunParserError, RunWithOptions, SemVer, SemVerOptionsObject, SemVerOptionsString, SemVerString, SeqOptions, ShellCompletion, ShowChoicesOptions, ShowDefaultOptions, SocketAddressOptions, SocketAddressValue, SourceContext, SourceContextRequest, StringOptions, SubstituteParserValue, Suggestion, TupleOptions, UrlOptions, Usage, UsageFormatOptions, UsageTerm, UsageTermFormatOptions, Uuid, UuidOptions, ValueParser, ValueParserResult, type ValueSetOptions, WithDefaultError, WithDefaultOptions, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, firstOf, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { getAnnotations } from "./internal/annotations.js";
|
|
2
2
|
import { commandLine, envVar, formatMessage, lineBreak, link, message, metavar, optionName, optionNames, text, value, valueSet, values } from "./message.js";
|
|
3
|
-
import { bash, fish, nu, pwsh, zsh } from "./completion.js";
|
|
4
3
|
import { cloneUsage, cloneUsageTerm, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, formatUsage, formatUsageTerm, isDocHidden, isSuggestionHidden, isUsageHidden, mergeHidden, normalizeUsage } from "./usage.js";
|
|
5
4
|
import { cloneDocEntry, deduplicateDocEntries, deduplicateDocFragments, formatDocPage, isDocEntryHidden } from "./doc.js";
|
|
6
5
|
import { dependency, deriveFrom, deriveFromAsync, deriveFromSync, isDependencySource, isDerivedValueParser } from "./internal/dependency.js";
|
|
7
6
|
import { createParserContext, getDocPage, getDocPageAsync, getDocPageSync, parse, parseAsync, parseSync, suggest, suggestAsync, suggestSync } from "./internal/parser.js";
|
|
7
|
+
import { bash, fish, nu, pwsh, zsh } from "./completion.js";
|
|
8
8
|
import { DuplicateOptionError, concat, conditional, group, longestMatch, merge, object, or, seq, tuple } from "./constructs.js";
|
|
9
9
|
import { WithDefaultError, map, multiple, nonEmpty, optional, withDefault } from "./modifiers.js";
|
|
10
10
|
import { ensureNonEmptyString, isNonEmptyString } from "./nonempty.js";
|
|
11
|
-
import { checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.js";
|
|
11
|
+
import { checkBooleanOption, checkEnumOption, choice, cidr, color, domain, email, fileSize, firstOf, float, hostname, integer, ip, ipv4, ipv6, isValueParser, json, locale, macAddress, port, portRange, semVer, socketAddress, string, url, uuid } from "./valueparser.js";
|
|
12
12
|
import { argument, command, constant, fail, flag, negatableFlag, option, passThrough } from "./primitives.js";
|
|
13
13
|
import { RunParserError, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync } from "./facade.js";
|
|
14
14
|
|
|
15
|
-
export { DuplicateOptionError, RunParserError, WithDefaultError, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
|
15
|
+
export { DuplicateOptionError, RunParserError, WithDefaultError, argument, bash, checkBooleanOption, checkEnumOption, choice, cidr, cloneDocEntry, cloneUsage, cloneUsageTerm, color, command, commandLine, concat, conditional, constant, createParserContext, deduplicateDocEntries, deduplicateDocFragments, dependency, deriveFrom, deriveFromAsync, deriveFromSync, domain, email, ensureNonEmptyString, envVar, extractArgumentMetavars, extractCommandNames, extractLiteralValues, extractOptionNames, fail, fileSize, firstOf, fish, flag, float, formatDocPage, formatMessage, formatUsage, formatUsageTerm, getAnnotations, getDocPage, getDocPageAsync, getDocPageSync, group, hostname, integer, ip, ipv4, ipv6, isDependencySource, isDerivedValueParser, isDocEntryHidden, isDocHidden, isNonEmptyString, isSuggestionHidden, isUsageHidden, isValueParser, json, lineBreak, link, locale, longestMatch, macAddress, map, merge, mergeHidden, message, metavar, multiple, negatableFlag, nonEmpty, normalizeUsage, nu, object, option, optionName, optionNames, optional, or, parse, parseAsync, parseSync, passThrough, port, portRange, pwsh, runParser, runParserAsync, runParserSync, runWith, runWithAsync, runWithSync, semVer, seq, socketAddress, string, suggest, suggestAsync, suggestSync, text, tuple, url, uuid, value, valueSet, values, withDefault, zsh };
|
package/dist/input-trace.d.cts
CHANGED
package/dist/input-trace.d.ts
CHANGED
|
@@ -306,6 +306,9 @@ function unwrapInjectedAnnotationState(value) {
|
|
|
306
306
|
//#endregion
|
|
307
307
|
exports.annotateFreshArray = annotateFreshArray;
|
|
308
308
|
exports.annotationKey = annotationKey;
|
|
309
|
+
exports.annotationStateValueKey = annotationStateValueKey;
|
|
310
|
+
exports.annotationWrapperKey = annotationWrapperKey;
|
|
311
|
+
exports.firstPassAnnotationKey = firstPassAnnotationKey;
|
|
309
312
|
exports.getAnnotations = getAnnotations;
|
|
310
313
|
exports.hasMeaningfulAnnotations = hasMeaningfulAnnotations;
|
|
311
314
|
exports.inheritAnnotations = inheritAnnotations;
|
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
//#region src/internal/annotations.d.ts
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Runtime context extension system for Optique parsers.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the annotations system that allows external runtime data
|
|
6
|
+
* to be passed to parsers during the parsing session. This enables use cases like
|
|
7
|
+
* config file fallbacks, environment-based validation, and shared context.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
* @since 0.10.0
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Annotation key symbol for storing data in parser state.
|
|
14
|
+
* @since 0.10.0
|
|
15
|
+
*/
|
|
16
|
+
declare const annotationKey: unique symbol;
|
|
17
|
+
/**
|
|
18
|
+
* Internal marker attached during the first pass of `runWith()` so wrappers
|
|
19
|
+
* with side effects can defer work until two-pass contexts have resolved.
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
declare const firstPassAnnotationKey: unique symbol;
|
|
24
|
+
/**
|
|
25
|
+
* Internal key for preserving primitive parser state values when annotations
|
|
26
|
+
* are injected into non-object states.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
declare const annotationStateValueKey: unique symbol;
|
|
30
|
+
/**
|
|
31
|
+
* Internal marker key that indicates annotation wrapping was injected by
|
|
32
|
+
* Optique internals for non-object states.
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
declare const annotationWrapperKey: unique symbol;
|
|
3
36
|
/**
|
|
4
37
|
* Annotations that can be passed to parsers during execution.
|
|
5
38
|
* Allows external packages to provide additional data that parsers can access
|
|
@@ -53,7 +86,7 @@ declare function getAnnotations(state: unknown): Annotations | undefined;
|
|
|
53
86
|
* @returns The target array, with annotations copied when available.
|
|
54
87
|
* @internal
|
|
55
88
|
*/
|
|
56
|
-
|
|
89
|
+
declare function annotateFreshArray<T>(source: unknown, target: readonly T[]): readonly T[];
|
|
57
90
|
/**
|
|
58
91
|
* Propagates annotations from one parser state to another.
|
|
59
92
|
*
|
|
@@ -85,7 +118,7 @@ declare function inheritAnnotations<T>(source: unknown, target: T): T;
|
|
|
85
118
|
* @returns `true` when the record has at least one own symbol key.
|
|
86
119
|
* @internal
|
|
87
120
|
*/
|
|
88
|
-
|
|
121
|
+
declare function hasMeaningfulAnnotations(annotations: Annotations | null | undefined): annotations is Annotations;
|
|
89
122
|
/**
|
|
90
123
|
* Injects annotations into parser state while preserving state shape.
|
|
91
124
|
*
|
|
@@ -111,7 +144,16 @@ declare function injectAnnotations<TState>(state: TState, annotations: Annotatio
|
|
|
111
144
|
* otherwise the original value.
|
|
112
145
|
* @internal
|
|
113
146
|
*/
|
|
114
|
-
|
|
147
|
+
declare function unwrapInjectedAnnotationWrapper<T>(value: T): T;
|
|
148
|
+
/**
|
|
149
|
+
* Returns whether the given value is an internal primitive-state annotation
|
|
150
|
+
* wrapper that was injected by Optique.
|
|
151
|
+
*
|
|
152
|
+
* @param value Value to check.
|
|
153
|
+
* @returns `true` if the value is an injected internal wrapper.
|
|
154
|
+
* @internal
|
|
155
|
+
*/
|
|
156
|
+
declare function isInjectedAnnotationWrapper(value: unknown): boolean;
|
|
115
157
|
/**
|
|
116
158
|
* Returns whether the given value is an injected annotation state wrapper.
|
|
117
159
|
*
|
|
@@ -137,4 +179,4 @@ declare function isInjectedAnnotationState(value: unknown): boolean;
|
|
|
137
179
|
*/
|
|
138
180
|
declare function unwrapInjectedAnnotationState<T>(value: T): T;
|
|
139
181
|
//#endregion
|
|
140
|
-
export { Annotations, ParseOptions, getAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, unwrapInjectedAnnotationState };
|
|
182
|
+
export { Annotations, ParseOptions, annotateFreshArray, annotationKey, annotationStateValueKey, annotationWrapperKey, firstPassAnnotationKey, getAnnotations, hasMeaningfulAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, isInjectedAnnotationWrapper, unwrapInjectedAnnotationState, unwrapInjectedAnnotationWrapper };
|
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
//#region src/internal/annotations.d.ts
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Runtime context extension system for Optique parsers.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the annotations system that allows external runtime data
|
|
6
|
+
* to be passed to parsers during the parsing session. This enables use cases like
|
|
7
|
+
* config file fallbacks, environment-based validation, and shared context.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
* @since 0.10.0
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Annotation key symbol for storing data in parser state.
|
|
14
|
+
* @since 0.10.0
|
|
15
|
+
*/
|
|
16
|
+
declare const annotationKey: unique symbol;
|
|
17
|
+
/**
|
|
18
|
+
* Internal marker attached during the first pass of `runWith()` so wrappers
|
|
19
|
+
* with side effects can defer work until two-pass contexts have resolved.
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
declare const firstPassAnnotationKey: unique symbol;
|
|
24
|
+
/**
|
|
25
|
+
* Internal key for preserving primitive parser state values when annotations
|
|
26
|
+
* are injected into non-object states.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
declare const annotationStateValueKey: unique symbol;
|
|
30
|
+
/**
|
|
31
|
+
* Internal marker key that indicates annotation wrapping was injected by
|
|
32
|
+
* Optique internals for non-object states.
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
declare const annotationWrapperKey: unique symbol;
|
|
3
36
|
/**
|
|
4
37
|
* Annotations that can be passed to parsers during execution.
|
|
5
38
|
* Allows external packages to provide additional data that parsers can access
|
|
@@ -53,7 +86,7 @@ declare function getAnnotations(state: unknown): Annotations | undefined;
|
|
|
53
86
|
* @returns The target array, with annotations copied when available.
|
|
54
87
|
* @internal
|
|
55
88
|
*/
|
|
56
|
-
|
|
89
|
+
declare function annotateFreshArray<T>(source: unknown, target: readonly T[]): readonly T[];
|
|
57
90
|
/**
|
|
58
91
|
* Propagates annotations from one parser state to another.
|
|
59
92
|
*
|
|
@@ -85,7 +118,7 @@ declare function inheritAnnotations<T>(source: unknown, target: T): T;
|
|
|
85
118
|
* @returns `true` when the record has at least one own symbol key.
|
|
86
119
|
* @internal
|
|
87
120
|
*/
|
|
88
|
-
|
|
121
|
+
declare function hasMeaningfulAnnotations(annotations: Annotations | null | undefined): annotations is Annotations;
|
|
89
122
|
/**
|
|
90
123
|
* Injects annotations into parser state while preserving state shape.
|
|
91
124
|
*
|
|
@@ -111,7 +144,16 @@ declare function injectAnnotations<TState>(state: TState, annotations: Annotatio
|
|
|
111
144
|
* otherwise the original value.
|
|
112
145
|
* @internal
|
|
113
146
|
*/
|
|
114
|
-
|
|
147
|
+
declare function unwrapInjectedAnnotationWrapper<T>(value: T): T;
|
|
148
|
+
/**
|
|
149
|
+
* Returns whether the given value is an internal primitive-state annotation
|
|
150
|
+
* wrapper that was injected by Optique.
|
|
151
|
+
*
|
|
152
|
+
* @param value Value to check.
|
|
153
|
+
* @returns `true` if the value is an injected internal wrapper.
|
|
154
|
+
* @internal
|
|
155
|
+
*/
|
|
156
|
+
declare function isInjectedAnnotationWrapper(value: unknown): boolean;
|
|
115
157
|
/**
|
|
116
158
|
* Returns whether the given value is an injected annotation state wrapper.
|
|
117
159
|
*
|
|
@@ -137,4 +179,4 @@ declare function isInjectedAnnotationState(value: unknown): boolean;
|
|
|
137
179
|
*/
|
|
138
180
|
declare function unwrapInjectedAnnotationState<T>(value: T): T;
|
|
139
181
|
//#endregion
|
|
140
|
-
export { Annotations, ParseOptions, getAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, unwrapInjectedAnnotationState };
|
|
182
|
+
export { Annotations, ParseOptions, annotateFreshArray, annotationKey, annotationStateValueKey, annotationWrapperKey, firstPassAnnotationKey, getAnnotations, hasMeaningfulAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, isInjectedAnnotationWrapper, unwrapInjectedAnnotationState, unwrapInjectedAnnotationWrapper };
|
|
@@ -303,4 +303,4 @@ function unwrapInjectedAnnotationState(value) {
|
|
|
303
303
|
}
|
|
304
304
|
|
|
305
305
|
//#endregion
|
|
306
|
-
export { annotateFreshArray, annotationKey, getAnnotations, hasMeaningfulAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, isInjectedAnnotationWrapper, unwrapInjectedAnnotationState, unwrapInjectedAnnotationWrapper };
|
|
306
|
+
export { annotateFreshArray, annotationKey, annotationStateValueKey, annotationWrapperKey, firstPassAnnotationKey, getAnnotations, hasMeaningfulAnnotations, inheritAnnotations, injectAnnotations, isInjectedAnnotationState, isInjectedAnnotationWrapper, unwrapInjectedAnnotationState, unwrapInjectedAnnotationWrapper };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
//#region src/internal/command-alias.ts
|
|
3
|
+
/**
|
|
4
|
+
* Internal key used to bypass duplicate leading command name validation when
|
|
5
|
+
* composing built-in meta commands with user parsers.
|
|
6
|
+
*/
|
|
7
|
+
const allowDuplicateLeadingCommandNamesKey = Symbol("allowDuplicateLeadingCommandNames");
|
|
8
|
+
/**
|
|
9
|
+
* Internal command() option key for aliases that are accepted by parsing but
|
|
10
|
+
* omitted from completion and typo-suggestion display.
|
|
11
|
+
*/
|
|
12
|
+
const hiddenCommandAliasesKey = Symbol("hiddenCommandAliases");
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
exports.allowDuplicateLeadingCommandNamesKey = allowDuplicateLeadingCommandNamesKey;
|
|
16
|
+
exports.hiddenCommandAliasesKey = hiddenCommandAliasesKey;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region src/internal/command-alias.ts
|
|
2
|
+
/**
|
|
3
|
+
* Internal key used to bypass duplicate leading command name validation when
|
|
4
|
+
* composing built-in meta commands with user parsers.
|
|
5
|
+
*/
|
|
6
|
+
const allowDuplicateLeadingCommandNamesKey = Symbol("allowDuplicateLeadingCommandNames");
|
|
7
|
+
/**
|
|
8
|
+
* Internal command() option key for aliases that are accepted by parsing but
|
|
9
|
+
* omitted from completion and typo-suggestion display.
|
|
10
|
+
*/
|
|
11
|
+
const hiddenCommandAliasesKey = Symbol("hiddenCommandAliases");
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
export { allowDuplicateLeadingCommandNamesKey, hiddenCommandAliasesKey };
|