mirror of https://github.com/kurisufriend/0x40-web
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.3 KiB
92 lines
2.3 KiB
var gulp = require("gulp");
|
|
var sourcemaps = require("gulp-sourcemaps");
|
|
var babel = require("gulp-babel");
|
|
var uglify = require('gulp-uglify');
|
|
var concat = require("gulp-concat");
|
|
var minifyCSS = require('gulp-cssnano');
|
|
var autoprefixer = require('gulp-autoprefixer');
|
|
var order = require("gulp-order");
|
|
var del = require('del');
|
|
var jshint = require('gulp-jshint');
|
|
|
|
gulp.task('default', ['css', 'audio', 'minify'], function() {
|
|
|
|
});
|
|
|
|
gulp.task('css', function(){
|
|
return gulp.src('src/css/**/*.css')
|
|
.pipe(order([
|
|
"style.css", // base
|
|
"hues-m.css", // modern
|
|
"hues-x.css", // xmas
|
|
"hues-h.css", // hlwn
|
|
"hues-r.css", // retro
|
|
"hues-w.css" // weed
|
|
]))
|
|
.pipe(sourcemaps.init())
|
|
.pipe(autoprefixer('last 2 version', 'ios 6', 'android 4'))
|
|
.pipe(concat('hues-min.css'))
|
|
.pipe(minifyCSS())
|
|
.pipe(sourcemaps.write("."))
|
|
.pipe(gulp.dest('css'));
|
|
});
|
|
|
|
gulp.task("audio", function () {
|
|
gulp.src(["src/js/audio/aurora.js", "src/js/audio/mp3.js"])
|
|
.pipe(concat("audio-min.js"))
|
|
.pipe(uglify())
|
|
.pipe(gulp.dest("lib"));
|
|
|
|
gulp.src(["src/js/audio/ogg.js", "src/js/audio/vorbis.js"])
|
|
.pipe(uglify())
|
|
.pipe(gulp.dest("lib"));
|
|
});
|
|
|
|
gulp.task("minify", function () {
|
|
return gulp.src("src/js/*.js")
|
|
.pipe(sourcemaps.init())
|
|
.pipe(babel())
|
|
.pipe(uglify())
|
|
.pipe(concat("hues-min.js"))
|
|
.pipe(sourcemaps.write("."))
|
|
.pipe(gulp.dest("lib"));
|
|
});
|
|
|
|
gulp.task("lint", function () {
|
|
return gulp.src("src/js/*.js")
|
|
.pipe(jshint('.jshintrc'))
|
|
.pipe(jshint.reporter('default'));
|
|
});
|
|
|
|
gulp.task('watch', ['default'], function() {
|
|
gulp.watch('src/css/*.css', ['css']);
|
|
gulp.watch('src/js/*.js', ['minify']);
|
|
});
|
|
|
|
gulp.task('clean', function() {
|
|
return del([
|
|
'lib/hues-min.js',
|
|
'lib/hues-min.map',
|
|
'lib/audio-min.js',
|
|
'lib/oggvorbis.js',
|
|
'css',
|
|
'release']);
|
|
});
|
|
|
|
gulp.task('release', ['default', 'lint'], function() {
|
|
gulp.src([
|
|
'css/hues-min.css',
|
|
'lib/hues-min.js',
|
|
'lib/audio-min.js',
|
|
'lib/oggvorbis.js',
|
|
'fonts/**/*',
|
|
'img/**/*',
|
|
'index.html',
|
|
'favicon.ico'], {
|
|
base: '.'
|
|
}).pipe(gulp.dest('release'));
|
|
|
|
gulp.src(['lib/workers/**/*','lib/zip*'], {base: 'lib'})
|
|
.pipe(uglify())
|
|
.pipe(gulp.dest("release/lib"));
|
|
}); |