diff options
author | Sebastian <sebasjm@gmail.com> | 2022-12-06 09:21:17 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2022-12-06 09:21:17 -0300 |
commit | e382b022030db96b8282337b304ec5e599a5f405 (patch) | |
tree | 6ba9afb72a1b3e5ce35f37a987d74286b0e45c92 /packages/web-util/src/cli.ts | |
parent | 219e48f35196e54361dc17d6ca7de6e095c46eeb (diff) | |
download | wallet-core-e382b022030db96b8282337b304ec5e599a5f405.tar.xz |
web-util: utils for developing webapps
Diffstat (limited to 'packages/web-util/src/cli.ts')
-rw-r--r-- | packages/web-util/src/cli.ts | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/packages/web-util/src/cli.ts b/packages/web-util/src/cli.ts new file mode 100644 index 000000000..59cfe9989 --- /dev/null +++ b/packages/web-util/src/cli.ts @@ -0,0 +1,59 @@ + +import { + clk, setGlobalLogLevelFromString +} from "@gnu-taler/taler-util"; +import { serve } from "./serve.js"; + + +export const walletCli = clk + .program("wallet", { + help: "Command line interface for the GNU Taler wallet.", + }) + .maybeOption("log", ["-L", "--log"], clk.STRING, { + help: "configure log level (NONE, ..., TRACE)", + onPresentHandler: (x) => { + setGlobalLogLevelFromString(x); + }, + }) + .flag("version", ["-v", "--version"], { + onPresentHandler: printVersion, + }) + .flag("verbose", ["-V", "--verbose"], { + help: "Enable verbose output.", + }) + +walletCli + .subcommand("serve", "serve", { help: "Create a server." }) + .maybeOption("folder", ["-F", "--folder"], clk.STRING, { + help: "should complete", + // default: "./dist" + }) + .maybeOption("port", ["-P", "--port"], clk.INT, { + help: "should complete", + // default: 8000 + }) + .flag("development", ["-D", "--dev"], { + help: "should complete", + }) + .action(async (args) => { + return serve({ + folder: args.serve.folder || "./dist", + port: args.serve.port || 8000, + development: args.serve.development + }) + } + ); + + + +declare const __VERSION__: string; +function printVersion(): void { + console.log(__VERSION__); + process.exit(0); +} + +export function main(): void { + walletCli.run(); +} + + |