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]

51 lines 2.92 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; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint-disable @typescript-eslint/camelcase */ const lodash_1 = __importDefault(require("lodash")); const format_1 = require("../format"); const actor_1 = require("./actor"); const model_1 = require("./model"); exports.isShow = (model) => "seasonSummary" in model; exports.isSerializedShow = (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, season_summary }) => ({ title, sort_title, original_title, content_rating, tagline, studio, aired, summary, rating, genres, collections, actors, season_summary }); exports.serializeShow = (data) => { const { actors } = data, others = __rest(data, ["actors"]); return sort(model_1.mapSerializedSeasonSummary(model_1.mapSerializedTitle(model_1.mapSerializedContentRating(Object.assign(Object.assign({}, others), { actors: actors.map(actor_1.serializeActor) }))))); }; exports.deserializeShow = (data) => { const { actors } = data, others = __rest(data, ["actors"]); return model_1.mapSeasonSummary(model_1.mapTitle(model_1.mapContentRating(Object.assign(Object.assign({}, others), { actors: actors.map(actor_1.deserializeActor) })))); }; exports.normalizeShow = (data) => { const { title, sortTitle, originalTitle, tagline, summary, studio, genres, collections, actors, seasonSummary } = data, others = __rest(data, ["title", "sortTitle", "originalTitle", "tagline", "summary", "studio", "genres", "collections", "actors", "seasonSummary"]); 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), seasonSummary: lodash_1.default.mapValues(seasonSummary, value => format_1.normalize(value)) }); }; //# sourceMappingURL=show.js.map