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 | }); |