// 'use strict'; var gulp = require('gulp'); //var sass = require('gulp-sass'); var sass = require('gulp-sass')(require('sass')); var cleanCSS = require('gulp-clean-css'); var rename = require('gulp-rename'); var autoprefixer = require('gulp-autoprefixer'); //var imagemin = require('gulp-imagemin'); var sourcemaps = require('gulp-sourcemaps'); //var uglify = require('gulp-uglify'); //var concat = require('gulp-concat'); //var minify = require('gulp-minify'); // scss kompilieren und in css-datei speichern // ------------------------------------------------ gulp.task('sass', () => { return gulp.src('src/sass/*.sass') .pipe(sourcemaps.init()) .pipe(sass({ errLogToConsole: true}).on('error', sass.logError)) .pipe(autoprefixer( "last 3 version, >1%" )) .pipe(cleanCSS()) .pipe(rename('min-style.css')) .pipe(sourcemaps.write('../main/')) .pipe(gulp.dest('main/')); }); // Js minifizieren // ------------------------------------------------ gulp.task('min-js', () => { return gulp.src('src/js/*.js') .pipe(sourcemaps.init()) .pipe(concat('script.js')) // .pipe(uglify()) // .pipe(minify()) .pipe(rename({prefix: "min-"})) .pipe(sourcemaps.write('../main/')) .pipe(gulp.dest('main/')); }); // Jpg Bilder Verkleinern // ------------------------------------------------ gulp.task('min-jpg', () => { return gulp.src('src/images/*') .pipe(imagemin([ imagemin.mozjpeg({ quality: 75, progressive: true })])) .pipe(rename({prefix: "min-"})) .pipe(gulp.dest('media')) }); // gulp verzeichnisse beobachten // ------------------------------------------------ gulp.task('watch', function() { gulp.series('default'); gulp.watch('src/sass/*.sass', gulp.series('sass')); // gulp.watch('src/js/*', //gulp.series('min-js')); gulp.watch('src/images/*', //gulp.series('min-jpg')); }); // gulp 1mal ausführen mit allen task // ------------------------------------------------ gulp.task('default', gulp.parallel('sass', 'min-js', 'min-jpg'));