swc/crates/swc_bundler/tests/.cache/deno/78684882ae1fd30151abacef77d1f388b92a405b.ts
2021-11-09 20:42:49 +09:00

22 lines
566 B
TypeScript

// Loaded from https://deno.land/x/cliffy@v0.18.0/command/types/child_command.ts
import type { Command } from "../command.ts";
import { StringType } from "./string.ts";
/** String type with auto completion of child command names. */
export class ChildCommandType extends StringType {
#cmd?: Command;
constructor(cmd?: Command) {
super();
this.#cmd = cmd;
}
/** Complete child command names. */
public complete(cmd: Command): string[] {
return (this.#cmd ?? cmd)?.getCommands(false)
.map((cmd: Command) => cmd.getName()) || [];
}
}