70 lines
2.1 KiB
JavaScript
70 lines
2.1 KiB
JavaScript
|
'use strict';
|
||
|
|
||
|
var gulp = require('gulp'),
|
||
|
plumber = require('gulp-plumber'),
|
||
|
inject = require('gulp-inject'),
|
||
|
es = require('event-stream'),
|
||
|
naturalSort = require('gulp-natural-sort'),
|
||
|
angularFilesort = require('gulp-angular-filesort'),
|
||
|
bowerFiles = require('main-bower-files');
|
||
|
|
||
|
var handleErrors = require('./handle-errors');
|
||
|
|
||
|
var config = require('./config');
|
||
|
|
||
|
module.exports = {
|
||
|
app: app,
|
||
|
vendor: vendor,
|
||
|
test: test,
|
||
|
troubleshoot: troubleshoot
|
||
|
}
|
||
|
|
||
|
function app() {
|
||
|
return gulp.src(config.app + 'index.html')
|
||
|
.pipe(inject(gulp.src(config.app + 'app/**/*.js')
|
||
|
.pipe(plumber({errorHandler: handleErrors}))
|
||
|
.pipe(naturalSort())
|
||
|
.pipe(angularFilesort()), {relative: true}))
|
||
|
.pipe(gulp.dest(config.app));
|
||
|
}
|
||
|
|
||
|
function vendor() {
|
||
|
var stream = gulp.src(config.app + 'index.html')
|
||
|
.pipe(plumber({errorHandler: handleErrors}))
|
||
|
.pipe(inject(gulp.src(bowerFiles(), {read: false}), {
|
||
|
name: 'bower',
|
||
|
relative: true
|
||
|
}))
|
||
|
.pipe(gulp.dest(config.app));
|
||
|
|
||
|
return stream;
|
||
|
}
|
||
|
|
||
|
function test() {
|
||
|
return gulp.src(config.test + 'karma.conf.js')
|
||
|
.pipe(plumber({errorHandler: handleErrors}))
|
||
|
.pipe(inject(gulp.src(bowerFiles({includeDev: true, filter: ['**/*.js']}), {read: false}), {
|
||
|
starttag: '// bower:js',
|
||
|
endtag: '// endbower',
|
||
|
transform: function (filepath) {
|
||
|
return '\'' + filepath.substring(1, filepath.length) + '\',';
|
||
|
}
|
||
|
}))
|
||
|
.pipe(gulp.dest(config.test));
|
||
|
}
|
||
|
|
||
|
function troubleshoot() {
|
||
|
/* this task removes the troubleshooting content from index.html*/
|
||
|
return gulp.src(config.app + 'index.html')
|
||
|
.pipe(plumber({errorHandler: handleErrors}))
|
||
|
/* having empty src as we dont have to read any files*/
|
||
|
.pipe(inject(gulp.src('', {read: false}), {
|
||
|
starttag: '<!-- inject:troubleshoot -->',
|
||
|
removeTags: true,
|
||
|
transform: function () {
|
||
|
return '<!-- Angular views -->';
|
||
|
}
|
||
|
}))
|
||
|
.pipe(gulp.dest(config.app));
|
||
|
}
|