@interaktiv/dia-scripts
Version:
CLI toolbox with common scripts for most sort of projects at DIA
39 lines (32 loc) • 925 B
JavaScript
;
const exit = require('exit');
const spawn = require('cross-spawn');
const yargsParser = require('yargs-parser');
const {
resolveBin,
ifSfdxProject,
getConcurrentlyArgs,
removeValueFromArray,
resolveSelf
} = require('../../utils');
const rawArgv = process.argv.slice(2);
const {
_: lintScripts
} = yargsParser(rawArgv);
const useDefaultScripts = lintScripts.length < 1;
const diaScripts = resolveSelf();
if (useDefaultScripts) {
const scripts = {
'lint:apex': ifSfdxProject(`${diaScripts} lint/apex`),
'lint:javascript': `${diaScripts} lint/javascript`,
'lint:markdown': `${diaScripts} lint/markdown`
};
const result = spawn.sync(resolveBin('concurrently'), getConcurrentlyArgs(scripts), {
stdio: 'inherit'
});
exit(result.status);
} else {
const script = lintScripts.shift();
process.argv = removeValueFromArray(process.argv, script);
require(`./${script}`);
}