MCPcopy Create free account
hub / github.com/esmBot/esmBot / parseFlags

Function parseFlags

src/utils/handler.ts:171–190  ·  view source on GitHub ↗

* Convert command flags to params

(flags: ExtendedConstructedCommandOptions[])

Source from the content-addressed store, hash-verified

169 * Convert command flags to params
170 */
171function parseFlags(flags: ExtendedConstructedCommandOptions[]) {
172 const params: Param[] = [];
173 for (const flag of flags) {
174 const convedType = convFlagType(flag.type);
175 if (convedType < 0) throw new Error(`Invalid flag type on ${flag.name}`);
176 flag.type = convedType;
177 if (
178 flag.type === Constants.ApplicationCommandOptionTypes.SUB_COMMAND ||
179 flag.type === Constants.ApplicationCommandOptionTypes.SUB_COMMAND_GROUP
180 ) {
181 const sub = { name: flag.name, desc: flag.description, params: [] as Param[] };
182 if (flag.options) sub.params = parseFlags(flag.options);
183 params.push(sub);
184 } else {
185 if (!flag.classic) continue;
186 params.push(`${flag.required ? "[" : "{"}${flag.name}${flag.required ? "]" : "}"}`);
187 }
188 }
189 return params;
190}
191
192function extendFlags(flags: ExtendedConstructedCommandOptions[], name: string) {
193 const outFlags: ExtendedCommandOptions[] = [];

Callers 1

loadFunction · 0.85

Calls 1

convFlagTypeFunction · 0.85

Tested by

no test coverage detected