Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | 5x 5x 5x 6x 6x 6x 6x 6x 6x 3x 3x 3x 3x 3x | import express, {Router} from "express"; import {RhizomeNode} from "../node"; import {htmlDocFromMarkdown, MDFiles} from "../util/md-files"; export class HttpHtml { router = Router(); mdFiles: MDFiles; constructor(readonly rhizomeNode: RhizomeNode) { this.mdFiles = new MDFiles(this.rhizomeNode); // Serve README this.router.get('/README', (_req: express.Request, res: express.Response) => { const html = this.mdFiles.getReadmeHTML(); res.setHeader('content-type', 'text/html').send(html); }); // Serve markdown files as html this.router.get('/:name', (req: express.Request, res: express.Response) => { const {name} = req.params; let html = this.mdFiles.getHtml(name); Iif (!html) { res.status(404); html = htmlDocFromMarkdown(`# 404 Not Found: ${name}\n\n ## [Index](/html)`); } res.setHeader('content-type', 'text/html'); res.send(html); }); // Serve index this.router.get('/', (_req: express.Request, res: express.Response) => { res.setHeader('content-type', 'text/html').send(this.mdFiles.indexHtml); }); } start() { // Scan and watch for markdown files this.mdFiles.readDir(); this.mdFiles.readReadme(); this.mdFiles.watchDir(); this.mdFiles.watchReadme(); } stop() { this.mdFiles.stop(); } } |