github.com/edermi/gophish_mods@v0.7.0/gulpfile.js (about) 1 /* 2 * gulpfile.js 3 * 4 * Description: The Gophish gulpfile 5 */ 6 7 var gulp = require('gulp'), 8 rename = require('gulp-rename'), 9 concat = require('gulp-concat'), 10 uglify = require('gulp-uglify'), 11 cleanCSS = require('gulp-clean-css'), 12 13 js_directory = 'static/js/src/', 14 css_directory = 'static/css/', 15 vendor_directory = js_directory + 'vendor/', 16 app_directory = js_directory + 'app/**/*.js', 17 dest_js_directory = 'static/js/dist/', 18 dest_css_directory = 'static/css/dist/'; 19 20 gulp.task('vendorjs', function () { 21 // Vendor minifying / concat 22 return gulp.src([ 23 vendor_directory + 'jquery.js', 24 vendor_directory + 'bootstrap.min.js', 25 vendor_directory + 'moment.min.js', 26 vendor_directory + 'papaparse.min.js', 27 vendor_directory + 'd3.min.js', 28 vendor_directory + 'topojson.min.js', 29 vendor_directory + 'datamaps.min.js', 30 vendor_directory + 'jquery.dataTables.min.js', 31 vendor_directory + 'dataTables.bootstrap.js', 32 vendor_directory + 'datetime-moment.js', 33 vendor_directory + 'jquery.ui.widget.js', 34 vendor_directory + 'jquery.fileupload.js', 35 vendor_directory + 'jquery.iframe-transport.js', 36 vendor_directory + 'sweetalert2.min.js', 37 vendor_directory + 'bootstrap-datetime.js', 38 vendor_directory + 'select2.min.js', 39 vendor_directory + 'core.min.js', 40 vendor_directory + 'highcharts.js', 41 vendor_directory + 'ua-parser.min.js' 42 ]) 43 .pipe(concat('vendor.js')) 44 .pipe(rename({ 45 suffix: '.min' 46 })) 47 .pipe(uglify()) 48 .pipe(gulp.dest(dest_js_directory)); 49 }) 50 51 gulp.task('scripts', function () { 52 // Gophish app files 53 gulp.src(app_directory) 54 .pipe(rename({ 55 suffix: '.min' 56 })) 57 .pipe(uglify().on('error', function (e) { 58 console.log(e); 59 })) 60 .pipe(gulp.dest(dest_js_directory + 'app/')); 61 }) 62 63 gulp.task('styles', function () { 64 return gulp.src([ 65 css_directory + 'bootstrap.min.css', 66 css_directory + 'main.css', 67 css_directory + 'dashboard.css', 68 css_directory + 'flat-ui.css', 69 css_directory + 'dataTables.bootstrap.css', 70 css_directory + 'font-awesome.min.css', 71 css_directory + 'chartist.min.css', 72 css_directory + 'bootstrap-datetime.css', 73 css_directory + 'checkbox.css', 74 css_directory + 'sweetalert2.min.css', 75 css_directory + 'select2.min.css', 76 css_directory + 'select2-bootstrap.min.css', 77 ]) 78 .pipe(cleanCSS({ 79 compatibilty: 'ie9' 80 })) 81 .pipe(concat('gophish.css')) 82 .pipe(gulp.dest(dest_css_directory)); 83 }) 84 85 gulp.task('build', ['vendorjs', 'scripts', 'styles']); 86 87 gulp.task('default', ['build']);