initial commit
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
const path = require("path");
|
||||
const fs = require("fs");
|
||||
|
||||
const DEFAULT_OPTIONS = {
|
||||
withSSR: { metadata: { title: "", description: "" } },
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
withSSR(options = DEFAULT_OPTIONS.withSSR) {
|
||||
options = { ...DEFAULT_OPTIONS.withSSR, ...options };
|
||||
|
||||
return async function (_, res, next) {
|
||||
try {
|
||||
const file = fs.readFileSync(
|
||||
path.join(__dirname, "dist", "index.html"),
|
||||
"utf-8"
|
||||
);
|
||||
|
||||
if (!file) {
|
||||
return next();
|
||||
}
|
||||
|
||||
const title = options.metadata?.title;
|
||||
const description = options.metadata?.description;
|
||||
const version = options.version ?? "1.0.0";
|
||||
console.log(options);
|
||||
const final = file
|
||||
?.replace(new RegExp("{{{title}}}", "g"), title)
|
||||
?.replace(new RegExp("{{{description}}}", "g"), description);
|
||||
// ?.replace("__BUILDNUMBER__", version);
|
||||
|
||||
return res.status(200).send(final);
|
||||
} catch (error) {
|
||||
if (process.env.DEBUG === "TRUE") {
|
||||
console.log("React SSR Error", error, __filename);
|
||||
}
|
||||
return next();
|
||||
}
|
||||
};
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user