123456789101112131415161718192021222324252627282930313233343536373839 |
- const { merge } = require('webpack-merge');
- const path = require('path');
- const MiniCssExtractPlugin = require('mini-css-extract-plugin');
- const HtmlWebpackPlugin = require('html-webpack-plugin');
- const ESLintPlugin = require('eslint-webpack-plugin');
- const { CleanWebpackPlugin } = require('clean-webpack-plugin');
- const ProgressBarWebpackPlugin = require('progress-bar-webpack-plugin');
- const common = require('./webpack.config.js');
- const resolve = (url) => path.resolve(__dirname, "..", url);
- module.exports = merge(common, {
- mode: 'production',
- devtool: 'source-map',
- plugins: [
- new ESLintPlugin({
- overrideConfigFile: resolve(".eslintrc.js"),
- context: resolve("src"),
- extensions: ['ts', 'js'],
- fix: true,
- }),
- new ProgressBarWebpackPlugin(),
- new CleanWebpackPlugin(),
- new HtmlWebpackPlugin({
- template: './index.html',
- title: 'sheet-format',
- scriptLoading: 'blocking',
- }),
- new MiniCssExtractPlugin({
- filename: 'css/[name].css',
- }),
- ],
- output: {
- filename: 'js/[name].js',
- libraryTarget: 'umd',
- library: 'sheet-format',
- path: resolve('dist'),
- },
- });
|