DocSpace-buildtools/web/ASC.Web.Editor/webpack/webpack.server.js
2022-07-15 18:50:57 +03:00

42 lines
999 B
JavaScript

const { merge } = require("webpack-merge");
const baseConfig = require("./webpack.base.js");
const webpackNodeExternals = require("webpack-node-externals");
const TerserPlugin = require("terser-webpack-plugin");
const path = require("path");
const DefinePlugin = require("webpack").DefinePlugin;
const serverConfig = {
target: "node",
mode: "development",
name: "server",
entry: {
server: "./src/server/index.js",
},
output: {
path: path.resolve(process.cwd(), "dist/"),
filename: "[name].js",
libraryTarget: "commonjs2",
chunkFilename: "chunks/[name].js",
},
externals: [webpackNodeExternals(), { express: "express" }],
};
module.exports = (env, argv) => {
if (argv.mode === "production") {
serverConfig.plugins = [
new DefinePlugin({
IS_DEVELOPMENT: false,
}),
];
} else {
serverConfig.plugins = [
new DefinePlugin({
IS_DEVELOPMENT: true,
}),
];
}
return merge(baseConfig, serverConfig);
};