/** * Dossiers de présentation sous slides/ (hors wip_*), avec meta.json + slides.md. */ import fs from 'node:fs' import path from 'node:path' export function listPresentationSlugs(root) { const slides = path.join(root, 'slides') if (!fs.existsSync(slides)) return [] return fs .readdirSync(slides, { withFileTypes: true }) .filter((d) => d.isDirectory() && !d.name.startsWith('wip_') && !d.name.startsWith('_')) .map((d) => d.name) .filter((slug) => { return ( fs.existsSync(path.join(slides, slug, 'meta.json')) && fs.existsSync(path.join(slides, slug, 'slides.md')) ) }) }