UNPKG

coc-nuxt-iview

Version:

coc engine based implementation for nuxt-iview applications

77 lines (76 loc) 1.84 kB
const pkg = require('./package.json') const webpack = require('webpack') const path = require('path') const VueLoaderPlugin = require('vue-loader/lib/plugin') const UglifyJsPlugin = require("uglifyjs-webpack-plugin"); const MiniCssExtractPlugin = require('mini-css-extract-plugin') const OptimizeCSSAssetsPlugin = require("optimize-css-assets-webpack-plugin"); module.exports = { entry: './src/index.js', mode: 'production', output: { path: path.resolve(__dirname, 'dist'), filename: `${pkg.name}.js`, libraryTarget: 'umd', library: `${pkg.name}`, umdNamedDefine: true, globalObject: 'this', publicPath: '/dist', }, optimization: { minimizer: [ new UglifyJsPlugin({ cache: true, parallel: true, sourceMap: true // set to true if you want JS source maps }), new OptimizeCSSAssetsPlugin({}) ] }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, loader: 'babel-loader', options: { presets: [['es2015', { module: false }], 'stage-0'] } }, { test: /\.vue$/, loader: 'vue-loader' }, { test: /\.css$/, use: [ { loader: MiniCssExtractPlugin.loader, options: {} }, 'css-loader' ] }, { test: /\.s[ac]ss$/, use: [ { loader: MiniCssExtractPlugin.loader, options: {} }, 'css-loader', 'sass-loader' ] } ] }, plugins: [ new MiniCssExtractPlugin({ // Options similar to the same options in webpackOptions.output // both options are optional filename: 'index.css', chunkFilename: '[id].css' }), new VueLoaderPlugin() ], }