UNPKG

472 BJavaScriptView Raw
1const match = require('minimatch')
2const evaluate = require('./eval')
3
4module.exports = (files, filters, data, done) => {
5 if (!filters) {
6 return done()
7 }
8 const fileNames = Object.keys(files)
9 Object.keys(filters).forEach(glob => {
10 fileNames.forEach(file => {
11 if (match(file, glob, { dot: true })) {
12 const condition = filters[glob]
13 if (!evaluate(condition, data)) {
14 delete files[file]
15 }
16 }
17 })
18 })
19 done()
20}