feat: expose API markdown doc
This commit is contained in:
@@ -7,6 +7,7 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url))
|
||||
const rootDir = path.resolve(__dirname, '..')
|
||||
const dataDir = path.join(rootDir, 'src', 'data')
|
||||
const apiDir = path.join(rootDir, 'public', 'api')
|
||||
const apiDocPath = path.join(rootDir, 'public', 'apidoc')
|
||||
|
||||
function readJson(relativePath) {
|
||||
return JSON.parse(fs.readFileSync(path.join(rootDir, relativePath), 'utf8'))
|
||||
@@ -24,9 +25,21 @@ function writeJson(relativePath, data) {
|
||||
|
||||
function cleanApiDir() {
|
||||
fs.rmSync(apiDir, { recursive: true, force: true })
|
||||
fs.rmSync(apiDocPath, { force: true })
|
||||
ensureDir(apiDir)
|
||||
}
|
||||
|
||||
function writeTextFile(target, content) {
|
||||
ensureDir(path.dirname(target))
|
||||
fs.writeFileSync(target, content, 'utf8')
|
||||
}
|
||||
|
||||
function copyApiDoc() {
|
||||
const source = path.join(rootDir, 'docs', '知识库API接口说明.md')
|
||||
const content = fs.readFileSync(source, 'utf8')
|
||||
writeTextFile(apiDocPath, content)
|
||||
}
|
||||
|
||||
function extractConstArrayFromTs(filePath, constName) {
|
||||
const text = fs.readFileSync(filePath, 'utf8')
|
||||
const marker = `export const ${constName}`
|
||||
@@ -280,4 +293,7 @@ for (const tool of tools) {
|
||||
writeJson(`tools/${tool.id}/usage.json`, toolUsage(tool))
|
||||
}
|
||||
|
||||
copyApiDoc()
|
||||
|
||||
console.log(`已生成静态 API 文件:${path.relative(rootDir, apiDir)}`)
|
||||
console.log(`已生成 Markdown 接口文档:${path.relative(rootDir, apiDocPath)}`)
|
||||
|
||||
Reference in New Issue
Block a user