Files
FastGPT/document/meta.js
Archer fe7abf22a9 New document (#5299)
* add new doc (#5175)

Co-authored-by: dreamer6680 <146868355@qq.com>

* Test docs (#5235)

* fix: change the page of doc

* chore: add new dependencies, update global styles/layout, optimize docs, add Feishu & GitHub icons, update API examples

* fix: docs/index 404 not found

* Update environment variable names, optimize styles, add new API routes, fix component styles, adjust documentation, and update GitHub and Feishu icons

* update readme

* feat: add a linkfastgpt compontent

* feat: update new doc

* fix:remove unuse page and redirect homepage to docs (#5288)

* fix:remove some unuse doc

* fix: redirect homepage to doc

* git ignore

* fix:navbar to index (#5295)

* sidbar

* fix: navtab unlight (#5298)

* doc

---------

Co-authored-by: dreamer6680 <1468683855@qq.com>
Co-authored-by: dreamer6680 <146868355@qq.com>
2025-07-23 21:35:03 +08:00

60 lines
1.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import fs from 'fs-extra';
import path from 'path';
async function generateMeta(dir) {
const entries = await fs.readdir(dir, { withFileTypes: true });
const pages = [];
for (const entry of entries) {
if (entry.isDirectory()) {
pages.push(entry.name);
} else if (
entry.isFile() &&
entry.name.endsWith('.mdx') &&
!entry.name.endsWith('.en.mdx')
) {
const nameWithoutExt = entry.name.replace(/\.mdx$/, '');
pages.push(nameWithoutExt);
}
}
const metaPath = path.join(dir, 'meta.json');
// 使用 JSON.stringifyspaces设为2数组不换行
// 通过 replacer 参数实现“pages”数组一行
const jsonString = JSON.stringify(
{ pages },
(key, value) => {
if (key === 'pages') {
return value; // 保持pages数组原样
}
return value;
},
2
);
// 手动替换 pages 数组换行,变成一行显示
const oneLinePages = `"pages": ${JSON.stringify(pages)}`;
const finalJson = jsonString.replace(
/"pages": \[[^\]]*\]/,
oneLinePages
);
await fs.writeFile(metaPath, finalJson, 'utf-8');
console.log(`Generated meta.json in ${dir}`);
// 递归处理子目录
for (const entry of entries) {
if (entry.isDirectory()) {
await generateMeta(path.join(dir, entry.name));
}
}
}
const targetDir = './content/docs/development/openapi';
generateMeta(targetDir)
.then(() => console.log('All meta.json files generated!'))
.catch((err) => console.error(err));