@@ -81,20 +81,21 @@ config.babelOptions.compact = !config.debug;
8181
8282function waitPipes ( pipes , done ) {
8383 if ( ! pipes || pipes . length === 0 ) {
84- done ( ) ;
84+ if ( done ) done ( ) ;
8585 return Promise . resolve ( ) ;
8686 }
8787
8888 return Promise . all (
8989 pipes . map ( pipe => new Promise ( ( resolve , reject ) => {
9090 pipe . on ( 'end' , resolve ) ;
9191 pipe . on ( 'error' , reject ) ;
92+ pipe . on ( 'close' , resolve ) ; // Add close event handler
9293 } ) )
9394 ) . then ( ( ) => {
94- done ( ) ;
95+ if ( done ) done ( ) ;
9596 } ) . catch ( err => {
9697 console . error ( 'Error in pipe:' , err ) ;
97- done ( err ) ;
98+ if ( done ) done ( err ) ;
9899 } ) ;
99100}
100101
@@ -274,7 +275,7 @@ function srcImages() {
274275 . pipe ( gulp . dest ( config . production + '/' + config . paths . images ) ) ;
275276}
276277
277- function leaflet ( done ) {
278+ function leaflet ( ) {
278279 const leaflet = gulp . src ( [
279280 config . nodeDirectory + '/leaflet.fullscreen/icon-fullscreen.svg' ,
280281 config . development + '/' + config . paths . images + '/leaflet/*' ,
@@ -287,10 +288,10 @@ function leaflet(done) {
287288 . pipe ( flatten ( ) )
288289 . pipe ( gulp . dest ( config . production + '/' + config . paths . images + '/leaflet' ) ) ;
289290
290- return waitPipes ( [ images , leaflet ] , done ) ;
291+ return merge ( images , leaflet ) ;
291292}
292293
293- function wacom ( done ) {
294+ function wacom ( ) {
294295 // Librerie da node_modules secondo package.json
295296 const vendor = [
296297 'clipper-lib/clipper.js' ,
@@ -338,7 +339,7 @@ function wacom(done) {
338339 . pipe ( gulpIf ( ! config . debug , minifyJS ( ) ) )
339340 . pipe ( gulp . dest ( config . production + '/' + config . paths . js ) ) ;
340341
341- return waitPipes ( [ jsStream , wasmStream ] , done ) ;
342+ return merge ( jsStream , wasmStream ) ;
342343}
343344
344345// Elaborazione dei fonts
@@ -438,7 +439,7 @@ function csrf() {
438439 . pipe ( gulp . dest ( config . production + '/' + config . paths . js + '/csrf' ) ) ;
439440}
440441
441- function pdfjs ( done ) {
442+ function pdfjs ( ) {
442443 const web = gulp . src ( [
443444 config . nodeDirectory + '/pdfjs-viewer-element/dist/pdfjs-*-dist/web/**/*' ,
444445 '!' + config . nodeDirectory + '/pdfjs-viewer-element/dist/pdfjs-*-dist/web/cmaps/*' ,
@@ -453,7 +454,7 @@ function pdfjs(done) {
453454 ] , { encoding : false } )
454455 . pipe ( gulp . dest ( config . production + '/pdfjs/build' ) ) ;
455456
456- return waitPipes ( [ web , build ] , done ) ;
457+ return merge ( web , build ) ;
457458}
458459
459460function uaparser ( ) {
@@ -661,11 +662,14 @@ export default bower;
661662
662663// Watch task - lanciato con `gulp watch`, resta in attesa e ogni volta che viene modificato un asset in src
663664// viene aggiornata la dist
664- gulp . task ( 'watch' , function ( ) {
665+ export function watch ( ) {
665666 gulp . watch ( 'assets/src/css/*.css' , gulp . series ( srcCSS , CSS ) ) ;
666667 gulp . watch ( 'assets/src/css/print/*.css' , gulp . series ( srcCSS , CSS ) ) ;
667668 gulp . watch ( 'assets/src/css/themes/*.css' , gulp . series ( srcCSS , CSS ) ) ;
668669 gulp . watch ( 'assets/src/js/base/*.js' , gulp . series ( srcJS , JS ) ) ;
669670 gulp . watch ( 'assets/src/js/functions/*.js' , gulp . series ( srcJS , JS ) ) ;
670671 gulp . watch ( 'assets/src/img/*' , gulp . series ( images ) ) ;
671- } ) ;
672+ }
673+
674+ // Replace the old watch task definition
675+ gulp . task ( 'watch' , watch ) ;
0 commit comments