UNPKG

@aliceplex/core

Version:

[![License][license_badge]][license] [![Pipelines][pipelines_badge]][pipelines] [![Coverage][coverage_badge]][pipelines] [![NPM][npm_badge]][npm] [![semantic-release][semantic_release_badge]][semantic_release]

48 lines 2.72 kB
"use strict"; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint-disable @typescript-eslint/camelcase */ const format_1 = require("../format"); const actor_1 = require("./actor"); const model_1 = require("./model"); exports.isMovie = (model) => "sortTitle" in model && !("seasonSummary" in model); exports.isSerializedMovie = (model) => "sort_title" in model && !("season_summary" in model); const sort = ({ title, sort_title, original_title, content_rating, tagline, studio, aired, summary, rating, genres, collections, actors, directors, writers }) => ({ title, sort_title, original_title, content_rating, tagline, studio, aired, summary, rating, genres, collections, actors, directors, writers }); exports.serializeMovie = (data) => { const { actors } = data, others = __rest(data, ["actors"]); return sort(model_1.mapSerializedTitle(model_1.mapSerializedContentRating(Object.assign(Object.assign({}, others), { actors: actors.map(actor_1.serializeActor) })))); }; exports.deserializeMovie = (data) => { const { actors } = data, others = __rest(data, ["actors"]); return model_1.mapTitle(model_1.mapContentRating(Object.assign(Object.assign({}, others), { actors: actors.map(actor_1.deserializeActor) }))); }; exports.normalizeMovie = (data) => { const { title, sortTitle, originalTitle, tagline, summary, studio, genres, collections, actors, directors, writers } = data, others = __rest(data, ["title", "sortTitle", "originalTitle", "tagline", "summary", "studio", "genres", "collections", "actors", "directors", "writers"]); return Object.assign(Object.assign({}, others), { title: format_1.normalizeTitle(title), sortTitle: format_1.normalizeTitle(sortTitle), originalTitle: originalTitle.map(format_1.normalize), tagline: tagline.map(format_1.normalize), studio: studio.map(format_1.normalize), summary: summary ? format_1.normalize(summary) : summary, genres: genres.map(format_1.normalize), collections: collections.map(format_1.normalizeTitle), actors: actors.map(actor_1.normalizeActor), directors: directors.map(format_1.normalize), writers: writers.map(format_1.normalize) }); }; //# sourceMappingURL=movie.js.map