summaryrefslogtreecommitdiffstats
path: root/front/odiparpack/server/middlewares/addDevMiddlewares.js
diff options
context:
space:
mode:
authorgabrhr <[email protected]>2022-04-20 10:19:29 -0500
committergabrhr <[email protected]>2022-04-20 10:19:29 -0500
commite13e630cd6e4fc0b1ff92098a28a770794c7bb9a (patch)
treee68ad2f947d1b3ec454529b35f37ca2f223e5431 /front/odiparpack/server/middlewares/addDevMiddlewares.js
parent457816ac1129fcc6019d2fc795b6693ee6776d59 (diff)
downloadDP1_project-e13e630cd6e4fc0b1ff92098a28a770794c7bb9a.tar.gz
DP1_project-e13e630cd6e4fc0b1ff92098a28a770794c7bb9a.tar.bz2
DP1_project-e13e630cd6e4fc0b1ff92098a28a770794c7bb9a.zip
AƱadir plantilla
Base para front
Diffstat (limited to 'front/odiparpack/server/middlewares/addDevMiddlewares.js')
-rw-r--r--front/odiparpack/server/middlewares/addDevMiddlewares.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/front/odiparpack/server/middlewares/addDevMiddlewares.js b/front/odiparpack/server/middlewares/addDevMiddlewares.js
new file mode 100644
index 0000000..495b4a2
--- /dev/null
+++ b/front/odiparpack/server/middlewares/addDevMiddlewares.js
@@ -0,0 +1,38 @@
+const path = require('path');
+const webpack = require('webpack');
+const webpackDevMiddleware = require('webpack-dev-middleware');
+const webpackHotMiddleware = require('webpack-hot-middleware');
+
+function createWebpackMiddleware(compiler, publicPath) {
+ return webpackDevMiddleware(compiler, {
+ logLevel: 'warn',
+ publicPath,
+ silent: true,
+ stats: 'errors-only',
+ });
+}
+
+module.exports = function addDevMiddlewares(app, webpackConfig) {
+ const compiler = webpack(webpackConfig);
+ const middleware = createWebpackMiddleware(
+ compiler,
+ webpackConfig.output.publicPath,
+ );
+
+ app.use(middleware);
+ app.use(webpackHotMiddleware(compiler));
+
+ // Since webpackDevMiddleware uses memory-fs internally to store build
+ // artifacts, we use it instead
+ const fs = middleware.fileSystem;
+
+ app.get('*', (req, res) => {
+ fs.readFile(path.join(compiler.outputPath, 'index.html'), (err, file) => {
+ if (err) {
+ res.sendStatus(404);
+ } else {
+ res.send(file.toString());
+ }
+ });
+ });
+};