From 786fdbb1362966a6945514147e8f2adde8d964c1 Mon Sep 17 00:00:00 2001 From: Ricky Vetter Date: Mon, 11 Dec 2017 21:38:11 -0800 Subject: [PATCH] add wrapPagesHTML which renders html snippets in pages inside of a header + footer --- lib/server/generate.js | 10 ++++++++++ lib/server/server.js | 14 +++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/lib/server/generate.js b/lib/server/generate.js index b804b77262..611b917640 100644 --- a/lib/server/generate.js +++ b/lib/server/generate.js @@ -452,6 +452,16 @@ function execute() { writeFileAndCreateFolder(targetFile, str); } fs.removeSync(tempFile); + } else if (siteConfig.wrapPagesHTML && file.match(/\.html$/)) { + const parts = file.split('pages'); + const targetFile = join(buildDir, parts[1]); + const str = renderToStaticMarkup( + +
+ + ); + + writeFileAndCreateFolder(targetFile, str); } else if (!fs.lstatSync(file).isDirectory()) { // copy other non .js files let parts = file.split('pages'); diff --git a/lib/server/server.js b/lib/server/server.js index c0619812fd..8969c795a7 100644 --- a/lib/server/server.js +++ b/lib/server/server.js @@ -375,7 +375,19 @@ function execute(port) { )) ) ) { - res.send(fs.readFileSync(htmlFile, {encoding: 'utf8'})); + if (siteConfig.wrapPagesHTML) { + removeModuleAndChildrenFromCache("../core/Site.js"); + const Site = require("../core/Site.js"); + const str = renderToStaticMarkup( + +
+ + ); + + res.send(str); + } else { + res.send(fs.readFileSync(htmlFile, { encoding: "utf8" })); + } return; }