11const webpack = require ( 'webpack' ) ;
22const path = require ( 'path' ) ;
3- const UglifyJSPlugin = require ( 'uglifyjs-webpack-plugin' ) ;
43const pkg = require ( './package.json' ) ;
54
6- module . exports = function ( ) {
7- return {
8- devtool : 'source-map' ,
9- entry : {
10- MenuChef : './src/MenuChef.js'
11- } ,
12- output : {
13- path : path . join ( __dirname , './dist' ) ,
14- filename : '[name].js'
15- } ,
16- module : {
17- rules : [
18- {
19- enforce : 'pre' ,
20- test : / \. j s $ / ,
21- loader : 'standard-loader' ,
22- exclude : / ( n o d e _ m o d u l e s ) / ,
23- } ,
24- {
25- test : / \. h t m l $ / ,
26- exclude : / n o d e _ m o d u l e s / ,
27- loader : 'html-loader' ,
28- query : {
29- minimize : true ,
30- }
31- } ,
32- {
33- test : / \. c s s $ / ,
34- exclude : / n o d e _ m o d u l e s / ,
35- use : [
36- 'style-loader' ,
37- 'css-loader'
38- ]
39- } ,
40- {
41- test : / \. s c s s $ / ,
42- use : [ {
43- loader : "style-loader"
44- } , {
45- loader : "css-loader"
46- } , {
47- loader : "sass-loader"
48- } ]
49- } ,
50- {
51- test : / \. ( j s | j s x ) $ / ,
52- exclude : / n o d e _ m o d u l e s / ,
53- use : [
54- 'babel-loader'
55- ] ,
56- } ,
57- ] ,
58- } ,
59- resolve : {
60- extensions : [ '.webpack-loader.js' , '.web-loader.js' , '.loader.js' , '.js' , '.jsx' ] ,
61- modules : [
62- path . resolve ( __dirname , 'node_modules' ) ,
63- path . join ( __dirname , './src' )
64- ]
65- } ,
66- devServer : {
67- contentBase : path . join ( __dirname , 'dist' ) ,
68- compress : true ,
69- port : 9000
70- } ,
71- plugins : [
72- new webpack . BannerPlugin ( `MenuChef v${ pkg . version }
73- http://github.com/theus/MenuChef
74- Released under the MIT License.` ) ,
75- new UglifyJSPlugin ( {
76- sourceMap : true ,
77- mangle : {
78- except : [ 'MenuChef' ]
5+ module . exports = {
6+ devtool : 'source-map' ,
7+ entry : {
8+ MenuChef : './src/MenuChef.js'
9+ } ,
10+ output : {
11+ path : path . join ( __dirname , './dist' ) ,
12+ filename : '[name].js'
13+ } ,
14+ module : {
15+ rules : [
16+ {
17+ enforce : 'pre' ,
18+ test : / \. j s $ / ,
19+ loader : 'standard-loader' ,
20+ exclude : / ( n o d e _ m o d u l e s ) / ,
21+ } ,
22+ {
23+ test : / \. h t m l $ / ,
24+ exclude : / n o d e _ m o d u l e s / ,
25+ loader : 'html-loader' ,
26+ query : {
27+ minimize : true ,
7928 }
80- } )
29+ } ,
30+ {
31+ test : / \. c s s $ / ,
32+ exclude : / n o d e _ m o d u l e s / ,
33+ use : [
34+ 'style-loader' ,
35+ 'css-loader'
36+ ]
37+ } ,
38+ {
39+ test : / \. s c s s $ / ,
40+ use : [ {
41+ loader : "style-loader"
42+ } , {
43+ loader : "css-loader"
44+ } , {
45+ loader : "sass-loader"
46+ } ]
47+ } ,
48+ {
49+ test : / \. ( j s | j s x ) $ / ,
50+ exclude : / n o d e _ m o d u l e s / ,
51+ use : [
52+ 'babel-loader'
53+ ] ,
54+ } ,
55+ ] ,
56+ } ,
57+ resolve : {
58+ extensions : [ '.webpack-loader.js' , '.web-loader.js' , '.loader.js' , '.js' , '.jsx' ] ,
59+ modules : [
60+ path . resolve ( __dirname , 'node_modules' ) ,
61+ path . join ( __dirname , './src' )
8162 ]
82- } ;
83- } ;
63+ } ,
64+ devServer : {
65+ contentBase : path . join ( __dirname , 'dist' ) ,
66+ compress : true ,
67+ port : 9000
68+ } ,
69+ plugins : [
70+ new webpack . BannerPlugin ( `MenuChef v${ pkg . version }
71+ http://github.com/theus/MenuChef
72+ Released under the MIT License.` ) ,
73+ new webpack . optimize . UglifyJsPlugin ( {
74+ sourceMap : true ,
75+ mangle : {
76+ except : [ 'MenuChef' ]
77+ }
78+ } )
79+ ]
80+ }
0 commit comments