@jsprismarine/brigadier 0.2.1 → 0.3.0
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/CHANGELOG.md +29 -0
- package/LICENSE +21 -21
- package/README.md +85 -81
- package/dist/CommandSyntaxException-BKBHJvxr.cjs +173 -0
- package/dist/CommandSyntaxException-Dz8Qlq9d.js +168 -0
- package/dist/LiteralArgumentBuilder-2hpX2C86.js +121 -0
- package/dist/LiteralArgumentBuilder-s6PUMmST.cjs +125 -0
- package/dist/RequiredArgumentBuilder-D105occO.js +144 -0
- package/dist/RequiredArgumentBuilder-DMJ4kl0u.cjs +148 -0
- package/dist/index.cjs.js +63 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +31 -0
- package/dist/lib/AmbiguityConsumer.cjs.js +3 -0
- package/dist/lib/AmbiguityConsumer.d.ts +6 -0
- package/dist/lib/AmbiguityConsumer.d.ts.map +1 -0
- package/dist/lib/AmbiguityConsumer.es.js +2 -0
- package/dist/lib/Command.cjs.js +3 -0
- package/dist/lib/Command.d.ts +6 -0
- package/dist/lib/Command.d.ts.map +1 -0
- package/dist/lib/Command.es.js +2 -0
- package/dist/lib/CommandDispatcher.cjs.js +369 -0
- package/dist/lib/CommandDispatcher.d.ts +31 -0
- package/dist/lib/CommandDispatcher.d.ts.map +1 -0
- package/dist/lib/CommandDispatcher.es.js +365 -0
- package/dist/lib/ImmutableStringReader.cjs.js +3 -0
- package/dist/lib/ImmutableStringReader.d.ts +13 -0
- package/dist/lib/ImmutableStringReader.d.ts.map +1 -0
- package/dist/lib/ImmutableStringReader.es.js +2 -0
- package/dist/lib/LiteralMessage.cjs.js +19 -0
- package/dist/lib/LiteralMessage.d.ts +9 -0
- package/dist/lib/LiteralMessage.d.ts.map +1 -0
- package/dist/lib/LiteralMessage.es.js +15 -0
- package/dist/lib/Message.cjs.js +3 -0
- package/dist/lib/Message.d.ts +4 -0
- package/dist/lib/Message.d.ts.map +1 -0
- package/dist/lib/Message.es.js +2 -0
- package/dist/lib/ParseResults.cjs.js +30 -0
- package/dist/lib/ParseResults.d.ts +15 -0
- package/dist/lib/ParseResults.d.ts.map +1 -0
- package/dist/lib/ParseResults.es.js +26 -0
- package/dist/lib/Predicate.cjs.js +3 -0
- package/dist/lib/Predicate.d.ts +4 -0
- package/dist/lib/Predicate.d.ts.map +1 -0
- package/dist/lib/Predicate.es.js +2 -0
- package/dist/lib/RedirectModifier.cjs.js +3 -0
- package/dist/lib/RedirectModifier.d.ts +6 -0
- package/dist/lib/RedirectModifier.d.ts.map +1 -0
- package/dist/lib/RedirectModifier.es.js +2 -0
- package/dist/lib/ResultConsumer.cjs.js +3 -0
- package/dist/lib/ResultConsumer.d.ts +6 -0
- package/dist/lib/ResultConsumer.d.ts.map +1 -0
- package/dist/lib/ResultConsumer.es.js +2 -0
- package/dist/lib/SingleRedirectModifier.cjs.js +3 -0
- package/dist/lib/SingleRedirectModifier.d.ts +6 -0
- package/dist/lib/SingleRedirectModifier.d.ts.map +1 -0
- package/dist/lib/SingleRedirectModifier.es.js +2 -0
- package/dist/lib/StringReader.cjs.js +164 -0
- package/dist/lib/StringReader.d.ts +29 -0
- package/dist/lib/StringReader.d.ts.map +1 -0
- package/dist/lib/StringReader.es.js +160 -0
- package/dist/lib/arguments/ArgumentType.cjs.js +23 -0
- package/dist/lib/arguments/ArgumentType.d.ts +23 -0
- package/dist/lib/arguments/ArgumentType.d.ts.map +1 -0
- package/dist/lib/arguments/ArgumentType.es.js +19 -0
- package/dist/lib/arguments/BoolArgumentType.cjs.js +33 -0
- package/dist/lib/arguments/BoolArgumentType.d.ts +15 -0
- package/dist/lib/arguments/BoolArgumentType.d.ts.map +1 -0
- package/dist/lib/arguments/BoolArgumentType.es.js +29 -0
- package/dist/lib/arguments/FloatArgumentType.cjs.js +71 -0
- package/dist/lib/arguments/FloatArgumentType.d.ts +18 -0
- package/dist/lib/arguments/FloatArgumentType.d.ts.map +1 -0
- package/dist/lib/arguments/FloatArgumentType.es.js +67 -0
- package/dist/lib/arguments/IntegerArgumentType.cjs.js +71 -0
- package/dist/lib/arguments/IntegerArgumentType.d.ts +18 -0
- package/dist/lib/arguments/IntegerArgumentType.d.ts.map +1 -0
- package/dist/lib/arguments/IntegerArgumentType.es.js +67 -0
- package/dist/lib/arguments/StringArgumentType.cjs.js +73 -0
- package/dist/lib/arguments/StringArgumentType.d.ts +23 -0
- package/dist/lib/arguments/StringArgumentType.d.ts.map +1 -0
- package/dist/lib/arguments/StringArgumentType.es.js +68 -0
- package/dist/lib/builder/ArgumentBuilder.cjs.js +72 -0
- package/dist/lib/builder/ArgumentBuilder.d.ts +30 -0
- package/dist/lib/builder/ArgumentBuilder.d.ts.map +1 -0
- package/dist/lib/builder/ArgumentBuilder.es.js +68 -0
- package/dist/lib/builder/LiteralArgumentBuilder.cjs.js +20 -0
- package/dist/lib/builder/LiteralArgumentBuilder.d.ts +13 -0
- package/dist/lib/builder/LiteralArgumentBuilder.d.ts.map +1 -0
- package/dist/lib/builder/LiteralArgumentBuilder.es.js +11 -0
- package/dist/lib/builder/RequiredArgumentBuilder.cjs.js +21 -0
- package/dist/lib/builder/RequiredArgumentBuilder.d.ts +20 -0
- package/dist/lib/builder/RequiredArgumentBuilder.d.ts.map +1 -0
- package/dist/lib/builder/RequiredArgumentBuilder.es.js +12 -0
- package/dist/lib/context/CommandContext.cjs.js +117 -0
- package/dist/lib/context/CommandContext.d.ts +35 -0
- package/dist/lib/context/CommandContext.d.ts.map +1 -0
- package/dist/lib/context/CommandContext.es.js +113 -0
- package/dist/lib/context/CommandContextBuilder.cjs.js +142 -0
- package/dist/lib/context/CommandContextBuilder.d.ts +40 -0
- package/dist/lib/context/CommandContextBuilder.d.ts.map +1 -0
- package/dist/lib/context/CommandContextBuilder.es.js +138 -0
- package/dist/lib/context/ParsedArgument.cjs.js +30 -0
- package/dist/lib/context/ParsedArgument.d.ts +11 -0
- package/dist/lib/context/ParsedArgument.d.ts.map +1 -0
- package/dist/lib/context/ParsedArgument.es.js +26 -0
- package/dist/lib/context/ParsedCommandNode.cjs.js +32 -0
- package/dist/lib/context/ParsedCommandNode.d.ts +13 -0
- package/dist/lib/context/ParsedCommandNode.d.ts.map +1 -0
- package/dist/lib/context/ParsedCommandNode.es.js +28 -0
- package/dist/lib/context/StringRange.cjs.js +52 -0
- package/dist/lib/context/StringRange.d.ts +18 -0
- package/dist/lib/context/StringRange.d.ts.map +1 -0
- package/dist/lib/context/StringRange.es.js +48 -0
- package/dist/lib/context/SuggestionContext.cjs.js +15 -0
- package/dist/lib/context/SuggestionContext.d.ts +8 -0
- package/dist/lib/context/SuggestionContext.d.ts.map +1 -0
- package/dist/lib/context/SuggestionContext.es.js +11 -0
- package/dist/lib/exceptions/BuiltInExceptionProvider.cjs.js +3 -0
- package/dist/lib/exceptions/BuiltInExceptionProvider.d.ts +25 -0
- package/dist/lib/exceptions/BuiltInExceptionProvider.d.ts.map +1 -0
- package/dist/lib/exceptions/BuiltInExceptionProvider.es.js +2 -0
- package/dist/lib/exceptions/BuiltInExceptions.cjs.js +11 -0
- package/dist/lib/exceptions/BuiltInExceptions.d.ts +45 -0
- package/dist/lib/exceptions/BuiltInExceptions.d.ts.map +1 -0
- package/dist/lib/exceptions/BuiltInExceptions.es.js +3 -0
- package/dist/lib/exceptions/CommandExceptionType.cjs.js +3 -0
- package/dist/lib/exceptions/CommandExceptionType.d.ts +3 -0
- package/dist/lib/exceptions/CommandExceptionType.d.ts.map +1 -0
- package/dist/lib/exceptions/CommandExceptionType.es.js +2 -0
- package/dist/lib/exceptions/CommandSyntaxException.cjs.js +11 -0
- package/dist/lib/exceptions/CommandSyntaxException.d.ts +21 -0
- package/dist/lib/exceptions/CommandSyntaxException.d.ts.map +1 -0
- package/dist/lib/exceptions/CommandSyntaxException.es.js +3 -0
- package/dist/lib/exceptions/DynamicCommandExceptionType.cjs.js +11 -0
- package/dist/lib/exceptions/DynamicCommandExceptionType.d.ts +12 -0
- package/dist/lib/exceptions/DynamicCommandExceptionType.d.ts.map +1 -0
- package/dist/lib/exceptions/DynamicCommandExceptionType.es.js +3 -0
- package/dist/lib/exceptions/SimpleCommandExceptionType.cjs.js +11 -0
- package/dist/lib/exceptions/SimpleCommandExceptionType.d.ts +13 -0
- package/dist/lib/exceptions/SimpleCommandExceptionType.d.ts.map +1 -0
- package/dist/lib/exceptions/SimpleCommandExceptionType.es.js +3 -0
- package/dist/lib/suggestion/IntegerSuggestion.cjs.js +39 -0
- package/dist/lib/suggestion/IntegerSuggestion.d.ts +14 -0
- package/dist/lib/suggestion/IntegerSuggestion.d.ts.map +1 -0
- package/dist/lib/suggestion/IntegerSuggestion.es.js +35 -0
- package/dist/lib/suggestion/Suggestion.cjs.js +72 -0
- package/dist/lib/suggestion/Suggestion.d.ts +19 -0
- package/dist/lib/suggestion/Suggestion.d.ts.map +1 -0
- package/dist/lib/suggestion/Suggestion.es.js +68 -0
- package/dist/lib/suggestion/SuggestionProvider.cjs.js +3 -0
- package/dist/lib/suggestion/SuggestionProvider.d.ts +8 -0
- package/dist/lib/suggestion/SuggestionProvider.d.ts.map +1 -0
- package/dist/lib/suggestion/SuggestionProvider.es.js +2 -0
- package/dist/lib/suggestion/Suggestions.cjs.js +71 -0
- package/dist/lib/suggestion/Suggestions.d.ts +18 -0
- package/dist/lib/suggestion/Suggestions.d.ts.map +1 -0
- package/dist/lib/suggestion/Suggestions.es.js +67 -0
- package/dist/lib/suggestion/SuggestionsBuilder.cjs.js +59 -0
- package/dist/lib/suggestion/SuggestionsBuilder.d.ts +20 -0
- package/dist/lib/suggestion/SuggestionsBuilder.d.ts.map +1 -0
- package/dist/lib/suggestion/SuggestionsBuilder.es.js +55 -0
- package/dist/lib/tree/ArgumentCommandNode.cjs.js +20 -0
- package/dist/lib/tree/ArgumentCommandNode.d.ts +33 -0
- package/dist/lib/tree/ArgumentCommandNode.d.ts.map +1 -0
- package/dist/lib/tree/ArgumentCommandNode.es.js +12 -0
- package/dist/lib/tree/CommandNode.cjs.js +133 -0
- package/dist/lib/tree/CommandNode.d.ts +47 -0
- package/dist/lib/tree/CommandNode.d.ts.map +1 -0
- package/dist/lib/tree/CommandNode.es.js +129 -0
- package/dist/lib/tree/LiteralCommandNode.cjs.js +19 -0
- package/dist/lib/tree/LiteralCommandNode.d.ts +29 -0
- package/dist/lib/tree/LiteralCommandNode.d.ts.map +1 -0
- package/dist/lib/tree/LiteralCommandNode.es.js +11 -0
- package/dist/lib/tree/RootCommandNode.cjs.js +59 -0
- package/dist/lib/tree/RootCommandNode.d.ts +23 -0
- package/dist/lib/tree/RootCommandNode.d.ts.map +1 -0
- package/dist/lib/tree/RootCommandNode.es.js +55 -0
- package/dist/lib/util/isEqual.cjs.js +59 -0
- package/dist/lib/util/isEqual.d.ts +2 -0
- package/dist/lib/util/isEqual.d.ts.map +1 -0
- package/dist/lib/util/isEqual.es.js +55 -0
- package/package.json +40 -41
- package/dist/index.js +0 -82
- package/dist/index.js.map +0 -1
- package/dist/lib/AmbiguityConsumer.js +0 -3
- package/dist/lib/AmbiguityConsumer.js.map +0 -1
- package/dist/lib/Command.js +0 -3
- package/dist/lib/Command.js.map +0 -1
- package/dist/lib/CommandDispatcher.js +0 -360
- package/dist/lib/CommandDispatcher.js.map +0 -1
- package/dist/lib/ImmutableStringReader.js +0 -3
- package/dist/lib/ImmutableStringReader.js.map +0 -1
- package/dist/lib/LiteralMessage.js +0 -15
- package/dist/lib/LiteralMessage.js.map +0 -1
- package/dist/lib/Message.js +0 -3
- package/dist/lib/Message.js.map +0 -1
- package/dist/lib/ParseResults.js +0 -24
- package/dist/lib/ParseResults.js.map +0 -1
- package/dist/lib/Predicate.js +0 -3
- package/dist/lib/Predicate.js.map +0 -1
- package/dist/lib/RedirectModifier.js +0 -3
- package/dist/lib/RedirectModifier.js.map +0 -1
- package/dist/lib/ResultConsumer.js +0 -3
- package/dist/lib/ResultConsumer.js.map +0 -1
- package/dist/lib/SingleRedirectModifier.js +0 -3
- package/dist/lib/SingleRedirectModifier.js.map +0 -1
- package/dist/lib/StringReader.js +0 -176
- package/dist/lib/StringReader.js.map +0 -1
- package/dist/lib/arguments/ArgumentType.js +0 -19
- package/dist/lib/arguments/ArgumentType.js.map +0 -1
- package/dist/lib/arguments/BoolArgumentType.js +0 -30
- package/dist/lib/arguments/BoolArgumentType.js.map +0 -1
- package/dist/lib/arguments/FloatArgumentType.js +0 -61
- package/dist/lib/arguments/FloatArgumentType.js.map +0 -1
- package/dist/lib/arguments/IntegerArgumentType.js +0 -61
- package/dist/lib/arguments/IntegerArgumentType.js.map +0 -1
- package/dist/lib/arguments/StringArgumentType.js +0 -71
- package/dist/lib/arguments/StringArgumentType.js.map +0 -1
- package/dist/lib/builder/ArgumentBuilder.js +0 -66
- package/dist/lib/builder/ArgumentBuilder.js.map +0 -1
- package/dist/lib/builder/LiteralArgumentBuilder.js +0 -33
- package/dist/lib/builder/LiteralArgumentBuilder.js.map +0 -1
- package/dist/lib/builder/RequiredArgumentBuilder.js +0 -44
- package/dist/lib/builder/RequiredArgumentBuilder.js.map +0 -1
- package/dist/lib/context/CommandContext.js +0 -96
- package/dist/lib/context/CommandContext.js.map +0 -1
- package/dist/lib/context/CommandContextBuilder.js +0 -120
- package/dist/lib/context/CommandContextBuilder.js.map +0 -1
- package/dist/lib/context/ParsedArgument.js +0 -27
- package/dist/lib/context/ParsedArgument.js.map +0 -1
- package/dist/lib/context/ParsedCommandNode.js +0 -27
- package/dist/lib/context/ParsedCommandNode.js.map +0 -1
- package/dist/lib/context/StringRange.js +0 -47
- package/dist/lib/context/StringRange.js.map +0 -1
- package/dist/lib/context/SuggestionContext.js +0 -10
- package/dist/lib/context/SuggestionContext.js.map +0 -1
- package/dist/lib/exceptions/BuiltInExceptionProvider.js +0 -3
- package/dist/lib/exceptions/BuiltInExceptionProvider.js.map +0 -1
- package/dist/lib/exceptions/BuiltInExceptions.js +0 -88
- package/dist/lib/exceptions/BuiltInExceptions.js.map +0 -1
- package/dist/lib/exceptions/CommandExceptionType.js +0 -3
- package/dist/lib/exceptions/CommandExceptionType.js.map +0 -1
- package/dist/lib/exceptions/CommandSyntaxException.js +0 -57
- package/dist/lib/exceptions/CommandSyntaxException.js.map +0 -1
- package/dist/lib/exceptions/DynamicCommandExceptionType.js +0 -20
- package/dist/lib/exceptions/DynamicCommandExceptionType.js.map +0 -1
- package/dist/lib/exceptions/SimpleCommandExceptionType.js +0 -23
- package/dist/lib/exceptions/SimpleCommandExceptionType.js.map +0 -1
- package/dist/lib/suggestion/IntegerSuggestion.js +0 -41
- package/dist/lib/suggestion/IntegerSuggestion.js.map +0 -1
- package/dist/lib/suggestion/Suggestion.js +0 -72
- package/dist/lib/suggestion/Suggestion.js.map +0 -1
- package/dist/lib/suggestion/SuggestionProvider.js +0 -3
- package/dist/lib/suggestion/SuggestionProvider.js.map +0 -1
- package/dist/lib/suggestion/Suggestions.js +0 -71
- package/dist/lib/suggestion/Suggestions.js.map +0 -1
- package/dist/lib/suggestion/SuggestionsBuilder.js +0 -54
- package/dist/lib/suggestion/SuggestionsBuilder.js.map +0 -1
- package/dist/lib/tree/ArgumentCommandNode.js +0 -97
- package/dist/lib/tree/ArgumentCommandNode.js.map +0 -1
- package/dist/lib/tree/CommandNode.js +0 -134
- package/dist/lib/tree/CommandNode.js.map +0 -1
- package/dist/lib/tree/LiteralCommandNode.js +0 -93
- package/dist/lib/tree/LiteralCommandNode.js.map +0 -1
- package/dist/lib/tree/RootCommandNode.js +0 -50
- package/dist/lib/tree/RootCommandNode.js.map +0 -1
- package/dist/lib/util/isEqual.js +0 -57
- package/dist/lib/util/isEqual.js.map +0 -1
- package/index.js +0 -1
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import CommandNode from './lib/tree/CommandNode.es.js';
|
|
2
|
+
import ParsedArgument from './lib/context/ParsedArgument.es.js';
|
|
3
|
+
import ArgumentBuilder from './lib/builder/ArgumentBuilder.es.js';
|
|
4
|
+
import StringReader from './lib/StringReader.es.js';
|
|
5
|
+
import Suggestions from './lib/suggestion/Suggestions.es.js';
|
|
6
|
+
import isEqual from './lib/util/isEqual.es.js';
|
|
7
|
+
|
|
8
|
+
const USAGE_ARGUMENT_OPEN = "<";
|
|
9
|
+
const USAGE_ARGUMENT_CLOSE = ">";
|
|
10
|
+
class ArgumentCommandNode extends CommandNode {
|
|
11
|
+
name;
|
|
12
|
+
type;
|
|
13
|
+
customSuggestions;
|
|
14
|
+
constructor(name, type, command, requirement, redirect, modifier, forks, customSuggestions) {
|
|
15
|
+
super(command, requirement, redirect, modifier, forks);
|
|
16
|
+
this.name = name;
|
|
17
|
+
this.type = type;
|
|
18
|
+
this.customSuggestions = customSuggestions;
|
|
19
|
+
}
|
|
20
|
+
getNodeType() {
|
|
21
|
+
return "argument";
|
|
22
|
+
}
|
|
23
|
+
getType() {
|
|
24
|
+
return this.type;
|
|
25
|
+
}
|
|
26
|
+
getName() {
|
|
27
|
+
return this.name;
|
|
28
|
+
}
|
|
29
|
+
getUsageText() {
|
|
30
|
+
return USAGE_ARGUMENT_OPEN + this.name + USAGE_ARGUMENT_CLOSE;
|
|
31
|
+
}
|
|
32
|
+
getCustomSuggestions() {
|
|
33
|
+
return this.customSuggestions;
|
|
34
|
+
}
|
|
35
|
+
parse(reader, contextBuilder) {
|
|
36
|
+
let start = reader.getCursor();
|
|
37
|
+
let result = this.type.parse(reader, contextBuilder);
|
|
38
|
+
let parsed = new ParsedArgument(start, reader.getCursor(), result);
|
|
39
|
+
contextBuilder.withArgument(this.name, parsed);
|
|
40
|
+
contextBuilder.withNode(this, parsed.getRange());
|
|
41
|
+
}
|
|
42
|
+
listSuggestions(context, builder) {
|
|
43
|
+
if (this.customSuggestions == null) {
|
|
44
|
+
if (typeof this.type.listSuggestions === "function")
|
|
45
|
+
return this.type.listSuggestions(context, builder);
|
|
46
|
+
else
|
|
47
|
+
return Suggestions.empty();
|
|
48
|
+
} else {
|
|
49
|
+
return this.customSuggestions.getSuggestions(context, builder);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
createBuilder() {
|
|
53
|
+
let builder = RequiredArgumentBuilder.argument(
|
|
54
|
+
this.name,
|
|
55
|
+
this.type
|
|
56
|
+
);
|
|
57
|
+
builder.requires(this.getRequirement());
|
|
58
|
+
builder.forward(this.getRedirect(), this.getRedirectModifier(), this.isFork());
|
|
59
|
+
builder.suggests(this.customSuggestions);
|
|
60
|
+
if (this.getCommand()) {
|
|
61
|
+
builder.executes(this.getCommand());
|
|
62
|
+
}
|
|
63
|
+
return builder;
|
|
64
|
+
}
|
|
65
|
+
isValidInput(input, context) {
|
|
66
|
+
try {
|
|
67
|
+
let reader = new StringReader(input);
|
|
68
|
+
this.type.parse(reader, context);
|
|
69
|
+
return !reader.canRead() || reader.peek() == " ";
|
|
70
|
+
} catch (ignored) {
|
|
71
|
+
}
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
equals(o) {
|
|
75
|
+
if (this === o)
|
|
76
|
+
return true;
|
|
77
|
+
if (!(o instanceof ArgumentCommandNode))
|
|
78
|
+
return false;
|
|
79
|
+
if (!(this.name === o.name))
|
|
80
|
+
return false;
|
|
81
|
+
if (!isEqual(this.type, o.type))
|
|
82
|
+
return false;
|
|
83
|
+
return super.equals(o);
|
|
84
|
+
}
|
|
85
|
+
getSortedKey() {
|
|
86
|
+
return this.name;
|
|
87
|
+
}
|
|
88
|
+
getExamples() {
|
|
89
|
+
return typeof this.type.getExamples === "function" ? this.type.getExamples() : [];
|
|
90
|
+
}
|
|
91
|
+
toString() {
|
|
92
|
+
return "<argument " + this.name + ":" + this.type + ">";
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
class RequiredArgumentBuilder extends ArgumentBuilder {
|
|
97
|
+
name;
|
|
98
|
+
type;
|
|
99
|
+
suggestionsProvider;
|
|
100
|
+
constructor(name, type) {
|
|
101
|
+
super();
|
|
102
|
+
this.name = name;
|
|
103
|
+
this.type = type;
|
|
104
|
+
}
|
|
105
|
+
static argument(name, type) {
|
|
106
|
+
return new RequiredArgumentBuilder(name, type);
|
|
107
|
+
}
|
|
108
|
+
suggests(provider) {
|
|
109
|
+
this.suggestionsProvider = provider;
|
|
110
|
+
return this.getThis();
|
|
111
|
+
}
|
|
112
|
+
getSuggestionsProvider() {
|
|
113
|
+
return this.suggestionsProvider;
|
|
114
|
+
}
|
|
115
|
+
getThis() {
|
|
116
|
+
return this;
|
|
117
|
+
}
|
|
118
|
+
getType() {
|
|
119
|
+
return this.type;
|
|
120
|
+
}
|
|
121
|
+
getName() {
|
|
122
|
+
return this.name;
|
|
123
|
+
}
|
|
124
|
+
build() {
|
|
125
|
+
let result = new ArgumentCommandNode(
|
|
126
|
+
this.getName(),
|
|
127
|
+
this.getType(),
|
|
128
|
+
this.getCommand(),
|
|
129
|
+
this.getRequirement(),
|
|
130
|
+
this.getRedirect(),
|
|
131
|
+
this.getRedirectModifier(),
|
|
132
|
+
this.isFork(),
|
|
133
|
+
this.getSuggestionsProvider()
|
|
134
|
+
);
|
|
135
|
+
for (let arg of this.getArguments()) {
|
|
136
|
+
result.addChild(arg);
|
|
137
|
+
}
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
const argument = RequiredArgumentBuilder.argument;
|
|
142
|
+
|
|
143
|
+
export { ArgumentCommandNode as A, RequiredArgumentBuilder as R, argument as a };
|
|
144
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXItRDEwNW9jY08uanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9saWIvdHJlZS9Bcmd1bWVudENvbW1hbmROb2RlLnRzIiwiLi4vc3JjL2xpYi9idWlsZGVyL1JlcXVpcmVkQXJndW1lbnRCdWlsZGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIEFyZ3VtZW50VHlwZSBmcm9tICcuLi9hcmd1bWVudHMvQXJndW1lbnRUeXBlJztcbmltcG9ydCB0eXBlIENvbW1hbmQgZnJvbSAnLi4vQ29tbWFuZCc7XG5pbXBvcnQgdHlwZSBDb21tYW5kQ29udGV4dCBmcm9tICcuLi9jb250ZXh0L0NvbW1hbmRDb250ZXh0JztcbmltcG9ydCB0eXBlIENvbW1hbmRDb250ZXh0QnVpbGRlciBmcm9tICcuLi9jb250ZXh0L0NvbW1hbmRDb250ZXh0QnVpbGRlcic7XG5pbXBvcnQgQ29tbWFuZE5vZGUgZnJvbSAnLi9Db21tYW5kTm9kZSc7XG5pbXBvcnQgUGFyc2VkQXJndW1lbnQgZnJvbSAnLi4vY29udGV4dC9QYXJzZWRBcmd1bWVudCc7XG5pbXBvcnQgdHlwZSBQcmVkaWNhdGUgZnJvbSAnLi4vUHJlZGljYXRlJztcbmltcG9ydCB0eXBlIFJlZGlyZWN0TW9kaWZpZXIgZnJvbSAnLi4vUmVkaXJlY3RNb2RpZmllcic7XG5pbXBvcnQgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXIgZnJvbSAnLi4vYnVpbGRlci9SZXF1aXJlZEFyZ3VtZW50QnVpbGRlcic7XG5pbXBvcnQgU3RyaW5nUmVhZGVyIGZyb20gJy4uL1N0cmluZ1JlYWRlcic7XG5pbXBvcnQgdHlwZSBTdWdnZXN0aW9uUHJvdmlkZXIgZnJvbSAnLi4vc3VnZ2VzdGlvbi9TdWdnZXN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IFN1Z2dlc3Rpb25zIGZyb20gJy4uL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvbnMnO1xuaW1wb3J0IHR5cGUgU3VnZ2VzdGlvbnNCdWlsZGVyIGZyb20gJy4uL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvbnNCdWlsZGVyJztcbmltcG9ydCBpc0VxdWFsIGZyb20gJy4uL3V0aWwvaXNFcXVhbCc7XG5cbmNvbnN0IFVTQUdFX0FSR1VNRU5UX09QRU46IHN0cmluZyA9ICc8JztcbmNvbnN0IFVTQUdFX0FSR1VNRU5UX0NMT1NFOiBzdHJpbmcgPSAnPic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFyZ3VtZW50Q29tbWFuZE5vZGU8UywgVD4gZXh0ZW5kcyBDb21tYW5kTm9kZTxTPiB7XG4gICAgcHJpdmF0ZSBuYW1lOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSB0eXBlOiBBcmd1bWVudFR5cGU8VD47XG4gICAgcHJpdmF0ZSBjdXN0b21TdWdnZXN0aW9uczogU3VnZ2VzdGlvblByb3ZpZGVyPFM+O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgIHR5cGU6IEFyZ3VtZW50VHlwZTxUPixcbiAgICAgICAgY29tbWFuZDogQ29tbWFuZDxTPixcbiAgICAgICAgcmVxdWlyZW1lbnQ6IFByZWRpY2F0ZTxTPixcbiAgICAgICAgcmVkaXJlY3Q6IENvbW1hbmROb2RlPFM+LFxuICAgICAgICBtb2RpZmllcjogUmVkaXJlY3RNb2RpZmllcjxTPiB8IG51bGwsXG4gICAgICAgIGZvcmtzOiBib29sZWFuLFxuICAgICAgICBjdXN0b21TdWdnZXN0aW9uczogU3VnZ2VzdGlvblByb3ZpZGVyPFM+XG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbW1hbmQsIHJlcXVpcmVtZW50LCByZWRpcmVjdCwgbW9kaWZpZXIsIGZvcmtzKTtcbiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICAgICAgdGhpcy5jdXN0b21TdWdnZXN0aW9ucyA9IGN1c3RvbVN1Z2dlc3Rpb25zO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXROb2RlVHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ2FyZ3VtZW50JztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VHlwZSgpOiBBcmd1bWVudFR5cGU8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy50eXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXROYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFVzYWdlVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gVVNBR0VfQVJHVU1FTlRfT1BFTiArIHRoaXMubmFtZSArIFVTQUdFX0FSR1VNRU5UX0NMT1NFO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDdXN0b21TdWdnZXN0aW9ucygpOiBTdWdnZXN0aW9uUHJvdmlkZXI8Uz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXN0b21TdWdnZXN0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgcGFyc2UocmVhZGVyOiBTdHJpbmdSZWFkZXIsIGNvbnRleHRCdWlsZGVyOiBDb21tYW5kQ29udGV4dEJ1aWxkZXI8Uz4pIHtcbiAgICAgICAgbGV0IHN0YXJ0ID0gcmVhZGVyLmdldEN1cnNvcigpO1xuICAgICAgICBsZXQgcmVzdWx0OiBUID0gdGhpcy50eXBlLnBhcnNlKHJlYWRlciwgY29udGV4dEJ1aWxkZXIgYXMgYW55KTtcbiAgICAgICAgbGV0IHBhcnNlZDogUGFyc2VkQXJndW1lbnQ8UywgVD4gPSBuZXcgUGFyc2VkQXJndW1lbnQoc3RhcnQsIHJlYWRlci5nZXRDdXJzb3IoKSwgcmVzdWx0KTtcbiAgICAgICAgY29udGV4dEJ1aWxkZXIud2l0aEFyZ3VtZW50KHRoaXMubmFtZSwgcGFyc2VkKTtcbiAgICAgICAgY29udGV4dEJ1aWxkZXIud2l0aE5vZGUodGhpcywgcGFyc2VkLmdldFJhbmdlKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsaXN0U3VnZ2VzdGlvbnMoY29udGV4dDogQ29tbWFuZENvbnRleHQ8Uz4sIGJ1aWxkZXI6IFN1Z2dlc3Rpb25zQnVpbGRlcik6IFByb21pc2U8U3VnZ2VzdGlvbnM+IHtcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tU3VnZ2VzdGlvbnMgPT0gbnVsbCkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnR5cGUubGlzdFN1Z2dlc3Rpb25zID09PSAnZnVuY3Rpb24nKSByZXR1cm4gdGhpcy50eXBlLmxpc3RTdWdnZXN0aW9ucyhjb250ZXh0LCBidWlsZGVyKTtcbiAgICAgICAgICAgIGVsc2UgcmV0dXJuIFN1Z2dlc3Rpb25zLmVtcHR5KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jdXN0b21TdWdnZXN0aW9ucy5nZXRTdWdnZXN0aW9ucyhjb250ZXh0LCBidWlsZGVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjcmVhdGVCdWlsZGVyKCk6IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyPFMsIFQ+IHtcbiAgICAgICAgbGV0IGJ1aWxkZXI6IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyPFMsIFQ+ID0gUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXIuYXJndW1lbnQoXG4gICAgICAgICAgICB0aGlzLm5hbWUsXG4gICAgICAgICAgICB0aGlzLnR5cGVcbiAgICAgICAgKSBhcyBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPjtcbiAgICAgICAgYnVpbGRlci5yZXF1aXJlcyh0aGlzLmdldFJlcXVpcmVtZW50KCkpO1xuICAgICAgICBidWlsZGVyLmZvcndhcmQodGhpcy5nZXRSZWRpcmVjdCgpISwgdGhpcy5nZXRSZWRpcmVjdE1vZGlmaWVyKCksIHRoaXMuaXNGb3JrKCkpO1xuICAgICAgICBidWlsZGVyLnN1Z2dlc3RzKHRoaXMuY3VzdG9tU3VnZ2VzdGlvbnMpO1xuICAgICAgICBpZiAodGhpcy5nZXRDb21tYW5kKCkpIHtcbiAgICAgICAgICAgIGJ1aWxkZXIuZXhlY3V0ZXModGhpcy5nZXRDb21tYW5kKCkhKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBidWlsZGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1ZhbGlkSW5wdXQoaW5wdXQ6IHN0cmluZywgY29udGV4dDogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsZXQgcmVhZGVyOiBTdHJpbmdSZWFkZXIgPSBuZXcgU3RyaW5nUmVhZGVyKGlucHV0KTtcbiAgICAgICAgICAgIHRoaXMudHlwZS5wYXJzZShyZWFkZXIsIGNvbnRleHQpO1xuICAgICAgICAgICAgcmV0dXJuICFyZWFkZXIuY2FuUmVhZCgpIHx8IHJlYWRlci5wZWVrKCkgPT0gJyAnO1xuICAgICAgICB9IGNhdGNoIChpZ25vcmVkKSB7fVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZXF1YWxzKG86IG9iamVjdCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcyA9PT0gbykgcmV0dXJuIHRydWU7XG4gICAgICAgIGlmICghKG8gaW5zdGFuY2VvZiBBcmd1bWVudENvbW1hbmROb2RlKSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAgIGlmICghKHRoaXMubmFtZSA9PT0gby5uYW1lKSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICBpZiAoIWlzRXF1YWwodGhpcy50eXBlLCBvLnR5cGUpKSByZXR1cm4gZmFsc2U7XG5cbiAgICAgICAgcmV0dXJuIHN1cGVyLmVxdWFscyhvKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U29ydGVkS2V5KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEV4YW1wbGVzKCk6IEl0ZXJhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXMudHlwZS5nZXRFeGFtcGxlcyA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMudHlwZS5nZXRFeGFtcGxlcygpIDogW107XG4gICAgfVxuXG4gICAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnPGFyZ3VtZW50ICcgKyB0aGlzLm5hbWUgKyAnOicgKyB0aGlzLnR5cGUgKyAnPic7XG4gICAgfVxufVxuIiwiaW1wb3J0IEFyZ3VtZW50VHlwZSBmcm9tICcuLi9hcmd1bWVudHMvQXJndW1lbnRUeXBlJztcbmltcG9ydCBTdWdnZXN0aW9uUHJvdmlkZXIgZnJvbSAnLi4vc3VnZ2VzdGlvbi9TdWdnZXN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IEFyZ3VtZW50Q29tbWFuZE5vZGUgZnJvbSAnLi4vdHJlZS9Bcmd1bWVudENvbW1hbmROb2RlJztcbmltcG9ydCBBcmd1bWVudEJ1aWxkZXIgZnJvbSAnLi9Bcmd1bWVudEJ1aWxkZXInO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPiBleHRlbmRzIEFyZ3VtZW50QnVpbGRlcjxTLCBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPj4ge1xuICAgIHByaXZhdGUgbmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgdHlwZTogQXJndW1lbnRUeXBlPFQ+O1xuICAgIHByaXZhdGUgc3VnZ2VzdGlvbnNQcm92aWRlciE6IFN1Z2dlc3Rpb25Qcm92aWRlcjxTPjtcblxuICAgIHByaXZhdGUgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCB0eXBlOiBBcmd1bWVudFR5cGU8VD4pIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFyZ3VtZW50PFMsIFQ+KG5hbWU6IHN0cmluZywgdHlwZTogQXJndW1lbnRUeXBlPFQ+KSB7XG4gICAgICAgIHJldHVybiBuZXcgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXIobmFtZSwgdHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN1Z2dlc3RzKHByb3ZpZGVyOiBTdWdnZXN0aW9uUHJvdmlkZXI8Uz4pIHtcbiAgICAgICAgdGhpcy5zdWdnZXN0aW9uc1Byb3ZpZGVyID0gcHJvdmlkZXI7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFRoaXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U3VnZ2VzdGlvbnNQcm92aWRlcigpOiBTdWdnZXN0aW9uUHJvdmlkZXI8Uz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zdWdnZXN0aW9uc1Byb3ZpZGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUaGlzKCk6IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyPFMsIFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFR5cGUoKTogQXJndW1lbnRUeXBlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBidWlsZCgpOiBBcmd1bWVudENvbW1hbmROb2RlPFMsIFQ+IHtcbiAgICAgICAgbGV0IHJlc3VsdDogQXJndW1lbnRDb21tYW5kTm9kZTxTLCBUPiA9IG5ldyBBcmd1bWVudENvbW1hbmROb2RlKFxuICAgICAgICAgICAgdGhpcy5nZXROYW1lKCksXG4gICAgICAgICAgICB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0Q29tbWFuZCgpLFxuICAgICAgICAgICAgdGhpcy5nZXRSZXF1aXJlbWVudCgpLFxuICAgICAgICAgICAgdGhpcy5nZXRSZWRpcmVjdCgpLFxuICAgICAgICAgICAgdGhpcy5nZXRSZWRpcmVjdE1vZGlmaWVyKCksXG4gICAgICAgICAgICB0aGlzLmlzRm9yaygpLFxuICAgICAgICAgICAgdGhpcy5nZXRTdWdnZXN0aW9uc1Byb3ZpZGVyKClcbiAgICAgICAgKTtcbiAgICAgICAgZm9yIChsZXQgYXJnIG9mIHRoaXMuZ2V0QXJndW1lbnRzKCkpIHtcbiAgICAgICAgICAgIHJlc3VsdC5hZGRDaGlsZChhcmcpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgYXJndW1lbnQgPSBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlci5hcmd1bWVudDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBZUEsTUFBTSxtQkFBOEIsR0FBQSxHQUFBLENBQUE7QUFDcEMsTUFBTSxvQkFBK0IsR0FBQSxHQUFBLENBQUE7QUFFckMsTUFBcUIsNEJBQWtDLFdBQWUsQ0FBQTtBQUFBLEVBQzFELElBQUEsQ0FBQTtBQUFBLEVBQ0EsSUFBQSxDQUFBO0FBQUEsRUFDQSxpQkFBQSxDQUFBO0FBQUEsRUFFRCxXQUFBLENBQ0gsTUFDQSxJQUNBLEVBQUEsT0FBQSxFQUNBLGFBQ0EsUUFDQSxFQUFBLFFBQUEsRUFDQSxPQUNBLGlCQUNGLEVBQUE7QUFDRSxJQUFBLEtBQUEsQ0FBTSxPQUFTLEVBQUEsV0FBQSxFQUFhLFFBQVUsRUFBQSxRQUFBLEVBQVUsS0FBSyxDQUFBLENBQUE7QUFDckQsSUFBQSxJQUFBLENBQUssSUFBTyxHQUFBLElBQUEsQ0FBQTtBQUNaLElBQUEsSUFBQSxDQUFLLElBQU8sR0FBQSxJQUFBLENBQUE7QUFDWixJQUFBLElBQUEsQ0FBSyxpQkFBb0IsR0FBQSxpQkFBQSxDQUFBO0FBQUEsR0FDN0I7QUFBQSxFQUVPLFdBQXNCLEdBQUE7QUFDekIsSUFBTyxPQUFBLFVBQUEsQ0FBQTtBQUFBLEdBQ1g7QUFBQSxFQUVPLE9BQTJCLEdBQUE7QUFDOUIsSUFBQSxPQUFPLElBQUssQ0FBQSxJQUFBLENBQUE7QUFBQSxHQUNoQjtBQUFBLEVBRU8sT0FBa0IsR0FBQTtBQUNyQixJQUFBLE9BQU8sSUFBSyxDQUFBLElBQUEsQ0FBQTtBQUFBLEdBQ2hCO0FBQUEsRUFFTyxZQUF1QixHQUFBO0FBQzFCLElBQU8sT0FBQSxtQkFBQSxHQUFzQixLQUFLLElBQU8sR0FBQSxvQkFBQSxDQUFBO0FBQUEsR0FDN0M7QUFBQSxFQUVPLG9CQUE4QyxHQUFBO0FBQ2pELElB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
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const lib_tree_CommandNode = require('./lib/tree/CommandNode.cjs.js');
|
|
4
|
+
const lib_context_ParsedArgument = require('./lib/context/ParsedArgument.cjs.js');
|
|
5
|
+
const lib_builder_ArgumentBuilder = require('./lib/builder/ArgumentBuilder.cjs.js');
|
|
6
|
+
const lib_StringReader = require('./lib/StringReader.cjs.js');
|
|
7
|
+
const lib_suggestion_Suggestions = require('./lib/suggestion/Suggestions.cjs.js');
|
|
8
|
+
const lib_util_isEqual = require('./lib/util/isEqual.cjs.js');
|
|
9
|
+
|
|
10
|
+
const USAGE_ARGUMENT_OPEN = "<";
|
|
11
|
+
const USAGE_ARGUMENT_CLOSE = ">";
|
|
12
|
+
class ArgumentCommandNode extends lib_tree_CommandNode.default {
|
|
13
|
+
name;
|
|
14
|
+
type;
|
|
15
|
+
customSuggestions;
|
|
16
|
+
constructor(name, type, command, requirement, redirect, modifier, forks, customSuggestions) {
|
|
17
|
+
super(command, requirement, redirect, modifier, forks);
|
|
18
|
+
this.name = name;
|
|
19
|
+
this.type = type;
|
|
20
|
+
this.customSuggestions = customSuggestions;
|
|
21
|
+
}
|
|
22
|
+
getNodeType() {
|
|
23
|
+
return "argument";
|
|
24
|
+
}
|
|
25
|
+
getType() {
|
|
26
|
+
return this.type;
|
|
27
|
+
}
|
|
28
|
+
getName() {
|
|
29
|
+
return this.name;
|
|
30
|
+
}
|
|
31
|
+
getUsageText() {
|
|
32
|
+
return USAGE_ARGUMENT_OPEN + this.name + USAGE_ARGUMENT_CLOSE;
|
|
33
|
+
}
|
|
34
|
+
getCustomSuggestions() {
|
|
35
|
+
return this.customSuggestions;
|
|
36
|
+
}
|
|
37
|
+
parse(reader, contextBuilder) {
|
|
38
|
+
let start = reader.getCursor();
|
|
39
|
+
let result = this.type.parse(reader, contextBuilder);
|
|
40
|
+
let parsed = new lib_context_ParsedArgument.default(start, reader.getCursor(), result);
|
|
41
|
+
contextBuilder.withArgument(this.name, parsed);
|
|
42
|
+
contextBuilder.withNode(this, parsed.getRange());
|
|
43
|
+
}
|
|
44
|
+
listSuggestions(context, builder) {
|
|
45
|
+
if (this.customSuggestions == null) {
|
|
46
|
+
if (typeof this.type.listSuggestions === "function")
|
|
47
|
+
return this.type.listSuggestions(context, builder);
|
|
48
|
+
else
|
|
49
|
+
return lib_suggestion_Suggestions.default.empty();
|
|
50
|
+
} else {
|
|
51
|
+
return this.customSuggestions.getSuggestions(context, builder);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
createBuilder() {
|
|
55
|
+
let builder = RequiredArgumentBuilder.argument(
|
|
56
|
+
this.name,
|
|
57
|
+
this.type
|
|
58
|
+
);
|
|
59
|
+
builder.requires(this.getRequirement());
|
|
60
|
+
builder.forward(this.getRedirect(), this.getRedirectModifier(), this.isFork());
|
|
61
|
+
builder.suggests(this.customSuggestions);
|
|
62
|
+
if (this.getCommand()) {
|
|
63
|
+
builder.executes(this.getCommand());
|
|
64
|
+
}
|
|
65
|
+
return builder;
|
|
66
|
+
}
|
|
67
|
+
isValidInput(input, context) {
|
|
68
|
+
try {
|
|
69
|
+
let reader = new lib_StringReader.default(input);
|
|
70
|
+
this.type.parse(reader, context);
|
|
71
|
+
return !reader.canRead() || reader.peek() == " ";
|
|
72
|
+
} catch (ignored) {
|
|
73
|
+
}
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
equals(o) {
|
|
77
|
+
if (this === o)
|
|
78
|
+
return true;
|
|
79
|
+
if (!(o instanceof ArgumentCommandNode))
|
|
80
|
+
return false;
|
|
81
|
+
if (!(this.name === o.name))
|
|
82
|
+
return false;
|
|
83
|
+
if (!lib_util_isEqual.default(this.type, o.type))
|
|
84
|
+
return false;
|
|
85
|
+
return super.equals(o);
|
|
86
|
+
}
|
|
87
|
+
getSortedKey() {
|
|
88
|
+
return this.name;
|
|
89
|
+
}
|
|
90
|
+
getExamples() {
|
|
91
|
+
return typeof this.type.getExamples === "function" ? this.type.getExamples() : [];
|
|
92
|
+
}
|
|
93
|
+
toString() {
|
|
94
|
+
return "<argument " + this.name + ":" + this.type + ">";
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
class RequiredArgumentBuilder extends lib_builder_ArgumentBuilder.default {
|
|
99
|
+
name;
|
|
100
|
+
type;
|
|
101
|
+
suggestionsProvider;
|
|
102
|
+
constructor(name, type) {
|
|
103
|
+
super();
|
|
104
|
+
this.name = name;
|
|
105
|
+
this.type = type;
|
|
106
|
+
}
|
|
107
|
+
static argument(name, type) {
|
|
108
|
+
return new RequiredArgumentBuilder(name, type);
|
|
109
|
+
}
|
|
110
|
+
suggests(provider) {
|
|
111
|
+
this.suggestionsProvider = provider;
|
|
112
|
+
return this.getThis();
|
|
113
|
+
}
|
|
114
|
+
getSuggestionsProvider() {
|
|
115
|
+
return this.suggestionsProvider;
|
|
116
|
+
}
|
|
117
|
+
getThis() {
|
|
118
|
+
return this;
|
|
119
|
+
}
|
|
120
|
+
getType() {
|
|
121
|
+
return this.type;
|
|
122
|
+
}
|
|
123
|
+
getName() {
|
|
124
|
+
return this.name;
|
|
125
|
+
}
|
|
126
|
+
build() {
|
|
127
|
+
let result = new ArgumentCommandNode(
|
|
128
|
+
this.getName(),
|
|
129
|
+
this.getType(),
|
|
130
|
+
this.getCommand(),
|
|
131
|
+
this.getRequirement(),
|
|
132
|
+
this.getRedirect(),
|
|
133
|
+
this.getRedirectModifier(),
|
|
134
|
+
this.isFork(),
|
|
135
|
+
this.getSuggestionsProvider()
|
|
136
|
+
);
|
|
137
|
+
for (let arg of this.getArguments()) {
|
|
138
|
+
result.addChild(arg);
|
|
139
|
+
}
|
|
140
|
+
return result;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
const argument = RequiredArgumentBuilder.argument;
|
|
144
|
+
|
|
145
|
+
exports.ArgumentCommandNode = ArgumentCommandNode;
|
|
146
|
+
exports.RequiredArgumentBuilder = RequiredArgumentBuilder;
|
|
147
|
+
exports.argument = argument;
|
|
148
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXItRE1KNGtsMHUuY2pzIiwic291cmNlcyI6WyIuLi9zcmMvbGliL3RyZWUvQXJndW1lbnRDb21tYW5kTm9kZS50cyIsIi4uL3NyYy9saWIvYnVpbGRlci9SZXF1aXJlZEFyZ3VtZW50QnVpbGRlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSBBcmd1bWVudFR5cGUgZnJvbSAnLi4vYXJndW1lbnRzL0FyZ3VtZW50VHlwZSc7XG5pbXBvcnQgdHlwZSBDb21tYW5kIGZyb20gJy4uL0NvbW1hbmQnO1xuaW1wb3J0IHR5cGUgQ29tbWFuZENvbnRleHQgZnJvbSAnLi4vY29udGV4dC9Db21tYW5kQ29udGV4dCc7XG5pbXBvcnQgdHlwZSBDb21tYW5kQ29udGV4dEJ1aWxkZXIgZnJvbSAnLi4vY29udGV4dC9Db21tYW5kQ29udGV4dEJ1aWxkZXInO1xuaW1wb3J0IENvbW1hbmROb2RlIGZyb20gJy4vQ29tbWFuZE5vZGUnO1xuaW1wb3J0IFBhcnNlZEFyZ3VtZW50IGZyb20gJy4uL2NvbnRleHQvUGFyc2VkQXJndW1lbnQnO1xuaW1wb3J0IHR5cGUgUHJlZGljYXRlIGZyb20gJy4uL1ByZWRpY2F0ZSc7XG5pbXBvcnQgdHlwZSBSZWRpcmVjdE1vZGlmaWVyIGZyb20gJy4uL1JlZGlyZWN0TW9kaWZpZXInO1xuaW1wb3J0IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyIGZyb20gJy4uL2J1aWxkZXIvUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXInO1xuaW1wb3J0IFN0cmluZ1JlYWRlciBmcm9tICcuLi9TdHJpbmdSZWFkZXInO1xuaW1wb3J0IHR5cGUgU3VnZ2VzdGlvblByb3ZpZGVyIGZyb20gJy4uL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvblByb3ZpZGVyJztcbmltcG9ydCBTdWdnZXN0aW9ucyBmcm9tICcuLi9zdWdnZXN0aW9uL1N1Z2dlc3Rpb25zJztcbmltcG9ydCB0eXBlIFN1Z2dlc3Rpb25zQnVpbGRlciBmcm9tICcuLi9zdWdnZXN0aW9uL1N1Z2dlc3Rpb25zQnVpbGRlcic7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICcuLi91dGlsL2lzRXF1YWwnO1xuXG5jb25zdCBVU0FHRV9BUkdVTUVOVF9PUEVOOiBzdHJpbmcgPSAnPCc7XG5jb25zdCBVU0FHRV9BUkdVTUVOVF9DTE9TRTogc3RyaW5nID0gJz4nO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcmd1bWVudENvbW1hbmROb2RlPFMsIFQ+IGV4dGVuZHMgQ29tbWFuZE5vZGU8Uz4ge1xuICAgIHByaXZhdGUgbmFtZTogc3RyaW5nO1xuICAgIHByaXZhdGUgdHlwZTogQXJndW1lbnRUeXBlPFQ+O1xuICAgIHByaXZhdGUgY3VzdG9tU3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25Qcm92aWRlcjxTPjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgbmFtZTogc3RyaW5nLFxuICAgICAgICB0eXBlOiBBcmd1bWVudFR5cGU8VD4sXG4gICAgICAgIGNvbW1hbmQ6IENvbW1hbmQ8Uz4sXG4gICAgICAgIHJlcXVpcmVtZW50OiBQcmVkaWNhdGU8Uz4sXG4gICAgICAgIHJlZGlyZWN0OiBDb21tYW5kTm9kZTxTPixcbiAgICAgICAgbW9kaWZpZXI6IFJlZGlyZWN0TW9kaWZpZXI8Uz4gfCBudWxsLFxuICAgICAgICBmb3JrczogYm9vbGVhbixcbiAgICAgICAgY3VzdG9tU3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25Qcm92aWRlcjxTPlxuICAgICkge1xuICAgICAgICBzdXBlcihjb21tYW5kLCByZXF1aXJlbWVudCwgcmVkaXJlY3QsIG1vZGlmaWVyLCBmb3Jrcyk7XG4gICAgICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgICAgIHRoaXMuY3VzdG9tU3VnZ2VzdGlvbnMgPSBjdXN0b21TdWdnZXN0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Tm9kZVR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICdhcmd1bWVudCc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFR5cGUoKTogQXJndW1lbnRUeXBlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRVc2FnZVRleHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFVTQUdFX0FSR1VNRU5UX09QRU4gKyB0aGlzLm5hbWUgKyBVU0FHRV9BUkdVTUVOVF9DTE9TRTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q3VzdG9tU3VnZ2VzdGlvbnMoKTogU3VnZ2VzdGlvblByb3ZpZGVyPFM+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tU3VnZ2VzdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIHBhcnNlKHJlYWRlcjogU3RyaW5nUmVhZGVyLCBjb250ZXh0QnVpbGRlcjogQ29tbWFuZENvbnRleHRCdWlsZGVyPFM+KSB7XG4gICAgICAgIGxldCBzdGFydCA9IHJlYWRlci5nZXRDdXJzb3IoKTtcbiAgICAgICAgbGV0IHJlc3VsdDogVCA9IHRoaXMudHlwZS5wYXJzZShyZWFkZXIsIGNvbnRleHRCdWlsZGVyIGFzIGFueSk7XG4gICAgICAgIGxldCBwYXJzZWQ6IFBhcnNlZEFyZ3VtZW50PFMsIFQ+ID0gbmV3IFBhcnNlZEFyZ3VtZW50KHN0YXJ0LCByZWFkZXIuZ2V0Q3Vyc29yKCksIHJlc3VsdCk7XG4gICAgICAgIGNvbnRleHRCdWlsZGVyLndpdGhBcmd1bWVudCh0aGlzLm5hbWUsIHBhcnNlZCk7XG4gICAgICAgIGNvbnRleHRCdWlsZGVyLndpdGhOb2RlKHRoaXMsIHBhcnNlZC5nZXRSYW5nZSgpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbGlzdFN1Z2dlc3Rpb25zKGNvbnRleHQ6IENvbW1hbmRDb250ZXh0PFM+LCBidWlsZGVyOiBTdWdnZXN0aW9uc0J1aWxkZXIpOiBQcm9taXNlPFN1Z2dlc3Rpb25zPiB7XG4gICAgICAgIGlmICh0aGlzLmN1c3RvbVN1Z2dlc3Rpb25zID09IG51bGwpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy50eXBlLmxpc3RTdWdnZXN0aW9ucyA9PT0gJ2Z1bmN0aW9uJykgcmV0dXJuIHRoaXMudHlwZS5saXN0U3VnZ2VzdGlvbnMoY29udGV4dCwgYnVpbGRlcik7XG4gICAgICAgICAgICBlbHNlIHJldHVybiBTdWdnZXN0aW9ucy5lbXB0eSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tU3VnZ2VzdGlvbnMuZ2V0U3VnZ2VzdGlvbnMoY29udGV4dCwgYnVpbGRlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlQnVpbGRlcigpOiBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPiB7XG4gICAgICAgIGxldCBidWlsZGVyOiBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPiA9IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyLmFyZ3VtZW50KFxuICAgICAgICAgICAgdGhpcy5uYW1lLFxuICAgICAgICAgICAgdGhpcy50eXBlXG4gICAgICAgICkgYXMgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXI8UywgVD47XG4gICAgICAgIGJ1aWxkZXIucmVxdWlyZXModGhpcy5nZXRSZXF1aXJlbWVudCgpKTtcbiAgICAgICAgYnVpbGRlci5mb3J3YXJkKHRoaXMuZ2V0UmVkaXJlY3QoKSEsIHRoaXMuZ2V0UmVkaXJlY3RNb2RpZmllcigpLCB0aGlzLmlzRm9yaygpKTtcbiAgICAgICAgYnVpbGRlci5zdWdnZXN0cyh0aGlzLmN1c3RvbVN1Z2dlc3Rpb25zKTtcbiAgICAgICAgaWYgKHRoaXMuZ2V0Q29tbWFuZCgpKSB7XG4gICAgICAgICAgICBidWlsZGVyLmV4ZWN1dGVzKHRoaXMuZ2V0Q29tbWFuZCgpISk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYnVpbGRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNWYWxpZElucHV0KGlucHV0OiBzdHJpbmcsIGNvbnRleHQ6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbGV0IHJlYWRlcjogU3RyaW5nUmVhZGVyID0gbmV3IFN0cmluZ1JlYWRlcihpbnB1dCk7XG4gICAgICAgICAgICB0aGlzLnR5cGUucGFyc2UocmVhZGVyLCBjb250ZXh0KTtcbiAgICAgICAgICAgIHJldHVybiAhcmVhZGVyLmNhblJlYWQoKSB8fCByZWFkZXIucGVlaygpID09ICcgJztcbiAgICAgICAgfSBjYXRjaCAoaWdub3JlZCkge31cblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGVxdWFscyhvOiBvYmplY3QpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMgPT09IG8pIHJldHVybiB0cnVlO1xuICAgICAgICBpZiAoIShvIGluc3RhbmNlb2YgQXJndW1lbnRDb21tYW5kTm9kZSkpIHJldHVybiBmYWxzZTtcblxuICAgICAgICBpZiAoISh0aGlzLm5hbWUgPT09IG8ubmFtZSkpIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKCFpc0VxdWFsKHRoaXMudHlwZSwgby50eXBlKSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAgIHJldHVybiBzdXBlci5lcXVhbHMobyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNvcnRlZEtleSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5uYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFeGFtcGxlcygpOiBJdGVyYWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzLnR5cGUuZ2V0RXhhbXBsZXMgPT09ICdmdW5jdGlvbicgPyB0aGlzLnR5cGUuZ2V0RXhhbXBsZXMoKSA6IFtdO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJzxhcmd1bWVudCAnICsgdGhpcy5uYW1lICsgJzonICsgdGhpcy50eXBlICsgJz4nO1xuICAgIH1cbn1cbiIsImltcG9ydCBBcmd1bWVudFR5cGUgZnJvbSAnLi4vYXJndW1lbnRzL0FyZ3VtZW50VHlwZSc7XG5pbXBvcnQgU3VnZ2VzdGlvblByb3ZpZGVyIGZyb20gJy4uL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvblByb3ZpZGVyJztcbmltcG9ydCBBcmd1bWVudENvbW1hbmROb2RlIGZyb20gJy4uL3RyZWUvQXJndW1lbnRDb21tYW5kTm9kZSc7XG5pbXBvcnQgQXJndW1lbnRCdWlsZGVyIGZyb20gJy4vQXJndW1lbnRCdWlsZGVyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXI8UywgVD4gZXh0ZW5kcyBBcmd1bWVudEJ1aWxkZXI8UywgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXI8UywgVD4+IHtcbiAgICBwcml2YXRlIG5hbWU6IHN0cmluZztcbiAgICBwcml2YXRlIHR5cGU6IEFyZ3VtZW50VHlwZTxUPjtcbiAgICBwcml2YXRlIHN1Z2dlc3Rpb25zUHJvdmlkZXIhOiBTdWdnZXN0aW9uUHJvdmlkZXI8Uz47XG5cbiAgICBwcml2YXRlIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgdHlwZTogQXJndW1lbnRUeXBlPFQ+KSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhcmd1bWVudDxTLCBUPihuYW1lOiBzdHJpbmcsIHR5cGU6IEFyZ3VtZW50VHlwZTxUPikge1xuICAgICAgICByZXR1cm4gbmV3IFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyKG5hbWUsIHR5cGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdWdnZXN0cyhwcm92aWRlcjogU3VnZ2VzdGlvblByb3ZpZGVyPFM+KSB7XG4gICAgICAgIHRoaXMuc3VnZ2VzdGlvbnNQcm92aWRlciA9IHByb3ZpZGVyO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRUaGlzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFN1Z2dlc3Rpb25zUHJvdmlkZXIoKTogU3VnZ2VzdGlvblByb3ZpZGVyPFM+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3VnZ2VzdGlvbnNQcm92aWRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VGhpcygpOiBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcjxTLCBUPiB7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRUeXBlKCk6IEFyZ3VtZW50VHlwZTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYnVpbGQoKTogQXJndW1lbnRDb21tYW5kTm9kZTxTLCBUPiB7XG4gICAgICAgIGxldCByZXN1bHQ6IEFyZ3VtZW50Q29tbWFuZE5vZGU8UywgVD4gPSBuZXcgQXJndW1lbnRDb21tYW5kTm9kZShcbiAgICAgICAgICAgIHRoaXMuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgdGhpcy5nZXRUeXBlKCksXG4gICAgICAgICAgICB0aGlzLmdldENvbW1hbmQoKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0UmVxdWlyZW1lbnQoKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0UmVkaXJlY3QoKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0UmVkaXJlY3RNb2RpZmllcigpLFxuICAgICAgICAgICAgdGhpcy5pc0ZvcmsoKSxcbiAgICAgICAgICAgIHRoaXMuZ2V0U3VnZ2VzdGlvbnNQcm92aWRlcigpXG4gICAgICAgICk7XG4gICAgICAgIGZvciAobGV0IGFyZyBvZiB0aGlzLmdldEFyZ3VtZW50cygpKSB7XG4gICAgICAgICAgICByZXN1bHQuYWRkQ2hpbGQoYXJnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGFyZ3VtZW50ID0gUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXIuYXJndW1lbnQ7XG4iXSwibmFtZXMiOlsiQ29tbWFuZE5vZGUiLCJQYXJzZWRBcmd1bWVudCIsIlN1Z2dlc3Rpb25zIiwiU3RyaW5nUmVhZGVyIiwiaXNFcXVhbCIsIkFyZ3VtZW50QnVpbGRlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBZUEsTUFBTSxtQkFBOEIsR0FBQSxHQUFBLENBQUE7QUFDcEMsTUFBTSxvQkFBK0IsR0FBQSxHQUFBLENBQUE7QUFFckMsTUFBcUIsNEJBQWtDQSw0QkFBZSxDQUFBO0FBQUEsRUFDMUQsSUFBQSxDQUFBO0FBQUEsRUFDQSxJQUFBLENBQUE7QUFBQSxFQUNBLGlCQUFBLENBQUE7QUFBQSxFQUVELFdBQUEsQ0FDSCxNQUNBLElBQ0EsRUFBQSxPQUFBLEVBQ0EsYUFDQSxRQUNBLEVBQUEsUUFBQSxFQUNBLE9BQ0EsaUJBQ0YsRUFBQTtBQUNFLElBQUEsS0FBQSxDQUFNLE9BQVMsRUFBQSxXQUFBLEVBQWEsUUFBVSxFQUFBLFFBQUEsRUFBVSxLQUFLLENBQUEsQ0FBQTtBQUNyRCxJQUFBLElBQUEsQ0FBSyxJQUFPLEdBQUEsSUFBQSxDQUFBO0FBQ1osSUFBQSxJQUFBLENBQUssSUFBTyxHQUFBLElBQUEsQ0FBQTtBQUNaLElBQUEsSUFBQSxDQUFLLGlCQUFvQixHQUFBLGlCQUFBLENBQUE7QUFBQSxHQUM3QjtBQUFBLEVBRU8sV0FBc0IsR0FBQTtBQUN6QixJQUFPLE9BQUEsVUFBQSxDQUFBO0FBQUEsR0FDWDtBQUFBLEVBRU8sT0FBMkIsR0FBQTtBQUM5QixJQUFBLE9BQU8sSUFBSyxDQUFBLElBQUEsQ0FBQTtBQUFBLEdBQ2hCO0FBQUEsRUFFTyxPQUFrQixHQUFBO0FBQ3JCLElBQUEsT0FBTyxJQUFLLENBQUEsSUFBQSxDQUFBO0FBQUEsR0FDaEI7QUFBQSxFQUVPLFlBQXVCLEdBQUE7QUFDMUIsSUFBTyxPQUFBLG1CQUFBLEdBQXNCLEtBQUssSUFBTyxHQUFBLG9CQUFBLENBQUE7QUFBQSxHQUM3QztBQUFBLEVBRU8sb0JBQThDLEdBQUE7QUFDakQsSUFBQSxPQUFPLElBQUssQ0FBQSxpQkFBQSxDQUFBO0FBQUEsR0FDaEI7QUFBQSxFQUVPLEtBQUEsQ0FBTSxRQUFzQixjQUEwQyxFQUFBO0FBQ3pFLElBQUksSUFBQSxLQUFBLEdBQVEsT0FBTyxTQUFVLEVBQUEsQ0FBQTtBQUM3QixJQUFBLElBQUksTUFBWSxHQUFBLElBQUEsQ0FBSyxJQUFLLENBQUEsS0FBQSxDQUFNLFFBQVEsY0FBcUIsQ0FBQSxDQUFBO0FBQzdELElBQUEsSUFBSSxTQUErQixJQUFJQyxrQ0FBQSxDQUFlLE9BQU8sTUFBTyxDQUFBLFNBQUEsSUFBYSxNQUFNLENBQUEsQ0FBQTtBQUN2RixJQUFlLGNBQUEsQ0FBQSxZQUFBLENBQWEsSUFBSyxDQUFBLElBQUEsRUFBTSxNQUFNLENBQUEsQ0FBQTtBQUM3QyxJQUFBLGNBQUEsQ0FBZSxRQUFTLENBQUEsSUFBQSxFQUFNLE1BQU8sQ0FBQSxRQUFBLEVBQVUsQ0FBQSxDQUFBO0FBQUEsR0FDbkQ7QUFBQSxFQUVPLGVBQUEsQ0FBZ0IsU0FBNEIsT0FBbUQsRUFBQTtBQUNsRyxJQUFJLElBQUEsSUFBQSxDQUFLLHFCQUFxQixJQUFNLEVBQUE7QUFDaEMsTUFBSSxJQUFBLE9BQU8sSUFBSyxDQUFBLElBQUEsQ0FBSyxlQUFvQixLQUFBLFVBQUE7QUFBWSxRQUFBLE9BQU8sSUFBSyxDQUFBLElBQUEsQ0FBSyxlQUFnQixDQUFBLE9BQUEsRUFBUyxPQUFPLENBQUEsQ0FBQTtBQUFBO0FBQ2pHLFFBQUEsT0FBT0MsbUNBQVksS0FBTSxFQUFBLENBQUE7QUFBQSxLQUMzQixNQUFBO0FBQ0gsTUFBQSxPQUFPLElBQUssQ0FBQSxpQkFBQSxDQUFrQixjQUFlLENBQUEsT0FBQSxFQUFTLE9BQU8sQ0FBQSxDQUFBO0FBQUEsS0FDakU7QUFBQSxHQUNKO0FBQUEsRUFFTyxhQUErQyxHQUFBO0FBQ2xELElBQUEsSUFBSSxVQUF5Qyx1QkFBd0IsQ0FBQSxRQUFBO0FBQUEsTUFDakUsSUFBSyxDQUFBLElBQUE7QUFBQSxNQUNMLElBQUssQ0FBQSxJQUFBO0FBQUEsS0FDVCxDQUFBO0FBQ0EsSUFBUSxPQUFBLENBQUEsUUFBQSxDQUFTLElBQUssQ0FBQSxjQUFBLEVBQWdCLENBQUEsQ0FBQTtBQUN0QyxJQUFRLE9BQUEsQ0FBQSxPQUFBLENBQVEsS0FBSyxXQUFZLEVBQUEsRUFBSSxLQUFLLG1CQUFvQixFQUFBLEVBQUcsSUFBSyxDQUFBLE1BQUEsRUFBUSxDQUFBLENBQUE7QUFDOUUsSUFBUSxPQUFBLENBQUEsUUFBQSxDQUFTLEtBQUssaUJBQWlCLENBQUEsQ0FBQTtBQUN2QyxJQUFJLElBQUEsSUFBQSxDQUFLLFlBQWMsRUFBQTtBQUNuQixNQUFRLE9BQUEsQ0FBQSxRQUFBLENBQVMsSUFBSyxDQUFBLFVBQUEsRUFBYSxDQUFBLENBQUE7QUFBQSxLQUN2QztBQUVBLElBQU8sT0FBQSxPQUFBLENBQUE7QUFBQSxHQUNYO0FBQUEsRUFFTyxZQUFBLENBQWEsT0FBZSxPQUF1QixFQUFBO0FBQ3RELElBQUksSUFBQTtBQUNBLE1BQUksSUFBQSxNQUFBLEdBQXVCLElBQUlDLHdCQUFBLENBQWEsS0FBSyxDQUFBLENBQUE7QUFDakQsTUFBSyxJQUFBLENBQUEsSUFBQSxDQUFLLEtBQU0sQ0FBQSxNQUFBLEVBQVEsT0FBTyxDQUFBLENBQUE7QUFDL0IsTUFBQSxPQUFPLENBQUMsTUFBTyxDQUFBLE9BQUEsRUFBYSxJQUFBLE1BQUEsQ0FBTyxNQUFVLElBQUEsR0FBQSxDQUFBO0FBQUEsYUFDeEMsT0FBUyxFQUFBO0FBQUEsS0FBQztBQUVuQixJQUFPLE9BQUEsS0FBQSxDQUFBO0FBQUEsR0FDWDtBQUFBLEVBRU8sT0FBTyxDQUFvQixFQUFBO0FBQzlCLElBQUEsSUFBSSxJQUFTLEtBQUEsQ0FBQTtBQUFHLE1BQU8sT0FBQSxJQUFBLENBQUE7QUFDdkIsSUFBQSxJQUFJLEVBQUUsQ0FBYSxZQUFBLG1CQUFBLENBQUE7QUFBc0IsTUFBTyxPQUFBLEtBQUEsQ0FBQTtBQUVoRCxJQUFJLElBQUEsRUFBRSxJQUFLLENBQUEsSUFBQSxLQUFTLENBQUUsQ0FBQSxJQUFBLENBQUE7QUFBTyxNQUFPLE9BQUEsS0FBQSxDQUFBO0FBQ3BDLElBQUEsSUFBSSxDQUFDQyx3QkFBQSxDQUFRLElBQUssQ0FBQSxJQUFBLEVBQU0sRUFBRSxJQUFJLENBQUE7QUFBRyxNQUFPLE9BQUEsS0FBQSxDQUFBO0FBRXhDLElBQU8sT0FBQSxLQUFBLENBQU0sT0FBTyxDQUFDLENBQUEsQ0FBQTtBQUFBLEdBQ3pCO0FBQUEsRUFFTyxZQUF1QixHQUFBO0FBQzFCLElBQUEsT0FBTyxJQUFLLENBQUEsSUFBQSxDQUFBO0FBQUEsR0FDaEI7QUFBQSxFQUVPLFdBQWdDLEdBQUE7QUFDbkMsSUFBTyxPQUFBLE9BQU8sS0FBSyxJQUFLLENBQUEsV0FBQSxLQUFnQixhQUFhLElBQUssQ0FBQSxJQUFBLENBQUssV0FBWSxFQUFBLEdBQUksRUFBQyxDQUFBO0FBQUEsR0FDcEY7QUFBQSxFQUVPLFFBQW1CLEdBQUE7QUFDdEIsSUFBQSxPQUFPLFlBQWUsR0FBQSxJQUFBLENBQUssSUFBTyxHQUFBLEdBQUEsR0FBTSxLQUFLLElBQU8sR0FBQSxHQUFBLENBQUE7QUFBQSxHQUN4RDtBQUNKOztBQ3JIQSxNQUFxQixnQ0FBc0NDLG1DQUFrRCxDQUFBO0FBQUEsRUFDakcsSUFBQSxDQUFBO0FBQUEsRUFDQSxJQUFBLENBQUE7QUFBQSxFQUNBLG1CQUFBLENBQUE7QUFBQSxFQUVBLFdBQUEsQ0FBWSxNQUFjLElBQXVCLEVBQUE7QUFDckQsSUFBTSxLQUFBLEVBQUEsQ0FBQTtBQUNOLElBQUEsSUFBQSxDQUFLLElBQU8sR0FBQSxJQUFBLENBQUE7QUFDWixJQUFBLElBQUEsQ0FBSyxJQUFPLEdBQUEsSUFBQSxDQUFBO0FBQUEsR0FDaEI7QUFBQSxFQUVBLE9BQWMsUUFBZSxDQUFBLElBQUEsRUFBYyxJQUF1QixFQUFBO0FBQzlELElBQU8sT0FBQSxJQUFJLHVCQUF3QixDQUFBLElBQUEsRUFBTSxJQUFJLENBQUEsQ0FBQTtBQUFBLEdBQ2pEO0FBQUEsRUFFTyxTQUFTLFFBQWlDLEVBQUE7QUFDN0MsSUFBQSxJQUFBLENBQUssbUJBQXNCLEdBQUEsUUFBQSxDQUFBO0FBQzNCLElBQUEsT0FBTyxLQUFLLE9BQVEsRUFBQSxDQUFBO0FBQUEsR0FDeEI7QUFBQSxFQUVPLHNCQUFnRCxHQUFBO0FBQ25ELElBQUEsT0FBTyxJQUFLLENBQUEsbUJBQUEsQ0FBQTtBQUFBLEdBQ2hCO0FBQUEsRUFFTyxPQUF5QyxHQUFBO0FBQzVDLElBQU8sT0FBQSxJQUFBLENBQUE7QUFBQSxHQUNYO0FBQUEsRUFFTyxPQUEyQixHQUFBO0FBQzlCLElBQUEsT0FBTyxJQUFLLENBQUEsSUFBQSxDQUFBO0FBQUEsR0FDaEI7QUFBQSxFQUVPLE9BQWtCLEdBQUE7QUFDckIsSUFBQSxPQUFPLElBQUssQ0FBQSxJQUFBLENBQUE7QUFBQSxHQUNoQjtBQUFBLEVBRU8sS0FBbUMsR0FBQTtBQUN0QyxJQUFBLElBQUksU0FBb0MsSUFBSSxtQkFBQTtBQUFBLE1BQ3hDLEtBQUssT0FBUSxFQUFBO0FBQUEsTUFDYixLQUFLLE9BQVEsRUFBQTtBQUFBLE1BQ2IsS0FBSyxVQUFXLEVBQUE7QUFBQSxNQUNoQixLQUFLLGNBQWUsRUFBQTtBQUFBLE1BQ3BCLEtBQUssV0FBWSxFQUFBO0FBQUEsTUFDakIsS0FBSyxtQkFBb0IsRUFBQTtBQUFBLE1BQ3pCLEtBQUssTUFBTyxFQUFBO0FBQUEsTUFDWixLQUFLLHNCQUF1QixFQUFBO0FBQUEsS0FDaEMsQ0FBQTtBQUNBLElBQVMsS0FBQSxJQUFBLEdBQUEsSUFBTyxJQUFLLENBQUEsWUFBQSxFQUFnQixFQUFBO0FBQ2pDLE1BQUEsTUFBQSxDQUFPLFNBQVMsR0FBRyxDQUFBLENBQUE7QUFBQSxLQUN2QjtBQUNBLElBQU8sT0FBQSxNQUFBLENBQUE7QUFBQSxHQUNYO0FBQ0osQ0FBQTtBQUVPLE1BQU0sV0FBVyx1QkFBd0IsQ0FBQTs7Ozs7OyJ9
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const lib_CommandDispatcher = require('./lib/CommandDispatcher.cjs.js');
|
|
6
|
+
const lib_LiteralMessage = require('./lib/LiteralMessage.cjs.js');
|
|
7
|
+
const lib_ParseResults = require('./lib/ParseResults.cjs.js');
|
|
8
|
+
const lib_StringReader = require('./lib/StringReader.cjs.js');
|
|
9
|
+
const lib_arguments_ArgumentType = require('./lib/arguments/ArgumentType.cjs.js');
|
|
10
|
+
const lib_tree_LiteralCommandNode = require('./LiteralArgumentBuilder-s6PUMmST.cjs');
|
|
11
|
+
const lib_tree_ArgumentCommandNode = require('./RequiredArgumentBuilder-DMJ4kl0u.cjs');
|
|
12
|
+
const lib_context_CommandContext = require('./lib/context/CommandContext.cjs.js');
|
|
13
|
+
const lib_context_CommandContextBuilder = require('./lib/context/CommandContextBuilder.cjs.js');
|
|
14
|
+
const lib_context_ParsedArgument = require('./lib/context/ParsedArgument.cjs.js');
|
|
15
|
+
const lib_context_ParsedCommandNode = require('./lib/context/ParsedCommandNode.cjs.js');
|
|
16
|
+
const lib_context_StringRange = require('./lib/context/StringRange.cjs.js');
|
|
17
|
+
const lib_context_SuggestionContext = require('./lib/context/SuggestionContext.cjs.js');
|
|
18
|
+
const lib_exceptions_SimpleCommandExceptionType = require('./CommandSyntaxException-BKBHJvxr.cjs');
|
|
19
|
+
const lib_suggestion_Suggestion = require('./lib/suggestion/Suggestion.cjs.js');
|
|
20
|
+
const lib_suggestion_Suggestions = require('./lib/suggestion/Suggestions.cjs.js');
|
|
21
|
+
const lib_suggestion_SuggestionsBuilder = require('./lib/suggestion/SuggestionsBuilder.cjs.js');
|
|
22
|
+
const lib_tree_RootCommandNode = require('./lib/tree/RootCommandNode.cjs.js');
|
|
23
|
+
require('./lib/arguments/BoolArgumentType.cjs.js');
|
|
24
|
+
require('./lib/arguments/FloatArgumentType.cjs.js');
|
|
25
|
+
require('./lib/arguments/IntegerArgumentType.cjs.js');
|
|
26
|
+
require('./lib/arguments/StringArgumentType.cjs.js');
|
|
27
|
+
require('./lib/tree/CommandNode.cjs.js');
|
|
28
|
+
require('./lib/util/isEqual.cjs.js');
|
|
29
|
+
require('./lib/builder/ArgumentBuilder.cjs.js');
|
|
30
|
+
require('./lib/suggestion/IntegerSuggestion.cjs.js');
|
|
31
|
+
|
|
32
|
+
const { word, string, greedyString, bool, integer, float } = lib_arguments_ArgumentType.DefaultType;
|
|
33
|
+
|
|
34
|
+
exports.CommandDispatcher = lib_CommandDispatcher.default;
|
|
35
|
+
exports.LiteralMessage = lib_LiteralMessage.default;
|
|
36
|
+
exports.ParseResults = lib_ParseResults.default;
|
|
37
|
+
exports.StringReader = lib_StringReader.default;
|
|
38
|
+
exports.LiteralArgumentBuilder = lib_tree_LiteralCommandNode.LiteralArgumentBuilder;
|
|
39
|
+
exports.LiteralCommandNode = lib_tree_LiteralCommandNode.LiteralCommandNode;
|
|
40
|
+
exports.literal = lib_tree_LiteralCommandNode.literal;
|
|
41
|
+
exports.ArgumentCommandNode = lib_tree_ArgumentCommandNode.ArgumentCommandNode;
|
|
42
|
+
exports.RequiredArgumentBuilder = lib_tree_ArgumentCommandNode.RequiredArgumentBuilder;
|
|
43
|
+
exports.argument = lib_tree_ArgumentCommandNode.argument;
|
|
44
|
+
exports.CommandContext = lib_context_CommandContext.default;
|
|
45
|
+
exports.CommandContextBuilder = lib_context_CommandContextBuilder.default;
|
|
46
|
+
exports.ParsedArgument = lib_context_ParsedArgument.default;
|
|
47
|
+
exports.ParsedCommandNode = lib_context_ParsedCommandNode.default;
|
|
48
|
+
exports.StringRange = lib_context_StringRange.default;
|
|
49
|
+
exports.SuggestionsContext = lib_context_SuggestionContext.default;
|
|
50
|
+
exports.CommandSyntaxException = lib_exceptions_SimpleCommandExceptionType.CommandSyntaxException;
|
|
51
|
+
exports.DynamicCommandExceptionType = lib_exceptions_SimpleCommandExceptionType.DynamicCommandExceptionType;
|
|
52
|
+
exports.SimpleCommandExceptionType = lib_exceptions_SimpleCommandExceptionType.SimpleCommandExceptionType;
|
|
53
|
+
exports.Suggestion = lib_suggestion_Suggestion.default;
|
|
54
|
+
exports.Suggestions = lib_suggestion_Suggestions.default;
|
|
55
|
+
exports.SuggestionsBuilder = lib_suggestion_SuggestionsBuilder.default;
|
|
56
|
+
exports.RootCommandNode = lib_tree_RootCommandNode.default;
|
|
57
|
+
exports.bool = bool;
|
|
58
|
+
exports.float = float;
|
|
59
|
+
exports.greedyString = greedyString;
|
|
60
|
+
exports.integer = integer;
|
|
61
|
+
exports.string = string;
|
|
62
|
+
exports.word = word;
|
|
63
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY2pzLmpzIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvbW1hbmREaXNwYXRjaGVyIGZyb20gJy4vbGliL0NvbW1hbmREaXNwYXRjaGVyJztcbmltcG9ydCBMaXRlcmFsTWVzc2FnZSBmcm9tICcuL2xpYi9MaXRlcmFsTWVzc2FnZSc7XG5pbXBvcnQgUGFyc2VSZXN1bHRzIGZyb20gJy4vbGliL1BhcnNlUmVzdWx0cyc7XG5pbXBvcnQgU3RyaW5nUmVhZGVyIGZyb20gJy4vbGliL1N0cmluZ1JlYWRlcic7XG5pbXBvcnQgeyBEZWZhdWx0VHlwZSB9IGZyb20gJy4vbGliL2FyZ3VtZW50cy9Bcmd1bWVudFR5cGUnO1xuaW1wb3J0IExpdGVyYWxBcmd1bWVudEJ1aWxkZXIsIHsgbGl0ZXJhbCB9IGZyb20gJy4vbGliL2J1aWxkZXIvTGl0ZXJhbEFyZ3VtZW50QnVpbGRlcic7XG5pbXBvcnQgUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXIsIHsgYXJndW1lbnQgfSBmcm9tICcuL2xpYi9idWlsZGVyL1JlcXVpcmVkQXJndW1lbnRCdWlsZGVyJztcbmltcG9ydCBDb21tYW5kQ29udGV4dCBmcm9tICcuL2xpYi9jb250ZXh0L0NvbW1hbmRDb250ZXh0JztcbmltcG9ydCBDb21tYW5kQ29udGV4dEJ1aWxkZXIgZnJvbSAnLi9saWIvY29udGV4dC9Db21tYW5kQ29udGV4dEJ1aWxkZXInO1xuaW1wb3J0IFBhcnNlZEFyZ3VtZW50IGZyb20gJy4vbGliL2NvbnRleHQvUGFyc2VkQXJndW1lbnQnO1xuaW1wb3J0IFBhcnNlZENvbW1hbmROb2RlIGZyb20gJy4vbGliL2NvbnRleHQvUGFyc2VkQ29tbWFuZE5vZGUnO1xuaW1wb3J0IFN0cmluZ1JhbmdlIGZyb20gJy4vbGliL2NvbnRleHQvU3RyaW5nUmFuZ2UnO1xuaW1wb3J0IFN1Z2dlc3Rpb25zQ29udGV4dCBmcm9tICcuL2xpYi9jb250ZXh0L1N1Z2dlc3Rpb25Db250ZXh0JztcbmltcG9ydCBDb21tYW5kU3ludGF4RXhjZXB0aW9uIGZyb20gJy4vbGliL2V4Y2VwdGlvbnMvQ29tbWFuZFN5bnRheEV4Y2VwdGlvbic7XG5pbXBvcnQgRHluYW1pY0NvbW1hbmRFeGNlcHRpb25UeXBlIGZyb20gJy4vbGliL2V4Y2VwdGlvbnMvRHluYW1pY0NvbW1hbmRFeGNlcHRpb25UeXBlJztcbmltcG9ydCBTaW1wbGVDb21tYW5kRXhjZXB0aW9uVHlwZSBmcm9tICcuL2xpYi9leGNlcHRpb25zL1NpbXBsZUNvbW1hbmRFeGNlcHRpb25UeXBlJztcbmltcG9ydCBTdWdnZXN0aW9uIGZyb20gJy4vbGliL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvbic7XG5pbXBvcnQgU3VnZ2VzdGlvbnMgZnJvbSAnLi9saWIvc3VnZ2VzdGlvbi9TdWdnZXN0aW9ucyc7XG5pbXBvcnQgU3VnZ2VzdGlvbnNCdWlsZGVyIGZyb20gJy4vbGliL3N1Z2dlc3Rpb24vU3VnZ2VzdGlvbnNCdWlsZGVyJztcbmltcG9ydCBBcmd1bWVudENvbW1hbmROb2RlIGZyb20gJy4vbGliL3RyZWUvQXJndW1lbnRDb21tYW5kTm9kZSc7XG5pbXBvcnQgTGl0ZXJhbENvbW1hbmROb2RlIGZyb20gJy4vbGliL3RyZWUvTGl0ZXJhbENvbW1hbmROb2RlJztcbmltcG9ydCBSb290Q29tbWFuZE5vZGUgZnJvbSAnLi9saWIvdHJlZS9Sb290Q29tbWFuZE5vZGUnO1xuXG5jb25zdCB7IHdvcmQsIHN0cmluZywgZ3JlZWR5U3RyaW5nLCBib29sLCBpbnRlZ2VyLCBmbG9hdCB9ID0gRGVmYXVsdFR5cGU7XG5cbmV4cG9ydCB7XG4gICAgd29yZCxcbiAgICBzdHJpbmcsXG4gICAgZ3JlZWR5U3RyaW5nLFxuICAgIGJvb2wsXG4gICAgaW50ZWdlcixcbiAgICBmbG9hdCxcbiAgICBsaXRlcmFsLFxuICAgIGFyZ3VtZW50LFxuICAgIENvbW1hbmREaXNwYXRjaGVyLFxuICAgIExpdGVyYWxNZXNzYWdlLFxuICAgIFBhcnNlUmVzdWx0cyxcbiAgICBTdHJpbmdSZWFkZXIsXG4gICAgTGl0ZXJhbEFyZ3VtZW50QnVpbGRlcixcbiAgICBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlcixcbiAgICBDb21tYW5kQ29udGV4dCxcbiAgICBDb21tYW5kQ29udGV4dEJ1aWxkZXIsXG4gICAgUGFyc2VkQXJndW1lbnQsXG4gICAgUGFyc2VkQ29tbWFuZE5vZGUsXG4gICAgU3RyaW5nUmFuZ2UsXG4gICAgU3VnZ2VzdGlvbnNDb250ZXh0LFxuICAgIENvbW1hbmRTeW50YXhFeGNlcHRpb24sXG4gICAgU2ltcGxlQ29tbWFuZEV4Y2VwdGlvblR5cGUsXG4gICAgRHluYW1pY0NvbW1hbmRFeGNlcHRpb25UeXBlLFxuICAgIFN1Z2dlc3Rpb24sXG4gICAgU3VnZ2VzdGlvbnMsXG4gICAgU3VnZ2VzdGlvbnNCdWlsZGVyLFxuICAgIEFyZ3VtZW50Q29tbWFuZE5vZGUsXG4gICAgTGl0ZXJhbENvbW1hbmROb2RlLFxuICAgIFJvb3RDb21tYW5kTm9kZVxufTtcbiJdLCJuYW1lcyI6WyJEZWZhdWx0VHlwZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVCQSxNQUFNLEVBQUUsSUFBTSxFQUFBLE1BQUEsRUFBUSxjQUFjLElBQU0sRUFBQSxPQUFBLEVBQVMsT0FBVSxHQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { default as RootCommandNode } from './lib/tree/RootCommandNode';
|
|
2
|
+
import { default as LiteralCommandNode } from './lib/tree/LiteralCommandNode';
|
|
3
|
+
import { default as ArgumentCommandNode } from './lib/tree/ArgumentCommandNode';
|
|
4
|
+
import { default as SuggestionsBuilder } from './lib/suggestion/SuggestionsBuilder';
|
|
5
|
+
import { default as Suggestions } from './lib/suggestion/Suggestions';
|
|
6
|
+
import { default as Suggestion } from './lib/suggestion/Suggestion';
|
|
7
|
+
import { default as SimpleCommandExceptionType } from './lib/exceptions/SimpleCommandExceptionType';
|
|
8
|
+
import { default as DynamicCommandExceptionType } from './lib/exceptions/DynamicCommandExceptionType';
|
|
9
|
+
import { default as CommandSyntaxException } from './lib/exceptions/CommandSyntaxException';
|
|
10
|
+
import { default as SuggestionsContext } from './lib/context/SuggestionContext';
|
|
11
|
+
import { default as StringRange } from './lib/context/StringRange';
|
|
12
|
+
import { default as ParsedCommandNode } from './lib/context/ParsedCommandNode';
|
|
13
|
+
import { default as ParsedArgument } from './lib/context/ParsedArgument';
|
|
14
|
+
import { default as CommandContextBuilder } from './lib/context/CommandContextBuilder';
|
|
15
|
+
import { default as CommandContext } from './lib/context/CommandContext';
|
|
16
|
+
import { default as RequiredArgumentBuilder, argument } from './lib/builder/RequiredArgumentBuilder';
|
|
17
|
+
import { default as LiteralArgumentBuilder, literal } from './lib/builder/LiteralArgumentBuilder';
|
|
18
|
+
import { default as StringReader } from './lib/StringReader';
|
|
19
|
+
import { default as ParseResults } from './lib/ParseResults';
|
|
20
|
+
import { default as LiteralMessage } from './lib/LiteralMessage';
|
|
21
|
+
import { default as CommandDispatcher } from './lib/CommandDispatcher';
|
|
22
|
+
|
|
23
|
+
declare const word: typeof import("./lib/arguments/StringArgumentType").default.word, string: typeof import("./lib/arguments/StringArgumentType").default.string, greedyString: typeof import("./lib/arguments/StringArgumentType").default.greedyString, bool: typeof import("./lib/arguments/BoolArgumentType").default.bool, integer: typeof import("./lib/arguments/IntegerArgumentType").default.integer, float: typeof import("./lib/arguments/FloatArgumentType").default.float;
|
|
24
|
+
export { word, string, greedyString, bool, integer, float, literal, argument, CommandDispatcher, LiteralMessage, ParseResults, StringReader, LiteralArgumentBuilder, RequiredArgumentBuilder, CommandContext, CommandContextBuilder, ParsedArgument, ParsedCommandNode, StringRange, SuggestionsContext, CommandSyntaxException, SimpleCommandExceptionType, DynamicCommandExceptionType, Suggestion, Suggestions, SuggestionsBuilder, ArgumentCommandNode, LiteralCommandNode, RootCommandNode };
|
|
25
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAClD,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAE9C,OAAO,sBAAsB,EAAE,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,uBAAuB,EAAE,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,qBAAqB,MAAM,qCAAqC,CAAC;AACxE,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,sBAAsB,MAAM,yCAAyC,CAAC;AAC7E,OAAO,2BAA2B,MAAM,8CAA8C,CAAC;AACvF,OAAO,0BAA0B,MAAM,6CAA6C,CAAC;AACrF,OAAO,UAAU,MAAM,6BAA6B,CAAC;AACrD,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,kBAAkB,MAAM,qCAAqC,CAAC;AACrE,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AACjE,OAAO,kBAAkB,MAAM,+BAA+B,CAAC;AAC/D,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,QAAA,MAAQ,IAAI,oEAAE,MAAM,sEAAE,YAAY,4EAAE,IAAI,kEAAE,OAAO,wEAAE,KAAK,kEAAgB,CAAC;AAEzE,OAAO,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,OAAO,EACP,QAAQ,EACR,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EAClB,CAAC"}
|
package/dist/index.es.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export { default as CommandDispatcher } from './lib/CommandDispatcher.es.js';
|
|
2
|
+
export { default as LiteralMessage } from './lib/LiteralMessage.es.js';
|
|
3
|
+
export { default as ParseResults } from './lib/ParseResults.es.js';
|
|
4
|
+
export { default as StringReader } from './lib/StringReader.es.js';
|
|
5
|
+
import { DefaultType } from './lib/arguments/ArgumentType.es.js';
|
|
6
|
+
export { L as LiteralArgumentBuilder, a as LiteralCommandNode, l as literal } from './LiteralArgumentBuilder-2hpX2C86.js';
|
|
7
|
+
export { A as ArgumentCommandNode, R as RequiredArgumentBuilder, a as argument } from './RequiredArgumentBuilder-D105occO.js';
|
|
8
|
+
export { default as CommandContext } from './lib/context/CommandContext.es.js';
|
|
9
|
+
export { default as CommandContextBuilder } from './lib/context/CommandContextBuilder.es.js';
|
|
10
|
+
export { default as ParsedArgument } from './lib/context/ParsedArgument.es.js';
|
|
11
|
+
export { default as ParsedCommandNode } from './lib/context/ParsedCommandNode.es.js';
|
|
12
|
+
export { default as StringRange } from './lib/context/StringRange.es.js';
|
|
13
|
+
export { default as SuggestionsContext } from './lib/context/SuggestionContext.es.js';
|
|
14
|
+
export { C as CommandSyntaxException, D as DynamicCommandExceptionType, S as SimpleCommandExceptionType } from './CommandSyntaxException-Dz8Qlq9d.js';
|
|
15
|
+
export { default as Suggestion } from './lib/suggestion/Suggestion.es.js';
|
|
16
|
+
export { default as Suggestions } from './lib/suggestion/Suggestions.es.js';
|
|
17
|
+
export { default as SuggestionsBuilder } from './lib/suggestion/SuggestionsBuilder.es.js';
|
|
18
|
+
export { default as RootCommandNode } from './lib/tree/RootCommandNode.es.js';
|
|
19
|
+
import './lib/arguments/BoolArgumentType.es.js';
|
|
20
|
+
import './lib/arguments/FloatArgumentType.es.js';
|
|
21
|
+
import './lib/arguments/IntegerArgumentType.es.js';
|
|
22
|
+
import './lib/arguments/StringArgumentType.es.js';
|
|
23
|
+
import './lib/tree/CommandNode.es.js';
|
|
24
|
+
import './lib/util/isEqual.es.js';
|
|
25
|
+
import './lib/builder/ArgumentBuilder.es.js';
|
|
26
|
+
import './lib/suggestion/IntegerSuggestion.es.js';
|
|
27
|
+
|
|
28
|
+
const { word, string, greedyString, bool, integer, float } = DefaultType;
|
|
29
|
+
|
|
30
|
+
export { bool, float, greedyString, integer, string, word };
|
|
31
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29tbWFuZERpc3BhdGNoZXIgZnJvbSAnLi9saWIvQ29tbWFuZERpc3BhdGNoZXInO1xuaW1wb3J0IExpdGVyYWxNZXNzYWdlIGZyb20gJy4vbGliL0xpdGVyYWxNZXNzYWdlJztcbmltcG9ydCBQYXJzZVJlc3VsdHMgZnJvbSAnLi9saWIvUGFyc2VSZXN1bHRzJztcbmltcG9ydCBTdHJpbmdSZWFkZXIgZnJvbSAnLi9saWIvU3RyaW5nUmVhZGVyJztcbmltcG9ydCB7IERlZmF1bHRUeXBlIH0gZnJvbSAnLi9saWIvYXJndW1lbnRzL0FyZ3VtZW50VHlwZSc7XG5pbXBvcnQgTGl0ZXJhbEFyZ3VtZW50QnVpbGRlciwgeyBsaXRlcmFsIH0gZnJvbSAnLi9saWIvYnVpbGRlci9MaXRlcmFsQXJndW1lbnRCdWlsZGVyJztcbmltcG9ydCBSZXF1aXJlZEFyZ3VtZW50QnVpbGRlciwgeyBhcmd1bWVudCB9IGZyb20gJy4vbGliL2J1aWxkZXIvUmVxdWlyZWRBcmd1bWVudEJ1aWxkZXInO1xuaW1wb3J0IENvbW1hbmRDb250ZXh0IGZyb20gJy4vbGliL2NvbnRleHQvQ29tbWFuZENvbnRleHQnO1xuaW1wb3J0IENvbW1hbmRDb250ZXh0QnVpbGRlciBmcm9tICcuL2xpYi9jb250ZXh0L0NvbW1hbmRDb250ZXh0QnVpbGRlcic7XG5pbXBvcnQgUGFyc2VkQXJndW1lbnQgZnJvbSAnLi9saWIvY29udGV4dC9QYXJzZWRBcmd1bWVudCc7XG5pbXBvcnQgUGFyc2VkQ29tbWFuZE5vZGUgZnJvbSAnLi9saWIvY29udGV4dC9QYXJzZWRDb21tYW5kTm9kZSc7XG5pbXBvcnQgU3RyaW5nUmFuZ2UgZnJvbSAnLi9saWIvY29udGV4dC9TdHJpbmdSYW5nZSc7XG5pbXBvcnQgU3VnZ2VzdGlvbnNDb250ZXh0IGZyb20gJy4vbGliL2NvbnRleHQvU3VnZ2VzdGlvbkNvbnRleHQnO1xuaW1wb3J0IENvbW1hbmRTeW50YXhFeGNlcHRpb24gZnJvbSAnLi9saWIvZXhjZXB0aW9ucy9Db21tYW5kU3ludGF4RXhjZXB0aW9uJztcbmltcG9ydCBEeW5hbWljQ29tbWFuZEV4Y2VwdGlvblR5cGUgZnJvbSAnLi9saWIvZXhjZXB0aW9ucy9EeW5hbWljQ29tbWFuZEV4Y2VwdGlvblR5cGUnO1xuaW1wb3J0IFNpbXBsZUNvbW1hbmRFeGNlcHRpb25UeXBlIGZyb20gJy4vbGliL2V4Y2VwdGlvbnMvU2ltcGxlQ29tbWFuZEV4Y2VwdGlvblR5cGUnO1xuaW1wb3J0IFN1Z2dlc3Rpb24gZnJvbSAnLi9saWIvc3VnZ2VzdGlvbi9TdWdnZXN0aW9uJztcbmltcG9ydCBTdWdnZXN0aW9ucyBmcm9tICcuL2xpYi9zdWdnZXN0aW9uL1N1Z2dlc3Rpb25zJztcbmltcG9ydCBTdWdnZXN0aW9uc0J1aWxkZXIgZnJvbSAnLi9saWIvc3VnZ2VzdGlvbi9TdWdnZXN0aW9uc0J1aWxkZXInO1xuaW1wb3J0IEFyZ3VtZW50Q29tbWFuZE5vZGUgZnJvbSAnLi9saWIvdHJlZS9Bcmd1bWVudENvbW1hbmROb2RlJztcbmltcG9ydCBMaXRlcmFsQ29tbWFuZE5vZGUgZnJvbSAnLi9saWIvdHJlZS9MaXRlcmFsQ29tbWFuZE5vZGUnO1xuaW1wb3J0IFJvb3RDb21tYW5kTm9kZSBmcm9tICcuL2xpYi90cmVlL1Jvb3RDb21tYW5kTm9kZSc7XG5cbmNvbnN0IHsgd29yZCwgc3RyaW5nLCBncmVlZHlTdHJpbmcsIGJvb2wsIGludGVnZXIsIGZsb2F0IH0gPSBEZWZhdWx0VHlwZTtcblxuZXhwb3J0IHtcbiAgICB3b3JkLFxuICAgIHN0cmluZyxcbiAgICBncmVlZHlTdHJpbmcsXG4gICAgYm9vbCxcbiAgICBpbnRlZ2VyLFxuICAgIGZsb2F0LFxuICAgIGxpdGVyYWwsXG4gICAgYXJndW1lbnQsXG4gICAgQ29tbWFuZERpc3BhdGNoZXIsXG4gICAgTGl0ZXJhbE1lc3NhZ2UsXG4gICAgUGFyc2VSZXN1bHRzLFxuICAgIFN0cmluZ1JlYWRlcixcbiAgICBMaXRlcmFsQXJndW1lbnRCdWlsZGVyLFxuICAgIFJlcXVpcmVkQXJndW1lbnRCdWlsZGVyLFxuICAgIENvbW1hbmRDb250ZXh0LFxuICAgIENvbW1hbmRDb250ZXh0QnVpbGRlcixcbiAgICBQYXJzZWRBcmd1bWVudCxcbiAgICBQYXJzZWRDb21tYW5kTm9kZSxcbiAgICBTdHJpbmdSYW5nZSxcbiAgICBTdWdnZXN0aW9uc0NvbnRleHQsXG4gICAgQ29tbWFuZFN5bnRheEV4Y2VwdGlvbixcbiAgICBTaW1wbGVDb21tYW5kRXhjZXB0aW9uVHlwZSxcbiAgICBEeW5hbWljQ29tbWFuZEV4Y2VwdGlvblR5cGUsXG4gICAgU3VnZ2VzdGlvbixcbiAgICBTdWdnZXN0aW9ucyxcbiAgICBTdWdnZXN0aW9uc0J1aWxkZXIsXG4gICAgQXJndW1lbnRDb21tYW5kTm9kZSxcbiAgICBMaXRlcmFsQ29tbWFuZE5vZGUsXG4gICAgUm9vdENvbW1hbmROb2RlXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXVCQSxNQUFNLEVBQUUsSUFBTSxFQUFBLE1BQUEsRUFBUSxjQUFjLElBQU0sRUFBQSxPQUFBLEVBQVMsT0FBVSxHQUFBOzs7OyJ9
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { default as CommandNode } from './tree/CommandNode';
|
|
2
|
+
|
|
3
|
+
export default interface AmbiguityConsumer<S> {
|
|
4
|
+
ambiguous(parent: CommandNode<S>, child: CommandNode<S>, sibling: CommandNode<S>, inputs: Iterable<string>): void;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=AmbiguityConsumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmbiguityConsumer.d.ts","sourceRoot":"","sources":["../../src/lib/AmbiguityConsumer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAC;AAElD,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;CACrH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../src/lib/Command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,cAAc,MAAM,0BAA0B,CAAC;AAE3D,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC,CAAC;IAC9B,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC9C"}
|