const path = require('path');
const express = require('express');
const compression = require('compression');
const pkg = require('../../package.json');
module.exports = function addProdMiddlewares(app, options) {
  const publicPath = options.publicPath || pkg.name.toLocaleLowerCase() || '/';
  const outputPath =
    options.outputPath ||
    path.resolve(process.cwd(), pkg.name.toLocaleLowerCase());

  // compression middleware compresses your server responses which makes them
  // smaller (applies also to assets). You can read more about that technique
  // and other good practices on official Express.js docs http://mxs.is/googmy
  app.use(compression());
  app.use(publicPath, express.static(outputPath));

  app.get('*', (req, res) =>
    res.sendFile(path.resolve(outputPath, 'index.html')),
  );
};
