java-tutorials/jhipster/jhipster-microservice/gateway-app/gulp/copy.js

82 lines
2.9 KiB
JavaScript

'use strict';
var gulp = require('gulp'),
rev = require('gulp-rev'),
plumber = require('gulp-plumber'),
es = require('event-stream'),
flatten = require('gulp-flatten'),
replace = require('gulp-replace'),
bowerFiles = require('main-bower-files'),
changed = require('gulp-changed');
var handleErrors = require('./handle-errors');
var config = require('./config');
module.exports = {
fonts: fonts,
common: common,
swagger: swagger,
images: images
}
function fonts() {
return es.merge(gulp.src(config.bower + 'bootstrap/fonts/*.*')
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.dist + 'content/fonts/'))
.pipe(rev())
.pipe(gulp.dest(config.dist + 'content/fonts/'))
.pipe(rev.manifest(config.revManifest, {
base: config.dist,
merge: true
}))
.pipe(gulp.dest(config.dist)),
gulp.src(config.app + 'content/**/*.{woff,woff2,svg,ttf,eot,otf}')
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.dist + 'content/fonts/'))
.pipe(flatten())
.pipe(rev())
.pipe(gulp.dest(config.dist + 'content/fonts/'))
.pipe(rev.manifest(config.revManifest, {
base: config.dist,
merge: true
}))
.pipe(gulp.dest(config.dist))
);
}
function common() {
return gulp.src([config.app + 'robots.txt', config.app + 'favicon.ico', config.app + '.htaccess'], { dot: true })
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.dist))
.pipe(gulp.dest(config.dist));
}
function swagger() {
return es.merge(
gulp.src([config.bower + 'swagger-ui/dist/**',
'!' + config.bower + 'swagger-ui/dist/index.html',
'!' + config.bower + 'swagger-ui/dist/swagger-ui.min.js',
'!' + config.bower + 'swagger-ui/dist/swagger-ui.js'])
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.swaggerDist))
.pipe(gulp.dest(config.swaggerDist)),
gulp.src(config.app + 'swagger-ui/index.html')
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.swaggerDist))
.pipe(replace('../bower_components/swagger-ui/dist/', ''))
.pipe(replace('swagger-ui.js', 'lib/swagger-ui.min.js'))
.pipe(gulp.dest(config.swaggerDist)),
gulp.src(config.bower + 'swagger-ui/dist/swagger-ui.min.js')
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.swaggerDist + 'lib/'))
.pipe(gulp.dest(config.swaggerDist + 'lib/'))
);
}
function images() {
return gulp.src(bowerFiles({filter: ['**/*.{gif,jpg,png}']}), { base: config.bower })
.pipe(plumber({errorHandler: handleErrors}))
.pipe(changed(config.dist + 'bower_components'))
.pipe(gulp.dest(config.dist + 'bower_components'));
}