Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 1 | const path = require('path'); |
| 2 | |
| 3 | const gulp = require('gulp'); |
| 4 | const del = require('del'); |
| 5 | const filter = require('gulp-filter'); |
Matteo Scandolo | f6acdbe | 2016-12-13 10:29:37 -0800 | [diff] [blame^] | 6 | const rename = require('gulp-rename'); |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 7 | |
| 8 | const conf = require('../conf/gulp.conf'); |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 9 | const cfgFolder = path.join(conf.paths.src, 'app/config'); |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 10 | |
| 11 | gulp.task('clean', clean); |
| 12 | gulp.task('other', other); |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 13 | gulp.task('brand', styleConfig); |
| 14 | gulp.task('appConfig', appConfig); |
| 15 | gulp.task('config', gulp.series('brand', 'appConfig')); |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 16 | |
Matteo Scandolo | f6acdbe | 2016-12-13 10:29:37 -0800 | [diff] [blame^] | 17 | console.log(process.env.NODE_ENV); |
| 18 | |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 19 | function clean() { |
| 20 | return del([conf.paths.dist, conf.paths.tmp]); |
| 21 | } |
| 22 | |
Matteo Scandolo | f6acdbe | 2016-12-13 10:29:37 -0800 | [diff] [blame^] | 23 | function other() { |
| 24 | const fileFilter = filter(file => file.stat.isFile()); |
| 25 | |
| 26 | return gulp.src([ |
| 27 | path.join(conf.paths.src, '/**/*'), |
| 28 | path.join(`!${conf.paths.src}`, '/**/*.{scss,ts,html}') |
| 29 | ]) |
| 30 | .pipe(fileFilter) |
| 31 | .pipe(gulp.dest(conf.paths.dist)); |
| 32 | } |
| 33 | |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 34 | function appConfig() { |
| 35 | const env = process.env.NODE_ENV || 'production'; |
| 36 | return gulp.src([ |
| 37 | path.join(conf.paths.appConfig, `app.config.${env}.ts`) |
| 38 | ]) |
Matteo Scandolo | f6acdbe | 2016-12-13 10:29:37 -0800 | [diff] [blame^] | 39 | .pipe(rename('app.config.ts')) |
| 40 | .pipe(gulp.dest(cfgFolder)); |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 41 | } |
| 42 | |
| 43 | function styleConfig() { |
| 44 | const env = process.env.BRAND || 'cord'; |
| 45 | return gulp.src([ |
| 46 | path.join(conf.paths.appConfig, `style.config.${env}.ts`) |
| 47 | ]) |
Matteo Scandolo | f6acdbe | 2016-12-13 10:29:37 -0800 | [diff] [blame^] | 48 | .pipe(rename('style.config.ts')) |
| 49 | .pipe(gulp.dest(cfgFolder)); |
Matteo Scandolo | 43ffb67 | 2016-12-02 14:49:58 -0800 | [diff] [blame] | 50 | } |
| 51 | |
Matteo Scandolo | d819c92 | 2016-12-02 14:06:14 -0800 | [diff] [blame] | 52 | function other() { |
| 53 | const fileFilter = filter(file => file.stat.isFile()); |
| 54 | |
| 55 | return gulp.src([ |
| 56 | path.join(conf.paths.src, '/**/*'), |
| 57 | path.join(`!${conf.paths.src}`, '/**/*.{scss,ts,html}') |
| 58 | ]) |
| 59 | .pipe(fileFilter) |
| 60 | .pipe(gulp.dest(conf.paths.dist)); |
| 61 | } |