aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/gulpfile.js
blob: 4f8baa3c1b18247a6abdb17cd1120a4ca3ca9507 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/* eslint no-var: 0 */
var del = require('del');
var gulp = require('gulp');
var gulpif = require('gulp-if');
var less = require('gulp-less');
var nano = require('gulp-cssnano');
var autoprefixer = require('gulp-autoprefixer');
var paths = require('./config/paths');
var autoprefixerOptions = require('./config/autoprefixer');

var nanoOptions = {
  zindex: false,
  discardComments: { removeAll: true }
};

function styles (output, production) {
  return gulp.src(['src/main/less/sonar.less'])
      .pipe(less())
      .pipe(autoprefixer(autoprefixerOptions))
      .pipe(gulpif(production, nano(nanoOptions)))
      .pipe(gulp.dest(output));
}

gulp.task('clean', function (done) {
  del(paths.cssBuild, done);
});

gulp.task('styles:prod', function () {
  return styles(paths.cssBuild, true);
});

gulp.task('styles:dev', function () {
  return styles(paths.cssBuild, false);
});

gulp.task('default', ['clean', 'styles:prod']);
gulp.task('build', ['clean', 'styles:prod']);
gulp.task('build-fast', ['clean', 'styles:dev']);