import { defineMintlifyI18n, mintlifyPlugin, readMintlifyDocs } from "@fumapress/mintlify"; import { defineConfig } from "fumapress"; import type { Folder, Node as PageTreeNode, Root, Separator } from "fumadocs-core/page-tree"; import { fumadocsMdx } from "fumapress/adapters/mdx"; import { flexsearchPlugin } from "fumapress/plugins/flexsearch"; import { openapiPlugin } from "fumapress/plugins/openapi"; import { robotsPlugin } from "fumapress/plugins/robots"; import { update } from "fumadocs-core/source"; import { uiTranslations } from "fumadocs-ui/i18n"; import { defineDocs } from "fumadocs-mdx/macro"; import { createOpenAPI, type OpenAPIServer } from "fumadocs-openapi/server"; import { Blocks, Bot, Cloud, ExternalLink, Map as MapIcon, Newspaper } from "lucide-react"; import { readFileSync, readdirSync } from "node:fs"; import path from "node:path"; import { LocalePreferenceProvider } from "./src/locale-preference-provider"; const SITE_URL = "https://langbot.app/docs"; const LOCALES = ["en", "zh", "ja"] as const; const MINTLIFY_LOCALE = { en: "en", zh: "cn", ja: "jp" } as const; const HREFLANG = { en: "en", zh: "zh-CN", ja: "ja" } as const; const mintlifyDocs = readMintlifyDocs(); function nodeName(node: PageTreeNode) { return typeof node.name === "string" ? node.name : ""; } function renderNavigationIcon(icon: PageTreeNode["icon"]) { if (icon === "robot") { return