github.com/merlinepedra/gopphish-attack@v0.9.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      babel = require('gulp-babel'),
    13  
    14      js_directory = 'static/js/src/',
    15      css_directory = 'static/css/',
    16      vendor_directory = js_directory + 'vendor/',
    17      app_directory = js_directory + 'app/',
    18      dest_js_directory = 'static/js/dist/',
    19      dest_css_directory = 'static/css/dist/';
    20  
    21  vendorjs = function () {
    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  scripts = function () {
    52      // Gophish app files - non-ES6
    53      return gulp.src([
    54              app_directory + 'autocomplete.js',
    55              app_directory + 'campaign_results.js',
    56              app_directory + 'campaigns.js',
    57              app_directory + 'dashboard.js',
    58              app_directory + 'groups.js',
    59              app_directory + 'landing_pages.js',
    60              app_directory + 'sending_profiles.js',
    61              app_directory + 'settings.js',
    62              app_directory + 'templates.js',
    63              app_directory + 'gophish.js',
    64          ])
    65          .pipe(rename({
    66              suffix: '.min'
    67          }))
    68          .pipe(uglify().on('error', function (e) {
    69              console.log(e);
    70          }))
    71          .pipe(gulp.dest(dest_js_directory + 'app/'));
    72  }
    73  
    74  styles = function () {
    75      return gulp.src([
    76              css_directory + 'bootstrap.min.css',
    77              css_directory + 'main.css',
    78              css_directory + 'dashboard.css',
    79              css_directory + 'flat-ui.css',
    80              css_directory + 'dataTables.bootstrap.css',
    81              css_directory + 'font-awesome.min.css',
    82              css_directory + 'chartist.min.css',
    83              css_directory + 'bootstrap-datetime.css',
    84              css_directory + 'checkbox.css',
    85              css_directory + 'sweetalert2.min.css',
    86              css_directory + 'select2.min.css',
    87              css_directory + 'select2-bootstrap.min.css',
    88          ])
    89          .pipe(cleanCSS({
    90              compatibilty: 'ie9'
    91          }))
    92          .pipe(concat('gophish.css'))
    93          .pipe(gulp.dest(dest_css_directory));
    94  }
    95  
    96  exports.vendorjs = vendorjs
    97  exports.scripts = scripts
    98  exports.styles = styles
    99  exports.build = gulp.parallel(vendorjs, scripts, styles)
   100  exports.default = exports.build