class ExtraTask extends BalmJS . BalmTask { constructor ( ) { super ( 'extra' ) ; const includeGlobs = [ ] ; if ( BalmJS . config . extras . includes . length ) { for ( const filename of BalmJS . config . extras . includes ) { includeGlobs . push ( path . join ( BalmJS . config . src . base , filename ) ) ; } } const excludeGlobs = [ ] ; if ( BalmJS . config . extras . excludes . length ) { for ( const filename of BalmJS . config . extras . excludes ) { excludeGlobs . push ( path . join ( `!${ BalmJS . config . src . base }` , filename ) ) ; } } const defaultGlobs = [ path . join ( BalmJS . config . src . base , '*.*' ) , path . join ( `!${ BalmJS . config . src . base }` , '*.html' ) , path . join ( `!${ BalmJS . config . src . base }` , BalmJS . config . pwa . manifest ) , ... includeGlobs , ... excludeGlobs ] ; this . defaultInput = defaultGlobs ; this . defaultOutput = BalmJS . config . dest . base ; } fn = ( ) : any => { this . init ( ) ; this . gulpSrcOptions = { dot : true } ; return this . src . pipe ( gulp . dest ( this . output ) ) ; } ; } export default ExtraTask ;