Files
Umbraco-CMS/src/Umbraco.Web.UI.Client/gulp/util/processJs.js
T

35 lines
967 B
JavaScript
Raw Normal View History

2019-01-17 13:57:59 +01:00
var config = require('../config');
var gulp = require('gulp');
var eslint = require('gulp-eslint');
var babel = require("gulp-babel");
var sort = require('gulp-sort');
var concat = require('gulp-concat');
var wrap = require("gulp-wrap-js");
2019-04-26 10:06:00 +01:00
var embedTemplates = require('gulp-angular-embed-templates');
2019-01-17 13:57:59 +01:00
module.exports = function(files, out) {
2019-01-18 10:12:24 +01:00
var task = gulp.src(files);
if (global.isProd === true) {
2019-01-17 13:57:59 +01:00
// check for js errors
2019-01-18 10:12:24 +01:00
task = task.pipe(eslint());
2019-01-17 13:57:59 +01:00
// outputs the lint results to the console
2019-01-18 10:12:24 +01:00
task = task.pipe(eslint.format());
}
// sort files in stream by path or any custom sort comparator
task = task.pipe(babel())
2019-01-17 13:57:59 +01:00
.pipe(sort())
2019-08-08 04:16:18 +10:00
.pipe(embedTemplates({ basePath: "./src/", minimize:{ loose: true } }))
2019-01-17 13:57:59 +01:00
.pipe(concat(out))
.pipe(wrap('(function(){\n%= body %\n})();'))
.pipe(gulp.dest(config.root + config.targets.js));
2019-01-18 10:12:24 +01:00
return task;
2019-04-26 10:06:00 +01:00
};