import fs from "fs" import path from "path" import { remark } from "remark" import html from "remark-html" function markdownToHtml(markdown) { return markdown .replace(/^### (.*$)/gim, "

$1

") // Convertir ### en

.replace(/^## (.*$)/gim, "

$1

") // Convertir ## en

.replace(/^# (.*$)/gim, "

$1

") // Convertir # en

.replace(/\*\*(.*?)\*\*/gim, "$1") // Convertir **negrita** en .replace(/\*(.*?)\*/gim, "$1") // Convertir *cursiva* en .replace(/`(.*?)`/gim, "$1") // Convertir `código` en .replace(/^- (.*$)/gim, "
  • $1
") // Convertir listas en
    .replace(/\n/g, "
    ") // Mantener los saltos de línea } async function getChangelog() { const changelogPath = path.join(process.cwd(), "..", "CHANGELOG.md") try { const fileContents = fs.readFileSync(changelogPath, "utf8") // Convertimos Markdown a HTML manualmente const formattedContent = markdownToHtml(fileContents) // Usamos remark-html como último paso const result = await remark().use(html).process(formattedContent) return result.toString() } catch (error) { console.error("Error reading changelog file:", error) return "

    Changelog content not found.

    " } } export default async function ChangelogPage() { const changelogContent = await getChangelog() return (

    Changelog

    ) }