UNPKG

@zohodesk/client_build_tool

Version:

A CLI tool to build web applications and client libraries

58 lines (46 loc) 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.runPreProcess = runPreProcess; var _path = require("path"); var _fs = require("fs"); var _spawnSyncIO = require("../commands-utils/spawnSyncIO"); var _logger = require("../../logger"); var _constants = require("../constants"); function runPreProcess(options, runnerCli = 'node') { const { preProcess } = options; const { enable, runner, stopNodemon } = preProcess; if (!enable || !runner) { return null; } const preprocessorPath = (0, _constants.joinWithAppPath)(runner); let result = null; if ((0, _fs.existsSync)(preprocessorPath)) { const preprocessorDirPath = (0, _path.dirname)(preprocessorPath); const watchOptions = ['--watch', preprocessorDirPath]; const preprocessCli = stopNodemon ? 'node' : runnerCli; if (preprocessCli === 'node') { result = (0, _spawnSyncIO.spawnSyncIO)(preprocessCli, [preprocessorPath], { stdio: 'inherit', cwd: preprocessorDirPath }); (0, _logger.messageLogger)('pre_processor ran successfully'); } else { result = (0, _spawnSyncIO.spawnIO)(preprocessCli, [preprocessorPath, ...watchOptions], { stdio: 'inherit', cwd: preprocessorDirPath }); } } else { (0, _logger.errorLogger)(`preProcessor not exists ${preprocessorPath}`); process.exit(0); } return result; }