import { Serializer } from '../serializer'; export const workSerializer = new Serializer(async (work) => { const [ languages, collectionParts, copies, names, transformationOf, transformedBy, workAuthors, workCharacters, workTags, worlds, ] = await Promise.all([ work.languages, work.collectionParts, work.copies, work.names, work.transformationOf, work.transformedBy, work.workAuthors, work.workCharacters, work.workTags, work.worlds, ]); return { id: work.id, isCanonical: work.isCanonical, nameCanonical: work.nameCanonical, rating: work.rating, releaseDate: work.releaseDate, languages: languages.map((e) => e.code), collectionParts: collectionParts.map((e) => e.id), copies: copies.map((e) => e.id), names: names.map((e) => e.id), transformationOf: transformationOf.map((e) => e.id), transformedBy: transformedBy.map((e) => e.id), workAuthors: workAuthors.map((e) => e.id), workCharacters: workCharacters.map((e) => e.id), workTags: workTags.map((e) => e.id), worlds: worlds.map((e) => e.id), }; });