Subversion Repositories Integrator Subversion

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 espaco 1
'use strict';
2
 
3
// sass compile
4
var gulp = require('gulp');
5
var sass = require('gulp-sass');
6
var prettify = require('gulp-prettify');
7
var minifyCss = require("gulp-minify-css");
8
var rename = require("gulp-rename");
9
var uglify = require("gulp-uglify");
10
var rtlcss = require("gulp-rtlcss");  
11
var connect = require('gulp-connect');
12
 
13
//*** Localhost server tast
14
gulp.task('localhost', function() {
15
  connect.server();
16
});
17
 
18
gulp.task('localhost-live', function() {
19
  connect.server({
20
    livereload: true
21
  });
22
});
23
 
24
//*** SASS compiler task
25
gulp.task('sass', function () {
26
  // bootstrap compilation
27
        gulp.src('./sass/bootstrap.scss').pipe(sass()).pipe(gulp.dest('./assets/global/plugins/bootstrap/css/'));
28
 
29
  // select2 compilation using bootstrap variables
30
        gulp.src('./assets/global/plugins/select2/sass/select2-bootstrap.min.scss').pipe(sass({outputStyle: 'compressed'})).pipe(gulp.dest('./assets/global/plugins/select2/css/'));
31
 
32
  // global theme stylesheet compilation
33
        gulp.src('./sass/global/*.scss').pipe(sass()).pipe(gulp.dest('./assets/global/css'));
34
        gulp.src('./sass/apps/*.scss').pipe(sass()).pipe(gulp.dest('./assets/apps/css'));
35
        gulp.src('./sass/pages/*.scss').pipe(sass()).pipe(gulp.dest('./assets/pages/css'));
36
 
37
  // theme layouts compilation
38
        gulp.src('./sass/layouts/layout/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout/css'));
39
  gulp.src('./sass/layouts/layout/themes/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout/css/themes'));
40
 
41
  gulp.src('./sass/layouts/layout2/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout2/css'));
42
  gulp.src('./sass/layouts/layout2/themes/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout2/css/themes'));
43
 
44
  gulp.src('./sass/layouts/layout3/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout3/css'));
45
  gulp.src('./sass/layouts/layout3/themes/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout3/css/themes'));
46
 
47
  gulp.src('./sass/layouts/layout4/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout4/css'));
48
  gulp.src('./sass/layouts/layout4/themes/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout4/css/themes'));
49
 
50
  gulp.src('./sass/layouts/layout5/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout5/css'));
51
 
52
  gulp.src('./sass/layouts/layout6/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout6/css'));
53
 
54
  gulp.src('./sass/layouts/layout7/*.scss').pipe(sass()).pipe(gulp.dest('./assets/layouts/layout7/css'));
55
});
56
 
57
//*** SASS watch(realtime) compiler task
58
gulp.task('sass:watch', function () {
59
        gulp.watch('./sass/**/*.scss', ['sass']);
60
});
61
 
62
//*** CSS & JS minify task
63
gulp.task('minify', function () {
64
    // css minify 
65
    gulp.src(['./assets/apps/css/*.css', '!./assets/apps/css/*.min.css']).pipe(minifyCss()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/apps/css/'));
66
 
67
    gulp.src(['./assets/global/css/*.css','!./assets/global/css/*.min.css']).pipe(minifyCss()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/global/css/'));
68
    gulp.src(['./assets/pages/css/*.css','!./assets/pages/css/*.min.css']).pipe(minifyCss()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/pages/css/'));    
69
 
70
    gulp.src(['./assets/layouts/**/css/*.css','!./assets/layouts/**/css/*.min.css']).pipe(rename({suffix: '.min'})).pipe(minifyCss()).pipe(gulp.dest('./assets/layouts/'));
71
    gulp.src(['./assets/layouts/**/css/**/*.css','!./assets/layouts/**/css/**/*.min.css']).pipe(rename({suffix: '.min'})).pipe(minifyCss()).pipe(gulp.dest('./assets/layouts/'));
72
 
73
    gulp.src(['./assets/global/plugins/bootstrap/css/*.css','!./assets/global/plugins/bootstrap/css/*.min.css']).pipe(minifyCss()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/global/plugins/bootstrap/css/'));
74
 
75
    //js minify
76
    gulp.src(['./assets/apps/scripts/*.js','!./assets/apps/scripts/*.min.js']).pipe(uglify()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/apps/scripts/'));
77
    gulp.src(['./assets/global/scripts/*.js','!./assets/global/scripts/*.min.js']).pipe(uglify()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/global/scripts'));
78
    gulp.src(['./assets/pages/scripts/*.js','!./assets/pages/scripts/*.min.js']).pipe(uglify()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/pages/scripts'));
79
    gulp.src(['./assets/layouts/**/scripts/*.js','!./assets/layouts/**/scripts/*.min.js']).pipe(uglify()).pipe(rename({suffix: '.min'})).pipe(gulp.dest('./assets/layouts/'));
80
});
81
 
82
//*** RTL convertor task
83
gulp.task('rtlcss', function () {
84
 
85
  gulp
86
    .src(['./assets/apps/css/*.css', '!./assets/apps/css/*-rtl.min.css', '!./assets/apps/css/*-rtl.css', '!./assets/apps/css/*.min.css'])
87
    .pipe(rtlcss())
88
    .pipe(rename({suffix: '-rtl'}))
89
    .pipe(gulp.dest('./assets/apps/css'));
90
 
91
  gulp
92
    .src(['./assets/pages/css/*.css', '!./assets/pages/css/*-rtl.min.css', '!./assets/pages/css/*-rtl.css', '!./assets/pages/css/*.min.css'])
93
    .pipe(rtlcss())
94
    .pipe(rename({suffix: '-rtl'}))
95
    .pipe(gulp.dest('./assets/pages/css'));
96
 
97
  gulp
98
    .src(['./assets/global/css/*.css', '!./assets/global/css/*-rtl.min.css', '!./assets/global/css/*-rtl.css', '!./assets/global/css/*.min.css'])
99
    .pipe(rtlcss())
100
    .pipe(rename({suffix: '-rtl'}))
101
    .pipe(gulp.dest('./assets/global/css'));
102
 
103
  gulp
104
    .src(['./assets/layouts/**/css/*.css', '!./assets/layouts/**/css/*-rtl.css', '!./assets/layouts/**/css/*-rtl.min.css', '!./assets/layouts/**/css/*.min.css'])
105
    .pipe(rtlcss())
106
    .pipe(rename({suffix: '-rtl'}))
107
    .pipe(gulp.dest('./assets/layouts'));
108
 
109
  gulp
110
    .src(['./assets/layouts/**/css/**/*.css', '!./assets/layouts/**/css/**/*-rtl.css', '!./assets/layouts/**/css/**/*-rtl.min.css', '!./assets/layouts/**/css/**/*.min.css'])
111
    .pipe(rtlcss())
112
    .pipe(rename({suffix: '-rtl'}))
113
    .pipe(gulp.dest('./assets/layouts'));
114
 
115
  gulp
116
    .src(['./assets/global/plugins/bootstrap/css/*.css', '!./assets/global/plugins/bootstrap/css/*-rtl.css', '!./assets/global/plugins/bootstrap/css/*.min.css'])
117
    .pipe(rtlcss())
118
    .pipe(rename({suffix: '-rtl'}))
119
    .pipe(gulp.dest('./assets/global/plugins/bootstrap/css'));
120
});
121
 
122
//*** HTML formatter task
123
gulp.task('prettify', function() {
124
 
125
        gulp.src('./**/*.html').
126
                pipe(prettify({
127
                indent_size: 4,
128
                indent_inner_html: true,
129
                unformatted: ['pre', 'code']
130
                })).
131
                pipe(gulp.dest('./'));
132
});