123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- const merge = require('webpack-merge').merge;
- const MiniCssExtractPlugin = require('mini-css-extract-plugin');
- const HtmlWebpackPlugin = require('html-webpack-plugin');
- const ESLintPlugin = require('eslint-webpack-plugin');
- const ProgressBarWebpackPlugin = require('progress-bar-webpack-plugin');
- const webpack = require('webpack');
- const path = require('path');
- const common = require('./webpack.config.js');
- const resolve = (url) => path.resolve(__dirname, "..", url);
- module.exports = merge(common, {
- mode: 'development',
- devtool: 'inline-source-map',
- plugins: [
- new ESLintPlugin({
- overrideConfigFile: resolve(".eslintrc.js"),
- context: resolve("src"),
- extensions: ['ts', 'js'],
- fix: true,
- }),
- new ProgressBarWebpackPlugin(),
- new HtmlWebpackPlugin({
- template: './index.html',
- title: 'luckysheet-io',
- scriptLoading: 'blocking',
- }),
- new MiniCssExtractPlugin({
- filename: 'css/[name].[contenthash].css',
- }),
- new webpack.ProvidePlugin({
- process: 'process/browser'
- })
- ],
- output: {
- filename: 'js/[name].[contenthash].js',
- library: 'luckysheet-io',
- libraryTarget: 'umd',
- },
- devServer: {
- host: '127.0.0.1',
- port: 'auto',
- static: './',
- hot: true,
- bonjour: true,
- client: {
- progress: true,
- overlay: true,
- },
- },
- });
|