HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/shoetique/wp-content/plugins/js_composer/gulp/watchScripts.js
const path = require( 'path' );
const { watch } = require( 'gulp' );
const buildConfig = require( '../build-config.json' );
const { buildJs, buildJsLibs } = require( './buildScripts' );

function watchJs () {
	buildConfig.uglifyList.forEach( ( entry ) => {
		entry.src.forEach( ( path ) => {
			const jsFile = buildConfig.globalOptions.js.srcPath + path;
			watch( jsFile, buildJs );
		});
	});
}

function watchJsLibs ( done ) {
	const srcPath = buildConfig.globalOptions.jsLibs.srcPath;
	return watch( path.join( srcPath, '**/*.js' ), { ignoreInitial: false })
		.on( 'change', ( filePath ) => {
			// Only trigger buildJsLibs if the file wasn't a minified file
			if ( !filePath.endsWith( '.min.js' ) ) {
				buildJsLibs( done );
			}
		});
}

function watchModuleJsFiles ( done ) {
	const srcPath = buildConfig.modules.srcPath;
	return watch( path.join( srcPath, '**/*.js' ), { ignoreInitial: false })
		.on( 'change', ( filePath ) => {
			if ( !filePath.endsWith( '.min.js' ) ) {
				buildJs( done,
					buildConfig.modules.moduleUglifyList,
					buildConfig.modules.srcPath,
					buildConfig.modules.srcPath
				);
			}
		});
}

function watchModuleJsMainFile ( done ) {
	const srcPath = buildConfig.modulesMainFile.srcPath;
	return watch( path.join( srcPath, '**/*.js' ), { ignoreInitial: false })
		.on( 'change', ( filePath ) => {
			if ( !filePath.endsWith( '.min.js' ) ) {
				buildJs(
					done,
					buildConfig.modulesMainFile.modulesMainFileUglifyList,
					buildConfig.modulesMainFile.srcPath,
					buildConfig.modulesMainFile.destPath
				);
			}
		});
}

module.exports = {
	watchJs,
	watchJsLibs,
	watchModuleJsFiles,
	watchModuleJsMainFile
};