@@ -5,6 +5,7 @@ var bsConfig = require('./bs-config.json');
55var sass = require ( 'gulp-sass' ) ;
66var pug = require ( 'gulp-pug' ) ;
77var uglifyjs = require ( 'gulp-uglify' ) ;
8+ var rename = require ( 'gulp-rename' ) ;
89var concat = require ( 'gulp-concat' ) ;
910
1011/**
@@ -50,9 +51,16 @@ gulp.task('sass', function () {
5051} ) ;
5152
5253gulp . task ( 'js-vendor' , function ( ) {
53- return gulp . src ( [ 'node_modules/requirejs/require.js' ] )
54- . pipe ( uglifyjs ( ) )
55- . pipe ( gulp . dest ( './dist/js' ) )
54+
55+ var vendorConfig = require ( './vendor.json' ) ;
56+ if ( ! vendorConfig ||
57+ ( typeof vendorConfig . js . src == 'string' || vendorConfig . js . src . length === 0 ) ) {
58+ throw new Error ( 'no vendor scripts added. \nvendor.json:\nuse src["file.a.js"]' )
59+ }
60+ return gulp . src ( vendorConfig . js . src )
61+ . pipe ( uglifyjs ( { output : { comments : / ^ ! | @ p r e s e r v e | @ l i c e n s e | @ c c _ o n / i } } ) )
62+ . pipe ( rename ( { suffix : '.min' } ) )
63+ . pipe ( gulp . dest ( vendorConfig . js . dest ) )
5664} ) ;
5765
5866gulp . task ( 'js' , function ( ) {
@@ -66,7 +74,7 @@ gulp.task('js', function () {
6674 . pipe ( reload ( { stream : true } ) )
6775} ) ;
6876
69- gulp . task ( 'vendor-scripts' , [ 'js-vendor' ] ) ;
77+ gulp . task ( 'vendor-scripts' , [ 'templates' , ' js-vendor'] , reload ) ;
7078
7179/**
7280 * Serve and watch the scss/pug files for changes
@@ -78,3 +86,31 @@ gulp.task('default', ['sass', 'js', 'templates'], function () {
7886 gulp . watch ( './app/sass/*.sass' , [ 'sass' ] ) ;
7987 gulp . watch ( './app/*.pug' , [ 'pug-watch' ] ) ;
8088} ) ;
89+
90+
91+ /*
92+ gulp.task('uglify-vendor', function () {
93+
94+ console.dir(arguments);
95+ return;
96+ let optionFiles;
97+
98+ optionFiles = process.argv.filter((option, index, arr) => {
99+ if (/\-\-file/gi.test(arr[index - 1])) {
100+ //optionFile = index+1;
101+ return arr[index];
102+ }
103+ return false;
104+ });
105+ if (optionFiles.length) {
106+ optionFiles.map((src) => {
107+ console.log(src);
108+ return gulp.src(src) // could do this cli-wise with process.argv
109+ .pipe(uglifyjs({ output: { comments: /^!|@preserve |@license|@cc_on/i } }))
110+ .pipe(rename(src.replace(/.+\/(\w+)\.js$/gi, '$1.min.js')))
111+ .pipe(gulp.dest('./dist/js/vendor', { overwrite: true }));
112+ });
113+ }
114+
115+ });
116+ */
0 commit comments