28 lines
784 B
TypeScript
28 lines
784 B
TypeScript
import fs from "node:fs";
|
|
import path from "node:path";
|
|
|
|
import { resolveClawdbotPackageRoot } from "../infra/clawdbot-root.js";
|
|
|
|
export async function resolveClawdbotDocsPath(params: {
|
|
workspaceDir?: string;
|
|
argv1?: string;
|
|
cwd?: string;
|
|
moduleUrl?: string;
|
|
}): Promise<string | null> {
|
|
const workspaceDir = params.workspaceDir?.trim();
|
|
if (workspaceDir) {
|
|
const workspaceDocs = path.join(workspaceDir, "docs");
|
|
if (fs.existsSync(workspaceDocs)) return workspaceDocs;
|
|
}
|
|
|
|
const packageRoot = await resolveClawdbotPackageRoot({
|
|
cwd: params.cwd,
|
|
argv1: params.argv1,
|
|
moduleUrl: params.moduleUrl,
|
|
});
|
|
if (!packageRoot) return null;
|
|
|
|
const packageDocs = path.join(packageRoot, "docs");
|
|
return fs.existsSync(packageDocs) ? packageDocs : null;
|
|
}
|