const gulp = require('gulp'), concat = require("gulp-concat"), rename = require("gulp-rename"), cleanCSS = require('gulp-clean-css'), order = require('gulp-order'), uglify = require('gulp-uglify'), streamqueue = require('streamqueue'), pipeline = require('readable-stream').pipeline; gulp.task('copy', async function() { gulp.src('./node_modules/bootstrap/dist/js/bootstrap.js') .pipe(rename('v3-bootstrap.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/bootstrap/dist/css/bootstrap.css') .pipe(rename('v3-bootstrap.css')) .pipe(gulp.dest('./css/')); gulp.src('./node_modules/popper.js/dist/umd/popper.js') .pipe(rename('v3-popper.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/jquery/dist/jquery.min.js') .pipe(rename('v3-jquery.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/jasny-bootstrap/dist/js/jasny-bootstrap.min.js') .pipe(rename('v3-jasny-bootstrap.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.css') .pipe(rename('v3-jasny-bootstrap.css')) .pipe(gulp.dest('./css/')); gulp.src('./node_modules/animate.css/animate.css') .pipe(rename('v3-animate.css')) .pipe(gulp.dest('./css/')); gulp.src('./node_modules/svg-morpheus/compile/minified/svg-morpheus.js') .pipe(rename('v3-svg-morpheus.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/moment/min/moment.min.js') .pipe(rename('v3-moment.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/@fullcalendar/core/main.js') .pipe(rename('v3-fullcalendar.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/@fullcalendar/core/main.css') .pipe(rename('v3-fullcalendar.css')) .pipe(gulp.dest('./css/')); gulp.src('./node_modules/@fullcalendar/google-calendar/main.js') .pipe(rename('v3-fullcalendar-google.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/@fullcalendar/daygrid/main.js') .pipe(rename('v3-fullcalendar-daygrid.js')) .pipe(gulp.dest('./js/')); gulp.src('./node_modules/@fullcalendar/daygrid/main.css') .pipe(rename('v3-fullcalendar-daygrid.css')) .pipe(gulp.dest('./css/')); console.log("files 📄 from npm pkgs "); }); gulp.task('css', async function() { return streamqueue({ objectMode: true }, gulp.src('./css/fonts.css'), gulp.src('./css/v3-animate.css'), gulp.src('./css/v3-fullcalendar-daygrid.css'), gulp.src('./css/v3-fullcalendar.css'), gulp.src('./css/v3-bootstrap.css'), gulp.src('./style.css') ) .pipe(concat('v3-style.css')) .pipe(cleanCSS({level: {1: {specialComments: 0}}})) .pipe(rename('v3-style.min.css')) .pipe(gulp.dest('./', { overwrite:true })); gulp.src('css/front-page.css') .pipe(cleanCSS({level: {1: {specialComments: 0}}})) .pipe(rename('v3-front.min.css')) .pipe(gulp.dest('./css/', { overwrite:true })); console.log("CSS built 🔧 "); }); gulp.task('cssf', async function() { gulp.src('css/front-page.css') .pipe(cleanCSS({level: {1: {specialComments: 0}}})) .pipe(rename('v3-front.min.css')) .pipe(gulp.dest('./css/', { overwrite:true })); console.log("CSSF built 🔧 "); }); gulp.task('js', async function() { return streamqueue({ objectMode: true }, gulp.src('./js/v3-jquery.js'), gulp.src('./js/v3-popper.js'), gulp.src('./js/v3-bootstrap.js'), gulp.src('./js/v3-jasny-bootstrap.js'), gulp.src('./js/v3-moment.js'), gulp.src('./js/v3-fullcalendar.js'), gulp.src('./js/v3-fullcalendar-daygrid.js'), gulp.src('./js/v3-fullcalendar-google.js'), gulp.src('./js/modernizr.js'), gulp.src('./js/validate.js'), gulp.src('./js/scripts.js') ) .pipe(concat('v3-script.js')) .pipe(uglify()) .pipe(rename('v3-script.min.js')) .pipe(gulp.dest('./js/', { overwrite:true })) console.log("JS built 🔧 "); }); gulp.task('jsf', async function() { return streamqueue({ objectMode: true }, gulp.src('./js/v3-jquery.js'), gulp.src('./js/svg-morpheus.js'), gulp.src('./js/messenger.min.js'), gulp.src('./js/v3-bootstrap.js'), gulp.src('./js/terminal.js'), gulp.src('./js/front-page.js') ) .pipe(concat('v3-front.js')) .pipe(uglify()) .pipe(rename('v3-front.min.js')) .pipe(gulp.dest('./js/', { overwrite:true })) console.log("JSF built 🔧 "); });