1 | const _ = require('underscore');
|
2 | const filterTransformers = require('./filter-transformers');
|
3 | const pruneDependencies = require('./prune-dependencies');
|
4 |
|
5 | module.exports = async ({ file, transformers }) => {
|
6 | const applicable = filterTransformers({ transformers, path: file.path });
|
7 | for (const { fn, options = {} } of applicable) {
|
8 | const changes = await fn({ file, options });
|
9 | file = pruneDependencies(_.extend({}, file, changes));
|
10 | }
|
11 | return file;
|
12 | };
|