mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2024-11-25 11:16:31 -05:00
5552be1412
Beginning with esbuild-loader 3 it uses iife for web bundles to avoid pollution of the "window" object. However, this broke our prod bundle because some variables should go into the global namespace. See https://github.com/esbuild-kit/esbuild-loader/releases/tag/v3.0.0 Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
41 lines
1 KiB
JavaScript
41 lines
1 KiB
JavaScript
const common = require('./webpack.common.js')
|
|
const htmlexport = require('./webpack.htmlexport')
|
|
const { merge } = require('webpack-merge')
|
|
const path = require('path')
|
|
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin')
|
|
const { EsbuildPlugin } = require('esbuild-loader')
|
|
|
|
module.exports = [
|
|
merge(common, {
|
|
mode: 'production',
|
|
output: {
|
|
path: path.join(__dirname, 'public/build'),
|
|
publicPath: 'build/',
|
|
filename: '[name].[contenthash].js'
|
|
},
|
|
optimization: {
|
|
minimizer: [
|
|
new EsbuildPlugin({
|
|
target: 'es2015',
|
|
format: "cjs",
|
|
exclude: ['MathJax/extensions/a11y/mathmaps']
|
|
})
|
|
],
|
|
splitChunks: {
|
|
chunks: 'all'
|
|
}
|
|
},
|
|
devtool: 'source-map'
|
|
}),
|
|
merge(htmlexport, {
|
|
mode: 'production',
|
|
optimization: {
|
|
minimizer: [
|
|
new EsbuildPlugin({
|
|
target: 'es2015',
|
|
format: "cjs"
|
|
}),
|
|
new OptimizeCSSAssetsPlugin({})
|
|
]
|
|
}
|
|
})]
|