/** * pi-rewind — UI helpers * * Footer status and notifications. */ import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import type { RewindState } from "./state.js"; const STATUS_KEY = "rewind"; /** Update footer status with checkpoint count */ export function updateStatus(state: RewindState, ctx: ExtensionContext): void { if (!ctx.hasUI) return; if (!state.gitAvailable) { ctx.ui.setStatus(STATUS_KEY, undefined); return; } const count = state.checkpoints.size; if (count <= 0) { ctx.ui.setStatus(STATUS_KEY, undefined); return; } ctx.ui.setStatus(STATUS_KEY, ctx.ui.theme.fg("dim", `${count} ckpt`)); } /** Clear status */ export function clearStatus(ctx: ExtensionContext): void { if (!ctx.hasUI) return; ctx.ui.setStatus(STATUS_KEY, undefined); }