mirror of
https://github.com/Mibew/mibew.git
synced 2025-06-03 07:36:16 +03:00
separate watch task added for the styles, compiles all styles not only default
This commit is contained in:
parent
e3123d7c45
commit
a0beb0bc6c
104
src/gulpfile.js
104
src/gulpfile.js
@ -186,47 +186,89 @@ gulp.task('chat-styles', ['chat-styles-handlebars', 'chat-styles-js'], function(
|
||||
|
||||
// Compile and concatenate handlebars files for all chat styles.
|
||||
gulp.task('chat-styles-handlebars', function() {
|
||||
// TODO: Process all available styles, not only the default one.
|
||||
var stylePath = config.chatStylesPath + '/default';
|
||||
|
||||
return gulp.src(stylePath + '/templates_src/client_side/**/*.handlebars')
|
||||
.pipe(handlebars({
|
||||
// Use specific version of Handlebars.js
|
||||
handlebars: handlebarsEngine
|
||||
}))
|
||||
.pipe(wrapHandlebarsTemplate())
|
||||
.pipe(concat('templates.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(header(config.compiledTemplatesHeader))
|
||||
.pipe(gulp.dest(stylePath + '/templates_compiled/client_side'));
|
||||
var promises = [];
|
||||
fs.readdir(config.chatStylesPath, function(err, list){
|
||||
if(err) return done(err);
|
||||
list.filter(function(path){
|
||||
return fs.lstatSync(config.chatStylesPath + "/" + path).isDirectory();
|
||||
}).map(function(dir){
|
||||
var defer = Q.defer();
|
||||
var pipeline = gulp.src(config.chatStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars')
|
||||
.pipe(handlebars({
|
||||
// Use specific version of Handlebars.js
|
||||
handlebars: handlebarsEngine
|
||||
}))
|
||||
.pipe(wrapHandlebarsTemplate())
|
||||
.pipe(concat('templates.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(header(config.compiledTemplatesHeader))
|
||||
.pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/templates_compiled/client_side'));
|
||||
pipeline.on('end',function(){
|
||||
defer.resolve();
|
||||
});
|
||||
promises.push(defer.promise);
|
||||
});
|
||||
});
|
||||
return Q.all(promises);
|
||||
});
|
||||
|
||||
// Compile and concatenate js files for all chat styles.
|
||||
gulp.task('chat-styles-js', function() {
|
||||
// TODO: Process all available styles, not only the default one.
|
||||
var stylePath = config.chatStylesPath + '/default';
|
||||
var promises = [];
|
||||
fs.readdir(config.chatStylesPath, function(err, list){
|
||||
if(err) return done(err);
|
||||
list.filter(function(path){
|
||||
return fs.lstatSync(config.chatStylesPath + "/" + path).isDirectory();
|
||||
}).map(function(dir){
|
||||
var defer = Q.defer();
|
||||
var pipeline = gulp.src(config.chatStylesPath + '/' + dir + '/js/source/**/*.js')
|
||||
.pipe(concat('scripts.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/js/compiled'));
|
||||
pipeline.on('end', function(){
|
||||
defer.resolve();
|
||||
});
|
||||
promises.push(defer.promise);
|
||||
});
|
||||
});
|
||||
|
||||
return gulp.src(stylePath + '/js/source/**/*.js')
|
||||
.pipe(concat('scripts.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(gulp.dest(stylePath + '/js/compiled'));
|
||||
return Q.all(promises);
|
||||
});
|
||||
|
||||
// Performs all job related with pages styles.
|
||||
gulp.task('page-styles', function() {
|
||||
// TODO: Process all available styles, not only the default one.
|
||||
var stylePath = config.pageStylesPath + '/default';
|
||||
var promises = [];
|
||||
fs.readdir(config.pageStylesPath, function(err, list){
|
||||
if(err) return done(err);
|
||||
list.filter(function(path){
|
||||
return fs.lstatSync(config.pageStylesPath + "/" + path).isDirectory();
|
||||
}).map(function(dir){
|
||||
var defer = Q.defer();
|
||||
var pipeline = gulp.src(config.pageStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars')
|
||||
.pipe(handlebars({
|
||||
// Use specific version of Handlebars.js
|
||||
handlebars: handlebarsEngine
|
||||
}))
|
||||
.pipe(wrapHandlebarsTemplate())
|
||||
.pipe(concat('templates.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(header(config.compiledTemplatesHeader))
|
||||
.pipe(gulp.dest(config.pageStylesPath + '/' + dir + '/templates_compiled/client_side'));
|
||||
pipeline.on('end', function(){
|
||||
defer.resolve();
|
||||
});
|
||||
promises.push(defer.promise);
|
||||
});
|
||||
});
|
||||
|
||||
return gulp.src(stylePath + '/templates_src/client_side/**/*.handlebars')
|
||||
.pipe(handlebars({
|
||||
// Use specific version of Handlebars.js
|
||||
handlebars: handlebarsEngine
|
||||
}))
|
||||
.pipe(wrapHandlebarsTemplate())
|
||||
.pipe(concat('templates.js'))
|
||||
.pipe(uglify({preserveComments: 'some'}))
|
||||
.pipe(header(config.compiledTemplatesHeader))
|
||||
.pipe(gulp.dest(stylePath + '/templates_compiled/client_side'));
|
||||
return Q.all(promises);
|
||||
});
|
||||
|
||||
// Watch styles
|
||||
gulp.task('watch', [], function(){
|
||||
gulp.watch(config.pageStylesPath + '/**/*.handlebars', ['page-styles']);
|
||||
gulp.watch(config.chatStylesPath + '/**/js/source/**/*.js', ['chat-styles-js']);
|
||||
gulp.watch(config.chatStylesPath + '/**/*.handlebars', ['chat-styles-handlebars']);
|
||||
});
|
||||
|
||||
// Generate .pot files based on the sources
|
||||
|
@ -1,30 +1,31 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"gulp": "~3.8.11",
|
||||
"gulp-phpcs": "~0.6.0",
|
||||
"gulp-uglify": "~1.2.0",
|
||||
"gulp-concat": "~2.5.2",
|
||||
"gulp-order": "~1.1.1",
|
||||
"gulp-handlebars": "~4.0.0",
|
||||
"gulp-define-module": "~0.1.3",
|
||||
"gulp-header": "~1.2.2",
|
||||
"gulp-zip": "~3.0.2",
|
||||
"gulp-tar": "~1.4.0",
|
||||
"gulp-gzip": "~1.1.0",
|
||||
"gulp-chmod": "~1.2.0",
|
||||
"gulp-xgettext": "~0.3.0",
|
||||
"gulp-concat-po": "~0.1.1",
|
||||
"gulp-rename": "~1.2.2",
|
||||
"bower": "~1.4.1",
|
||||
"handlebars": "~3.0.3",
|
||||
"run-sequence": "~1.1.0",
|
||||
"through2": "~0.6.5",
|
||||
"pofile": "~0.2.12",
|
||||
"lodash": "~3.9.3",
|
||||
"strftime": "~0.9.2",
|
||||
"del": "~1.2.0",
|
||||
"event-stream": "~3.3.1",
|
||||
"eslint": "~2.11.0",
|
||||
"gulp-eslint": "~2.0.0"
|
||||
}
|
||||
"devDependencies": {
|
||||
"bower": "~1.4.1",
|
||||
"del": "~1.2.0",
|
||||
"eslint": "~2.11.0",
|
||||
"event-stream": "~3.3.1",
|
||||
"gulp": "~3.8.11",
|
||||
"gulp-chmod": "~1.2.0",
|
||||
"gulp-concat": "~2.5.2",
|
||||
"gulp-concat-po": "~0.1.1",
|
||||
"gulp-define-module": "~0.1.3",
|
||||
"gulp-eslint": "~2.0.0",
|
||||
"gulp-gzip": "~1.1.0",
|
||||
"gulp-handlebars": "~4.0.0",
|
||||
"gulp-header": "~1.2.2",
|
||||
"gulp-order": "~1.1.1",
|
||||
"gulp-phpcs": "~0.6.0",
|
||||
"gulp-rename": "~1.2.2",
|
||||
"gulp-tar": "~1.4.0",
|
||||
"gulp-uglify": "~1.2.0",
|
||||
"gulp-xgettext": "~0.3.0",
|
||||
"gulp-zip": "~3.0.2",
|
||||
"handlebars": "~3.0.3",
|
||||
"lodash": "~3.9.3",
|
||||
"pofile": "~0.2.12",
|
||||
"q": "^1.4.1",
|
||||
"run-sequence": "~1.1.0",
|
||||
"strftime": "~0.9.2",
|
||||
"through2": "~0.6.5"
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user