in public/src/js/modules/content-api.js [166:210]
function decorateBatch (articles) {
var ids = [];
articles.forEach(function(article){
var data = cache.get('contentApi', article.id());
if (data) {
populate(article, data);
} else {
ids.push(article.id());
}
});
return fetchContentByIds(ids)
.then(function(res = {}) {
var results = res.content;
if (!_.isArray(results)) {
return;
}
results.forEach(function(result) {
var pageCode = internalPageCode(result);
if (pageCode) {
cache.put('contentApi', pageCode, result);
_.filter(articles, function(article) {
var id = article.id();
return id === pageCode;
}).forEach(function(article) {
populate(article, result);
});
}
});
_.chain(articles)
// legacy-snaps
.filter(function(article) { return !article.meta.href(); })
.filter(function(article) { return !article.meta.snapType(); })
.each(function(article) {
article.state.isEmpty(!article.state.isLoaded());
});
})
.catch(reportErrors);
}