@cocreate/selection 1.6.11 → 1.6.13

Sign up to get free protection for your applications and to get access to all the features.
package/webpack.config.js CHANGED
@@ -1,84 +1,84 @@
1
- const path = require("path")
2
- const TerserPlugin = require("terser-webpack-plugin")
3
- const MiniCssExtractPlugin = require("mini-css-extract-plugin")
4
- let isProduction = process.env.NODE_ENV === "production"
5
- const { CleanWebpackPlugin } = require("clean-webpack-plugin")
6
-
7
- module.exports = {
8
- entry: {
9
- "CoCreate-selection": "./src/index.js",
10
- },
11
- output: {
12
- path: path.resolve(__dirname, "dist"),
13
- filename: isProduction ? "[name].min.js" : "[name].js",
14
- libraryTarget: "umd",
15
- libraryExport: "default",
16
- library: ["CoCreate", "selection"],
17
- globalObject: "this",
18
- },
19
-
20
- plugins: [
21
- new CleanWebpackPlugin(),
22
- new MiniCssExtractPlugin({
23
- filename: "[name].css",
24
- }),
25
- ],
26
- // Default mode for Webpack is production.
27
- // Depending on mode Webpack will apply different things
28
- // on final bundle. For now we don't need production's JavaScript
29
- // minifying and other thing so let's set mode to development
30
- mode: isProduction ? "production" : "development",
31
- module: {
32
- rules: [
33
- {
34
- test: /.js$/,
35
- exclude: /(node_modules)/,
36
- use: {
37
- loader: "babel-loader",
38
- options: {
39
- plugins: ["@babel/plugin-transform-modules-commonjs"],
40
- },
41
- },
42
- },
43
- {
44
- test: /.css$/i,
45
- use: [
46
- { loader: "style-loader", options: { injectType: "linkTag" } },
47
- "file-loader",
48
- ],
49
- },
50
- ],
51
- },
52
-
53
- // add source map
54
- ...(isProduction ? {} : { devtool: "eval-source-map" }),
55
-
56
- optimization: {
57
- minimize: true,
58
- minimizer: [
59
- new TerserPlugin({
60
- extractComments: true,
61
- // cache: true,
62
- parallel: true,
63
- // sourceMap: true, // Must be set to true if using source-maps in production
64
- terserOptions: {
65
- // https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions
66
- // extractComments: 'all',
67
- compress: {
68
- drop_console: true,
69
- },
70
- },
71
- }),
72
- ],
73
- splitChunks: {
74
- chunks: "all",
75
- minSize: 200,
76
- // maxSize: 99999,
77
- //minChunks: 1,
78
-
79
- cacheGroups: {
80
- defaultVendors: false,
81
- },
82
- },
83
- },
84
- }
1
+ const path = require("path")
2
+ const TerserPlugin = require("terser-webpack-plugin")
3
+ const MiniCssExtractPlugin = require("mini-css-extract-plugin")
4
+ let isProduction = process.env.NODE_ENV === "production"
5
+ const { CleanWebpackPlugin } = require("clean-webpack-plugin")
6
+
7
+ module.exports = {
8
+ entry: {
9
+ "CoCreate-selection": "./src/index.js",
10
+ },
11
+ output: {
12
+ path: path.resolve(__dirname, "dist"),
13
+ filename: isProduction ? "[name].min.js" : "[name].js",
14
+ libraryTarget: "umd",
15
+ libraryExport: "default",
16
+ library: ["CoCreate", "selection"],
17
+ globalObject: "this",
18
+ },
19
+
20
+ plugins: [
21
+ new CleanWebpackPlugin(),
22
+ new MiniCssExtractPlugin({
23
+ filename: "[name].css",
24
+ }),
25
+ ],
26
+ // Default mode for Webpack is production.
27
+ // Depending on mode Webpack will apply different things
28
+ // on final bundle. For now we don't need production's JavaScript
29
+ // minifying and other thing so let's set mode to development
30
+ mode: isProduction ? "production" : "development",
31
+ module: {
32
+ rules: [
33
+ {
34
+ test: /.js$/,
35
+ exclude: /(node_modules)/,
36
+ use: {
37
+ loader: "babel-loader",
38
+ options: {
39
+ plugins: ["@babel/plugin-transform-modules-commonjs"],
40
+ },
41
+ },
42
+ },
43
+ {
44
+ test: /.css$/i,
45
+ use: [
46
+ { loader: "style-loader", options: { injectType: "linkTag" } },
47
+ "file-loader",
48
+ ],
49
+ },
50
+ ],
51
+ },
52
+
53
+ // add source map
54
+ ...(isProduction ? {} : { devtool: "eval-source-map" }),
55
+
56
+ optimization: {
57
+ minimize: true,
58
+ minimizer: [
59
+ new TerserPlugin({
60
+ extractComments: true,
61
+ // cache: true,
62
+ parallel: true,
63
+ // sourceMap: true, // Must be set to true if using source-maps in production
64
+ terserOptions: {
65
+ // https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions
66
+ // extractComments: 'all',
67
+ compress: {
68
+ drop_console: true,
69
+ },
70
+ },
71
+ }),
72
+ ],
73
+ splitChunks: {
74
+ chunks: "all",
75
+ minSize: 200,
76
+ // maxSize: 99999,
77
+ //minChunks: 1,
78
+
79
+ cacheGroups: {
80
+ defaultVendors: false,
81
+ },
82
+ },
83
+ },
84
+ }