Files
oh-my-opencode/packages/omo-codex/plugin/components/ultragoal/src/paths.ts
T

28 lines
1.0 KiB
TypeScript

import { join } from "node:path";
import { ULTRAGOAL_BRIEF, ULTRAGOAL_DIR, ULTRAGOAL_GOALS, ULTRAGOAL_LEDGER } from "./types.js";
export function ultragoalDir(repoRoot: string): string {
return join(repoRoot, ULTRAGOAL_DIR);
}
export function ultragoalBriefPath(repoRoot: string): string {
return join(ultragoalDir(repoRoot), ULTRAGOAL_BRIEF);
}
export function ultragoalGoalsPath(repoRoot: string): string {
return join(ultragoalDir(repoRoot), ULTRAGOAL_GOALS);
}
export function ultragoalLedgerPath(repoRoot: string): string {
return join(ultragoalDir(repoRoot), ULTRAGOAL_LEDGER);
}
export function repoRelative(absolutePath: string, repoRoot: string): string {
const slashPrefix = `${repoRoot}/`;
const backslashPrefix = `${repoRoot}\\`;
if (absolutePath.startsWith(slashPrefix)) return absolutePath.slice(slashPrefix.length).split("\\").join("/");
if (absolutePath.startsWith(backslashPrefix))
return absolutePath.slice(backslashPrefix.length).split("\\").join("/");
return absolutePath.split("\\").join("/");
}