import fs from 'node:fs'; import path from 'node:path'; import { fileURLToPath } from 'node:url'; const currentFile = fileURLToPath(import.meta.url); const __dirname = path.dirname(currentFile); const projectRoot = path.resolve(__dirname, '..'); export const seoContentDir = path.resolve(projectRoot, 'seo', 'content'); export function normalizeRouteFromMarkdown(relativePath) { const normalized = relativePath .replace(/\\/g, '/') .replace(/\/index\.md$/, '') .replace(/\.md$/, ''); return normalized ? `/blog/${normalized}/` : '/blog/'; } export function collectMarkdownFiles(dir, bucket = []) { if (!fs.existsSync(dir)) { return bucket; } for (const entry of fs.readdirSync(dir, { withFileTypes: true })) { if (entry.name.startsWith('.')) { continue; } const fullPath = path.join(dir, entry.name); if (entry.isDirectory()) { collectMarkdownFiles(fullPath, bucket); continue; } if (entry.isFile() && entry.name.endsWith('.md')) { bucket.push(fullPath); } } return bucket; }