@@ -4,98 +4,101 @@ const config = require('../config')
44const ExtractTextPlugin = require ( 'extract-text-webpack-plugin' )
55const packageConfig = require ( '../package.json' )
66
7- exports . assetsPath = function ( _path ) {
8- const assetsSubDirectory = process . env . NODE_ENV === 'production'
9- ?config . build . assetsSubDirectory
10- :config . dev . assetsSubDirectory
7+ exports . assetsPath = function ( _path ) {
8+ const assetsSubDirectory =
9+ process . env . NODE_ENV === 'production'
10+ ?config . build . assetsSubDirectory
11+ :config . dev . assetsSubDirectory
1112
12- return path . posix . join ( assetsSubDirectory , _path )
13+ return path . posix . join ( assetsSubDirectory , _path )
1314}
1415
15- exports . cssLoaders = function ( options ) {
16- options = options || { }
16+ exports . cssLoaders = function ( options ) {
17+ options = options || { }
1718
18- const cssLoader = {
19- loader :'css-loader' ,
20- options :{
21- sourceMap :options . sourceMap
19+ const cssLoader = {
20+ loader :'css-loader' ,
21+ options :{
22+ sourceMap :options . sourceMap ,
23+ } ,
2224}
23- }
2425
25- const postcssLoader = {
26- loader :'postcss-loader' ,
27- options :{
28- sourceMap :options . sourceMap
26+ const postcssLoader = {
27+ loader :'postcss-loader' ,
28+ options :{
29+ sourceMap :options . sourceMap ,
30+ } ,
2931}
30- }
3132
32- // generate loader string to be used with extract text plugin
33- function generateLoaders ( loader , loaderOptions ) {
34- const loaders = options . usePostCSS ?[ cssLoader , postcssLoader ] :[ cssLoader ]
35-
36- if ( loader ) {
37- loaders . push ( {
38- loader :loader + '-loader' ,
39- options :Object . assign ( { } , loaderOptions , {
40- sourceMap :options . sourceMap
41- } )
42- } )
33+ // generate loader string to be used with extract text plugin
34+ function generateLoaders ( loader , loaderOptions ) {
35+ const loaders = options . usePostCSS
36+ ?[ cssLoader , postcssLoader ]
37+ :[ cssLoader ]
38+
39+ if ( loader ) {
40+ loaders . push ( {
41+ loader :loader + '-loader' ,
42+ options :Object . assign ( { } , loaderOptions , {
43+ sourceMap :options . sourceMap ,
44+ } ) ,
45+ } )
46+ }
47+
48+ // Extract CSS when that option is specified
49+ // (which is the case during production build)
50+ if ( options . extract ) {
51+ return ExtractTextPlugin . extract ( {
52+ use :loaders ,
53+ fallback :'vue-style-loader' ,
54+ } )
55+ } else {
56+ return [ 'vue-style-loader' ] . concat ( loaders )
57+ }
4358}
4459
45- //Extract CSS when that option is specified
46- // (which is the case during production build)
47- if ( options . extract ) {
48- return ExtractTextPlugin . extract ( {
49- use : loaders ,
50- fallback : 'vue-style-loader'
51- } )
52- } else {
53- return [ 'vue-style-loader' ] . concat ( loaders )
60+ //https://vue-loader.vuejs.org/en/configurations/extract-css.html
61+ return {
62+ css : generateLoaders ( ) ,
63+ postcss : generateLoaders ( ) ,
64+ less : generateLoaders ( 'less' ) ,
65+ sass : generateLoaders ( 'sass' , { indentedSyntax : true } ) ,
66+ scss : generateLoaders ( 'sass' ) ,
67+ stylus : generateLoaders ( 'stylus' ) ,
68+ styl : generateLoaders ( 'stylus' ) ,
5469}
55- }
56-
57- // https://vue-loader.vuejs.org/en/configurations/extract-css.html
58- return {
59- css :generateLoaders ( ) ,
60- postcss :generateLoaders ( ) ,
61- less :generateLoaders ( 'less' ) ,
62- sass :generateLoaders ( 'sass' , { indentedSyntax :true } ) ,
63- scss :generateLoaders ( 'sass' ) ,
64- stylus :generateLoaders ( 'stylus' ) ,
65- styl :generateLoaders ( 'stylus' )
66- }
6770}
6871
6972// Generate loaders for standalone style files (outside of .vue)
70- exports . styleLoaders = function ( options ) {
71- const output = [ ]
72- const loaders = exports . cssLoaders ( options )
73-
74- for ( const extension in loaders ) {
75- const loader = loaders [ extension ]
76- output . push ( {
77- test :new RegExp ( '\\.' + extension + '$' ) ,
78- use :loader
79- } )
80- }
81-
82- return output
73+ exports . styleLoaders = function ( options ) {
74+ const output = [ ]
75+ const loaders = exports . cssLoaders ( options )
76+
77+ for ( const extension in loaders ) {
78+ const loader = loaders [ extension ]
79+ output . push ( {
80+ test :new RegExp ( '\\.' + extension + '$' ) ,
81+ use :loader ,
82+ } )
83+ }
84+
85+ return output
8386}
8487
8588exports . createNotifierCallback = ( ) => {
86- const notifier = require ( 'node-notifier' )
89+ const notifier = require ( 'node-notifier' )
8790
88- return ( severity , errors ) => {
89- if ( severity !== 'error' ) return
91+ return ( severity , errors ) => {
92+ if ( severity !== 'error' ) return
9093
91- const error = errors [ 0 ]
92- const filename = error . file && error . file . split ( '!' ) . pop ( )
94+ const error = errors [ 0 ]
95+ const filename = error . file && error . file . split ( '!' ) . pop ( )
9396
94- notifier . notify ( {
95- title :packageConfig . name ,
96- message :severity + ': ' + error . name ,
97- subtitle :filename || '' ,
98- icon :path . join ( __dirname , 'logo.png' )
99- } )
100- }
97+ notifier . notify ( {
98+ title :packageConfig . name ,
99+ message :severity + ': ' + error . name ,
100+ subtitle :filename || '' ,
101+ icon :path . join ( __dirname , 'logo.png' ) ,
102+ } )
103+ }
101104}