A Gulp plugin to remove sections of code from files based on conditions
npm install gulp-remove-code --save-devconstremoveCode=require('gulp-remove-code');gulp.src('./src/*.js').pipe(removeCode({noDevFeatures: true})).pipe(gulp.dest('./dist/'))gulp.src('./src/*.js').pipe(removeCode({noDevFeatures: true,commentStart: '/*',commentEnd: '*/'})).pipe(gulp.dest('./dist/'))gulp.src('./src/*.coffee').pipe(removeCode({noDevFeatures: true})).pipe(gulp.dest('./dist/'))<div><!--removeIf(production)--><divclass="sandbox-banner">Running in sandbox environment</div><!--endRemoveIf(production)--><span>Removing code is easy.</span></div>constremoveCode=require('gulp-remove-code');gulp.src('./src/file.html').pipe(removeCode({production: true})).pipe(gulp.dest('./dist'))The plugin will remove the code inside the comments, as well as the comments.
letvalue=JSON.stringify({key: 'value'});//removeIf(production)value=JSON.stringify({key: 'value',production: true},null,2);//endRemoveIf(production)//removeIf(!development)value=JSON.stringify({key: 'value',development: false},null,2);//endRemoveIf(!development)constremoveCode=require('gulp-remove-code');gulp.src('./src/file.js').pipe(removeCode({production: true})).pipe(gulp.dest('./dist'))The plugin will remove the code inside the comments, as well as the comments.
Starting with version 2 of this plugin, conditions can also be expressed using the ! specifier.
// Remove code using *!* (negated) conditions//----------- gulpfile.js -----------//constremoveCode=require('gulp-remove-code');gulp.src('./src/file.js').pipe(removeCode({production: false})).pipe(gulp.dest('./dist'))//----------- app-file.js -----------////removeIf(!production)value=JSON.stringify({key: 'value',production: false},null,2);//endRemoveIf(!production)Type: Object
A key value pair map to specify what code should be removed. The truthy values will remove the code.
Type: String
Default: Detected from file extension. Use // as fallback.
Configure how the start comment is defined.
Type: String
Default: Detected from file extension. Use empty as fallback.
Configure how the end comment is defined.
MIT © Cristian Trifan