mirror of
https://github.com/morhetz/gruvbox.git
synced 2025-11-18 00:03:38 -05:00
26 lines
892 B
JavaScript
26 lines
892 B
JavaScript
'use strict';
|
|
|
|
var _keys = require('babel-runtime/core-js/object/keys');
|
|
|
|
var _keys2 = _interopRequireDefault(_keys);
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
var minimatch = require('minimatch');
|
|
|
|
module.exports = function generateTasks(config, files) {
|
|
var trackers = config.trackers !== undefined ? config.trackers : config;
|
|
var resolve = function resolve(file) {
|
|
return files[file];
|
|
};
|
|
|
|
return (0, _keys2.default)(trackers).map(function (pattern) {
|
|
var commands = trackers[pattern];
|
|
var filter = minimatch.filter(pattern, { matchBase: true, dot: true });
|
|
var fileList = (0, _keys2.default)(files).filter(filter).map(resolve);
|
|
if (fileList.length) {
|
|
return { pattern: pattern, commands: commands, fileList: fileList };
|
|
}
|
|
return undefined;
|
|
}).filter(Boolean); // Filter undefined values
|
|
}; |