|
@@ -6,13 +6,17 @@ |
|
@@ -6,13 +6,17 @@ |
6
|
|
6
|
|
7
|
'use strict';
|
7
|
'use strict';
|
8
|
|
8
|
|
|
|
9
|
+const path = require('path');
|
|
|
10
|
+
|
9
|
const gulp = require('gulp');
|
11
|
const gulp = require('gulp');
|
|
|
12
|
+const _ = require('lodash');
|
10
|
const gutil = require('gulp-util');
|
13
|
const gutil = require('gulp-util');
|
11
|
const ftp = require('gulp-ftp');
|
14
|
const ftp = require('gulp-ftp');
|
12
|
|
15
|
|
13
|
const postcss = require('gulp-postcss');
|
16
|
const postcss = require('gulp-postcss');
|
14
|
const sourcemaps = require('gulp-sourcemaps');
|
17
|
const sourcemaps = require('gulp-sourcemaps');
|
15
|
const cssnano = require('gulp-cssnano');
|
18
|
const cssnano = require('gulp-cssnano');
|
|
|
19
|
+const rename = require('gulp-rename');
|
16
|
|
20
|
|
17
|
const webpack = require('webpack');
|
21
|
const webpack = require('webpack');
|
18
|
const WebpackDevServer = require('webpack-dev-server');
|
22
|
const WebpackDevServer = require('webpack-dev-server');
|
|
@@ -48,9 +52,8 @@ const postcssPlugin = (et) => { |
|
@@ -48,9 +52,8 @@ const postcssPlugin = (et) => { |
48
|
padding: 2
|
52
|
padding: 2
|
49
|
},
|
53
|
},
|
50
|
groupBy(file) {
|
54
|
groupBy(file) {
|
51
|
- var group = file.url.split('/')[1];
|
|
|
52
|
-
|
|
|
53
|
- group = group === '' ? 'yo' : group;
|
55
|
+ var dir = _.last(path.parse(file.styleFilePath).dir.split(path.sep));
|
|
|
56
|
+ var group = dir === 'scss' ? path.basename(file.styleFilePath, '.css') : dir;
|
54
|
|
57
|
|
55
|
return group ? Promise.resolve(group) : Promise.reject(group);
|
58
|
return group ? Promise.resolve(group) : Promise.reject(group);
|
56
|
}
|
59
|
}
|
|
@@ -125,13 +128,21 @@ gulp.task('dist', ['ge'], () => { |
|
@@ -125,13 +128,21 @@ gulp.task('dist', ['ge'], () => { |
125
|
|
128
|
|
126
|
// postcss compile in dev
|
129
|
// postcss compile in dev
|
127
|
gulp.task('postcss-dev', () => {
|
130
|
gulp.task('postcss-dev', () => {
|
128
|
- return gulp.src(['scss/index.css', 'scss/cart.index.css'])
|
131
|
+ return gulp.src(['scss/base.css', 'scss/*/_index.css', '!scss/plugin/*', '!scss/common/*'])
|
129
|
.pipe(sourcemaps.init())
|
132
|
.pipe(sourcemaps.init())
|
130
|
.pipe(postcss(postcssPlugin(env.dev)))
|
133
|
.pipe(postcss(postcssPlugin(env.dev)))
|
131
|
.on('error', function(err) {
|
134
|
.on('error', function(err) {
|
132
|
gutil.log(err);
|
135
|
gutil.log(err);
|
133
|
this.emit('end');
|
136
|
this.emit('end');
|
134
|
})
|
137
|
})
|
|
|
138
|
+ .pipe(rename((cssPath) => {
|
|
|
139
|
+ if (cssPath.dirname === '.') {
|
|
|
140
|
+ return;
|
|
|
141
|
+ }
|
|
|
142
|
+
|
|
|
143
|
+ cssPath.basename = `${cssPath.dirname}`;
|
|
|
144
|
+ cssPath.dirname = './';
|
|
|
145
|
+ }))
|
135
|
.pipe(sourcemaps.write('.'))
|
146
|
.pipe(sourcemaps.write('.'))
|
136
|
.pipe(gulp.dest('css/'));
|
147
|
.pipe(gulp.dest('css/'));
|
137
|
});
|
148
|
});
|
|
@@ -158,9 +169,17 @@ gulp.task('font', () => { |
|
@@ -158,9 +169,17 @@ gulp.task('font', () => { |
158
|
|
169
|
|
159
|
// postcss compile in pro
|
170
|
// postcss compile in pro
|
160
|
gulp.task('postcss', ['assets'], () => {
|
171
|
gulp.task('postcss', ['assets'], () => {
|
161
|
- return gulp.src(['scss/index.css', 'scss/cart.index.css'])
|
172
|
+ return gulp.src(['scss/base.css', 'scss/*/_index.css', '!scss/plugin/*', '!scss/common/*'])
|
162
|
.pipe(postcss(postcssPlugin(env.pro)))
|
173
|
.pipe(postcss(postcssPlugin(env.pro)))
|
163
|
.pipe(cssnano())
|
174
|
.pipe(cssnano())
|
|
|
175
|
+ .pipe(rename((cssPath) => {
|
|
|
176
|
+ if (cssPath.dirname === '.') {
|
|
|
177
|
+ return;
|
|
|
178
|
+ }
|
|
|
179
|
+
|
|
|
180
|
+ cssPath.basename = `${cssPath.dirname}`;
|
|
|
181
|
+ cssPath.dirname = './';
|
|
|
182
|
+ }))
|
164
|
.pipe(gulp.dest(dist.css));
|
183
|
.pipe(gulp.dest(dist.css));
|
165
|
});
|
184
|
});
|
166
|
|
185
|
|