33 lines
562 B
JavaScript
33 lines
562 B
JavaScript
|
'use strict';
|
||
|
|
||
|
const scrapers = require('./scrapers');
|
||
|
|
||
|
function resolveScraper(entity) {
|
||
|
if (scrapers.releases[entity.slug]) {
|
||
|
return scrapers.releases[entity.slug];
|
||
|
}
|
||
|
|
||
|
if (entity.parent) {
|
||
|
return resolveScraper(entity.parent);
|
||
|
}
|
||
|
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
function resolveLayoutScraper(entity, scraper) {
|
||
|
if (scraper?.[entity.parameters?.layout]) {
|
||
|
return scraper[entity.parameters.layout];
|
||
|
}
|
||
|
|
||
|
if (entity.parent) {
|
||
|
return resolveLayoutScraper(entity.parent, scraper);
|
||
|
}
|
||
|
|
||
|
return scraper;
|
||
|
}
|
||
|
|
||
|
module.exports = {
|
||
|
resolveScraper,
|
||
|
resolveLayoutScraper,
|
||
|
};
|