File "gulpfile.js"
Full Path: /srv/www/www.cadoro.it/app/apple_notificationsAPN_key/gulpfile.js
File size: 4.62 KB
MIME-type: text/plain
Charset: utf-8
var gulp = require('gulp');
var addsrc = require('gulp-add-src');
var gutil = require('gulp-util');
var bower = require('bower');
var clean = require('gulp-clean');
var concat = require('gulp-concat');
var jshint = require('gulp-jshint');
var sass = require('gulp-sass');
var minifyCss = require('gulp-minify-css');
var rename = require('gulp-rename');
var templateCache = require('gulp-angular-templatecache');
var ngAnnotate = require('gulp-ng-annotate');
var uglify = require("gulp-uglify");
var sh = require('shelljs');
var paths = {
sass: [
'./src/scss/**/*.scss'
],
scripts: [
'./src/js/**/*.js'
],
scripts_libs: [
// './lib/angular/angular.js',
// './lib/angular-animate/angular-animate.min.js',
// './lib/angular-sanitize/angular-sanitize.min.js',
// './lib/angular-ui-router/release/angular-ui-router.min.js',
// './lib/ionic/js/ionic.min.js',
// './lib/ionic/js/ionic-angular.min.js',
'./lib/ionic/js/ionic.bundle.min.js',
'./lib/angular-local-storage/dist/angular-local-storage.min.js',
'./lib/angular-md5/angular-md5.min.js',
'./lib/ngCordova/dist/ng-cordova.min.js',
'./lib/ng-cordova-oauth/dist/ng-cordova-oauth.min.js',
'./lib/jquery/dist/jquery.min.js',
'./lib/barcode-jquery/jquery-barcode.min.js',
'./lib/jquery-qrcode/jquery.qrcode.min.js',
'./lib/moment/min/moment.min.js',
'./lib/underscore/underscore-min.js',
'./lib/jsSHA/src/sha1.js',
'./lib/ion-gallery/dist/ion-gallery.min.js',
],
scripts_libs_uglify: [
'./lib/json2/json2.js',
'./lib/humanize-duration/humanize-duration.js',
'./lib/imgcache.js/js/imgcache.js',
'./lib/angular-imgcache/angular-imgcache.js'
// './lib/angular-ios9-uiwebview.patch.js'
],
scripts_templates: [
'./src/templates/**/*.html'
],
src: './src',
dist: './www',
dist_css: 'app.css',
dist_scripts: 'app.js',
dist_scripts_bundle: 'app.bundle.js',
dist_scripts_templates: 'templates.js',
dist_www: '../www'
};
gulp.task('default', ['dist']);
gulp.task('build', ['sass', 'templates', 'scripts']);
gulp.task('sass', function(done) {
gulp.src(paths.src + '/scss/app.scss')
.pipe(sass())
.pipe(minifyCss({
keepSpecialComments: 0
}))
.pipe(gulp.dest(paths.dist + '/css'))
.on('end', done);
});
gulp.task('templates', function (done) {
gulp.src(paths.scripts_templates)
.pipe(templateCache('templates.js', {module: 'app.templates', standalone: true, root: 'templates/'}))
.pipe(gulp.dest(paths.src))
.on('end', done);
});
gulp.task('scripts', ['templates'], function(done) {
gulp.src(paths.scripts.concat([paths.src + '/' + paths.dist_scripts_templates]))
.pipe(jshint({laxcomma: true}))
.pipe(jshint.reporter('default'))
.pipe(ngAnnotate({
remove: true,
add: true,
single_quotes: true
}))
.pipe(uglify())
.pipe(concat(paths.dist_scripts))
.pipe(rename({
extname: '.js'
}))
.pipe(gulp.dest(paths.dist + '/js'))
.on('end', done);
});
gulp.task('scripts-bundle', [], function(done) {
gulp.src(paths.scripts_libs_uglify)
.pipe(uglify())
.pipe(addsrc.prepend(paths.scripts_libs))
.pipe(concat(paths.dist_scripts_bundle))
.pipe(gulp.dest(paths.dist + '/js'))
.on('end', done);
});
gulp.task('dist', ['build'], function() {
gulp.src(paths.dist + '/css/' + paths.dist_css)
.pipe(gulp.dest(paths.dist_www + '/css'));
gulp.src(paths.dist + '/js/' + paths.dist_scripts)
.pipe(gulp.dest(paths.dist_www + '/js'));
gulp.src(paths.dist + '/js/' + paths.dist_scripts_bundle)
.pipe(gulp.dest(paths.dist_www + '/js'));
return true;
});
gulp.task('watch', ['dist'], function() {
gulp.watch(paths.sass.concat(paths.scripts_templates.concat(paths.scripts)), ['dist']);
});
gulp.task('install', ['git-check'], function() {
return bower.commands.install()
.on('log', function(data) {
gutil.log('bower', gutil.colors.cyan(data.id), data.message);
});
});
gulp.task('git-check', function(done) {
if (!sh.which('git')) {
console.log(
' ' + gutil.colors.red('Git is not installed.'),
'\n Git, the version control system, is required to download Ionic.',
'\n Download git here:', gutil.colors.cyan('http://git-scm.com/downloads') + '.',
'\n Once git is installed, run \'' + gutil.colors.cyan('gulp install') + '\' again.'
);
process.exit(1);
}
done();
});