site: refactor doc utils

This commit is contained in:
Glen Huang
2025-10-08 12:33:13 +08:00
committed by Johannes Kirschbauer
parent 4ba722dd36
commit bf46ea1ebb

View File

@@ -75,7 +75,15 @@ export async function normalizeNavLink(
};
}
if (!("items" in navLink)) {
if ("items" in navLink) {
return {
...navLink,
collapsed: !!navLink.collapsed,
badge: normalizeBadge(navLink.badge),
items: await Promise.all(navLink.items.map(normalizeNavLink)),
};
}
if ("slug" in navLink) {
const article = articles[navLink.slug];
if (!article) {
@@ -88,6 +96,7 @@ export async function normalizeNavLink(
external: false,
};
}
if ("autogenerate" in navLink) {
const dir = navLink.autogenerate.directory;
const articleEntries = Object.entries(articles).filter(([key]) =>
@@ -145,18 +154,11 @@ export async function normalizeNavLink(
badge: normalizeBadge(navLink.badge),
};
}
return {
...navLink,
badge: normalizeBadge(navLink.badge),
external: /^https?:\/\//.test(navLink.link),
};
}
return {
...navLink,
collapsed: !!navLink.collapsed,
badge: normalizeBadge(navLink.badge),
items: await Promise.all(navLink.items.map(normalizeNavLink)),
external: /^(https?:)?\/\//.test(navLink.link),
};
}