runRemote
uses tcmts.cli.main.execute, which uses tcmts.cli.help.usageError, which uses tcmts.cli.help.usageOf, which uses tcmts.cli.style.bold, which uses node:util
Runs tcm remote.
import { routeRemote } from "#codebase/tcmts/cli/commands"; import { execute } from "#codebase/tcmts/cli/main"; import type { Context } from "#codebase/tcmts/cli/run"; import { bold, dim } from "#codebase/tcmts/cli/style"; import { addRemote, listRemotes } from "#codebase/tcmts/cli/sync"; import { parse } from "@bomb.sh/router"; export function runRemote({ cb, cmd, rest }: Context): number { const r = execute(cmd, parse(routeRemote(), { argv: rest })); if (r.route === "/add") { addRemote(cb, r.model.remote, r.model.url, r.model.token, r.model.fingerprint); console.log(`added remote ${r.model.remote}`); } else if (r.route === "/rm") { cb.store.deleteSetting(`remote.${r.model.remote}`); console.log(`removed remote ${r.model.remote}`); } else { const remotes = listRemotes(cb); if (!remotes.length) console.log(dim("no remotes; add one with `tcm remote add <name> <url|path>`")); for (const [n, c] of remotes) console.log(`${bold(n)} ${c.url}${c.token ? dim(" (token)") : ""}`); } return 0; }
uses
- tcmts.cli.commands.routeRemote
- tcmts.cli.main.execute
- tcmts.cli.run.Context
- tcmts.cli.style.bold
- tcmts.cli.style.dim
- tcmts.cli.sync.addRemote
- tcmts.cli.sync.listRemotes