diff --git a/templates/gulpfile.js.twig b/templates/gulpfile.js.twig index 60b49edd8dc665a1df328e1e02f4635de67cbb4f..0b3367ee73548065346f7a85a93ec3e080f25c13 100644 --- a/templates/gulpfile.js.twig +++ b/templates/gulpfile.js.twig @@ -20,53 +20,41 @@ var autoprefixer = require('autoprefixer'), default: { env: process.env.NODE_ENV || 'development' } }, options = minimist(process.argv.slice(2), knownOptions); - {# This variable is needed to search for defined fonts in packages #} -{% set fontDefined = false %} - +{% set fontDefined = [] %} {% for name, package in bower_assets %} {% if package.fonts is defined %} -{% set fontDefined = true %} +{% set fontDefined = fontDefined|merge([package.name]) %} + // Provide fonts from {{ name }} gulp.task('fonts-{{ package.name }}', function() { return gulp.src('{{ package.fonts.relative }}/**') .pipe(gulp.dest(config.fontsPath + '/{{ package.name }}')); }); - {% endif %} {% endfor %} +{% if fontDefined|length %} -{% if fontDefined %} // Provide fonts from all libraries -gulp.task('fonts', gulp.parallel( - {% for name, package in bower_assets %} - {% if package.fonts is defined %}'fonts-{{ package.name }}'{% if not loop.last %}, {% endif %} - {% endif %} - {% endfor %})); +gulp.task('fonts', gulp.parallel('fonts-{{ jsDefined|join("','fonts-") }}')); {% endif %} - {# This variable is needed to search for defined js in packages #} -{% set jsDefined = false %} - +{% set jsDefined = [] %} {% for name, package in bower_assets %} {% if package.js is defined %} -{% set jsDefined = true %} +{% set jsDefined = jsDefined|merge([package.name]) %} + // Provide JS from {{ name }} gulp.task('js-{{ package.name }}', function() { return gulp.src('{{ package.js.relative }}/**') .pipe(gulp.dest(config.jsPath + '/{{ package.name }}')); }); - {% endif %} {% endfor %} +{% if jsDefined|length %} -{% if jsDefined %} // Provide JS from all libraries -gulp.task('js', gulp.parallel( - {% for name, package in bower_assets %} - {% if package.js is defined %}'js-{{ package.name }}'{% if not loop.last %}, {% endif %} - {% endif %} - {% endfor %})); +gulp.task('js', gulp.parallel('js-{{ jsDefined|join("','js-") }}')); {% endif %} // Pre-process CSS @@ -98,4 +86,4 @@ gulp.task('watch', function() { }); // Default task: run all other tasks in the correct order -gulp.task('default', gulp.parallel({% if fontDefined %}'fonts', {% endif %}{% if jsDefined %}'js', {% endif %}'css')); +gulp.task('default', gulp.parallel({% if fontDefined|length %}'fonts', {% endif %}{% if jsDefined|length %}'js', {% endif %}'css'));