tcmts.vscode.changes

Types

BranchItem type
A branch, for the editor: whether it's this one, how many names differ from this one's, and when it last changed.
ChangesNode type
What the Changes view shows: its two groups, branches, history entries, the names an entry changed, and "more".
ChangesTree typeof ChangesTree
The Changes view: the codebase's branches (how many names differ from this one's) and this branch's history, each entry the command that made it and, opened, the names it changed. An edited definition opens as a diff of its code before and after; anything else opens its page.
HistoryItem type
A history entry, for the editor: `back` is how many entries back it is on its branch (what `tcm reset` takes).
NameChange type
A name that changed, as `tcm diff` sorts it: its code edited, re-hashed only because what it uses changed (`because`), added, removed, renamed (`from`), given another name (`existing`), or conflicted. `old` and `hash` are the hashes before and after, `oldUri` and `uri` their documents (a file has none: it opens as a page).

Server

runTcm (args: string[], cwd: string | undefined) => Promise<{ code: number | null; out: string; }>
Run tcm in `cwd` and collect what it prints (without colour).

Shared

CHANGES Record<"added" | "aliased" | "conflicted" | "edited" | "propagated" | "removed" | "renamed", [strin…
Each kind of name change: what it says, and its icon and colour (git's, for added, edited, removed).
ago (ts: number, now?: number) => string
How long ago `ts` was, as a person says it.
changesCommands (tree: ChangesTree, cwd: string | undefined) => Disposable[]
The Changes view's commands: the changes a history entry made or a branch has (`tcm diff`, as a document), resetting the names to an entry, merging a branch into this one, and showing more history.