Files
gitbook/lib/parse/listAssets.js
T
2016-05-10 15:23:59 +02:00

45 lines
1.1 KiB
JavaScript

var timing = require('../utils/timing');
/**
List all assets in a book
Assets are file not ignored and not a page
@param {Book} book
@param {List<String>} pages
@param
*/
function listAssets(book, pages) {
var fs = book.getContentFS();
var summary = book.getSummary();
var summaryFile = summary.getFile().getPath();
var glossary = book.getGlossary();
var glossaryFile = glossary.getFile().getPath();
var langs = book.getLanguages();
var langsFile = langs.getFile().getPath();
var config = book.getConfig();
var configFile = config.getFile().getPath();
return timing.measure(
'parse.listAssets',
fs.listAllFiles()
.then(function(files) {
return files.filterNot(function(file) {
return (
file === summaryFile ||
file === glossaryFile ||
file === langsFile ||
file === configFile ||
book.isContentFileIgnored(file) ||
pages.has(file)
);
});
})
);
}
module.exports = listAssets;