forked from DebaucheryLibrarian/traxxx
48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
function curateActor(actor) {
|
|
const curatedActor = {
|
|
...actor,
|
|
origin: actor.originCountry && {
|
|
country: actor.originCountry,
|
|
},
|
|
};
|
|
|
|
if (actor.avatar) curatedActor.avatar = actor.avatar.media;
|
|
|
|
return curatedActor;
|
|
}
|
|
|
|
function curateRelease(release) {
|
|
console.log(release);
|
|
|
|
const curatedRelease = {
|
|
...release,
|
|
actors: release.actors ? release.actors.map(({ actor }) => curateActor(actor)) : [],
|
|
poster: release.poster && release.poster.media,
|
|
tags: release.tags ? release.tags.map(({ tag }) => tag) : [],
|
|
network: release.site.network,
|
|
};
|
|
|
|
if (release.photos) curatedRelease.photos = release.photos.map(({ media }) => media);
|
|
if (release.trailer) curatedRelease.trailer = release.trailer.media;
|
|
|
|
return curatedRelease;
|
|
}
|
|
|
|
function curateTag(tag) {
|
|
const curatedTag = {
|
|
...tag,
|
|
};
|
|
|
|
if (tag.releases) curatedTag.releases = tag.releases.map(({ release }) => curateRelease(release));
|
|
if (tag.photos) curatedTag.photos = tag.photos.map(({ media }) => media);
|
|
if (tag.poster) curatedTag.poster = tag.poster.media;
|
|
|
|
return curatedTag;
|
|
}
|
|
|
|
export {
|
|
curateActor,
|
|
curateRelease,
|
|
curateTag,
|
|
};
|