🐊Putout processor that runns all engines according to supported file types.
npm i @putout/engine-processor
const {
getProcessorRunners,
runProcessors,
} = require('@putout/engine-processor');
const processorRunners = getProcessorRunners(processors);
runProcessors({
name,
process,
options,
rawSource,
index,
length,
processorRunners, // optional
});
// returns
({
isProcessed,
places,
processedSource,
});Simplest possible procesor example can look like this:
module.exports.files = [
'*.js',
];
module.exports.find = (source) => {
return places;
};
module.exports.fix = (source) => {
return `modified ${source}`;
};
module.exports.branch = (source) => {
return [{
source,
startLine: 0,
}];
};
module.exports.merge = (source, list) => {
return list[0];
};MIT