import { Hono } from 'hono'; import { urlFor, safeRel } from '../files.js'; import { buildSite } from '../hugo.js'; // Echte Hugo-Vorschau: ganze Site mit --buildDrafts nach preview/ bauen und die // URL des Eintrags zurückgeben (so erscheinen auch draft:true-Einträge). const preview = new Hono(); preview.post('/', async (c) => { const { path: rel } = await c.req.json(); try { const safe = safeRel(rel); const build = await buildSite({ dest: 'preview', drafts: true }); return c.json({ ok: true, url: `/_preview${urlFor(safe)}`, hugo: build.stdout }); } catch (e) { return c.json({ error: String(e.message || e) }, 500); } }); export default preview;