%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/pn/wp-content/themes/intosai/
Upload File :
Create Path :
Current File : //var/www/pn/wp-content/themes/intosai/gulpfile.js

// ***********************************************
// UTVECKLA MOT SPECIFIK URL - Ändra FOLDER_NAME så att den pekar mot rätt mapp.
const FOLDER_NAME = 'intosaidonor';
 
// UTVECKLING SKER LOKALT? TRUE || FALSE
const LOCAL_DEVELOPMENT = true;
 
// Imports
const gulp         = require('gulp');
const sass         = require('gulp-sass');
const rename       = require('gulp-rename');
const concat       = require('gulp-concat');
const autoprefixer = require('gulp-autoprefixer');
const cleanCSS     = require('gulp-clean-css');
const minify       = require('gulp-minify');
const browserSync  = require('browser-sync').create();
 
// Webbläsare som autoprefixer ska prefixa för
const browsersList = [
    'last 2 versions',
    'android 4',
    'opera 12'
];
 
const cssDebug = true;
const cssCompatibility = 'ie8';
 
// Sätter upp koppling mot utvecklingsmiljö
let watchDependencies = ['build'];
if (LOCAL_DEVELOPMENT) {
    gulp.task('browserSync', function () {
        const PROXY_URL = `localhost/${FOLDER_NAME}/`;
        browserSync.init({
            proxy: PROXY_URL,
            notify: true
        });
    });
 
    watchDependencies.push('browserSync');
}
 
// Kör SCSS flödet på angedd källa
function doSassTasks(source, filename, destination) {
    let task = gulp.src(source)
        .pipe(sass()).on('error', sass.logError)
        .pipe(rename(filename))
        .pipe(autoprefixer({
            browsers: browsersList,
            cascade: false
        }))
        .pipe(cleanCSS({
            compatibility: cssCompatibility,
            debug: cssDebug,
            rebase: false,
        }, function (details) {
            if (!cssDebug) {
                return;
            }
 
            console.log('/*************************/');
            console.log(`  ${details.name}: ${details.stats.originalSize}`);
            console.log(`  ${details.name}: ${details.stats.minifiedSize}`);
            console.log('/*************************/');
        }))
        .pipe(gulp.dest(destination));
 
    if (LOCAL_DEVELOPMENT) {
        task = task.pipe(browserSync.reload({
            stream: true
        }));
    }
 
    return task;
}
 
// Slår ihop all CSS
gulp.task('css', function () {
    return doSassTasks('assets/styles/main.scss', 'structure.css', 'dist/css');
});
 
// Slår ihop admin CSS
gulp.task('adminCss', function () {
    return doSassTasks('assets/styles/admin/admin.scss', 'admin.css', 'dist/css/admin');
});
 
// Slår ihop editor CSS
gulp.task('editorCss', function () {
    return doSassTasks('assets/styles/admin/editor.scss', 'editor.css', 'dist/css/admin');
});
 
// Kör Javascript flödet på källfilerna i sources.
function doJSTasks(sources, filename, destination) {
    let task = gulp.src(sources)
        .pipe(concat(filename))
        .pipe(minify({
            ext:{
                src:'.js',
                min:'.min.js'
            },
            exclude: ['tasks'],
            ignoreFiles: ['.combo.js', '-min.js']
        }))
        .pipe(gulp.dest(destination));
 
    if (LOCAL_DEVELOPMENT) {
        task = task.pipe(browserSync.reload({
            stream: true
        }));
    }
 
    return task;
}
 
// Slår ihop alla script
gulp.task('scripts', function () {
    let files = [
        'assets/scripts/jquery/jquery.1.10.2.js',
        'assets/scripts/modernizer/modernizr.min.js',
        'assets/scripts/plugins/owl-slider/owl.carousel.min.js',
        'assets/scripts/plugins/bx-slider/jquery.bxslider.min.js',
        'assets/scripts/plugins/pickadate/picker.js',
        'assets/scripts/plugins/pickadate/picker.date.js',
        'assets/scripts/plugins/pickadate/legacy.js',
        'assets/scripts/plugins/validate/jquery.validate.js',
        'assets/scripts/plugins/chart/chart.min.js',
        'assets/scripts/plugins/canvg/canvg.min.js',
        'assets/scripts/plugins/jquery-visible/jquery.visible.js',
        'assets/scripts/plugins/jquery-scrollify/jquery.scrollify.js',
        'assets/scripts/main.js',
    ];
 
    return doJSTasks(files, 'main-dist.js', 'dist/js/');
});
 
// Slår ihop alla admin script
gulp.task('scriptsAdmin', function () {
    let files = [
        'assets/scripts/admin/admin.js'
    ];
 
    return doJSTasks(files, 'admin.js', 'dist/js/admin');
});
 
gulp.task('build', ['css', 'editorCss', 'adminCss', 'scripts', 'scriptsAdmin'])
 
// Sätter upp watch commandot (gulp watch) för att automatiskt kompilera 
gulp.task('watch', watchDependencies, function () {
    gulp.watch('assets/styles/**/*.scss', ['css']);
 
    gulp.watch('assets/styles/admin/admin.scss', ['adminCss']);
    gulp.watch('assets/styles/admin/editor.scss', ['editorCss']);
 
    gulp.watch('assets/scripts/main.js', ['scripts']);
    gulp.watch('assets/scripts/admin/admin.js', ['scriptsAdmin']);
 
    if (LOCAL_DEVELOPMENT) {
        gulp.watch("./**/*.php").on('change', browserSync.reload);
    }
});

Zerion Mini Shell 1.0