2021-03-28 12:12:18 +03:00

32 lines
1.1 KiB
JavaScript

// sass
import gulp from 'gulp';
import gulpif from 'gulp-if';
import sass from 'gulp-sass';
import cleanCSS from 'gulp-clean-css';
import newer from 'gulp-newer';
import autoprefixer from 'gulp-autoprefixer';
import sourcemaps from 'gulp-sourcemaps';
import browser from 'browser-sync';
import pathConfig from '../paths.js'
import gcmq from 'gulp-group-css-media-queries';
export const stylesBuild = () => {
return gulp.src(`${pathConfig.src.sass}/**/*.sass`, {
ignore: pathConfig.isProd && [`${pathConfig.src.sass}/parts/*.sass`]
})
.pipe(newer('*'))
.pipe(gulpif(pathConfig.isDevelop, sourcemaps.init()))
.pipe(sass.sync().on('error', sass.logError))
.pipe(gulpif(pathConfig.isProd, gcmq()))
.pipe(gulpif(pathConfig.isProd, autoprefixer()))
.pipe(gulpif(pathConfig.isProd, cleanCSS({ level: 2 })))
.pipe(gulpif(pathConfig.isDevelop, sourcemaps.write('./')))
.pipe(gulp.dest(pathConfig.assets.css))
.pipe(browser.reload({stream: true}));
}
export const stylesDevelop = () => gulp.watch(`${pathConfig.src.sass}/**/*.sass`, stylesBuild).on('change', browser.reload.bind(null, {stream: true}));