Add serie model, dummy controller & example

This commit is contained in:
Zoe Roux
2024-11-09 12:29:09 +01:00
parent 89952185a9
commit c5a502ec32
9 changed files with 196 additions and 30 deletions
+59
View File
@@ -0,0 +1,59 @@
import type { CompleteVideo } from "../video";
export const bubble: CompleteVideo = {
id: "0934da28-4a49-404e-920b-a150404a3b6d",
slug: "bubble",
path: "/video/Bubble/Bubble (2022).mkv",
rendering: "459429fa062adeebedcc2bb04b9965de0262bfa453369783132d261be79021bd",
part: null,
version: 1,
createdAt: "2023-11-29T11:42:06.030838Z",
movie: {
id: "008f0b42-61b8-4155-857a-cbe5f40dd35d",
slug: "bubble",
name: "Bubble",
tagline: "Is she a calamity or a blessing?",
description:
"In an abandoned Tokyo overrun by bubbles and gravitational abnormalities, one gifted young man has a fateful meeting with a mysterious girl.",
aliases: ["Baburu", "バブル:2022", "Bubble"],
tags: ["adolescence", "disaster", "battle", "gravity", "anime"],
genres: ["animation", "adventure", "science-fiction", "fantasy"],
rating: 74,
status: "finished",
runtime: 101,
airDate: "2022-02-14",
originalLanguage: "ja",
poster: {
id: "befdc7dd-2a67-0704-92af-90d49eee0315",
source:
"https://image.tmdb.org/t/p/original/65dad96VE8FJPEdrAkhdsuWMWH9.jpg",
blurhash: "LFC@2F;K$%xZ5?W.MwNF0iD~MxR:",
},
thumbnail: {
id: "b29908f3-a64d-ae98-923b-18bf7995ab04",
source:
"https://image.tmdb.org/t/p/original/a8Q2g0g7XzAF6gcB8qgn37ccb9Y.jpg",
blurhash: "LpH3afE1XAveyGS7t6V[R4xZn+S6",
},
banner: null,
logo: {
id: "3357fad0-de40-4ca5-15e6-eb065d35be86",
source:
"https://image.tmdb.org/t/p/original/ihIs7fayAmZieMlMQbs6TWM77uf.png",
blurhash: "LMDc5#MwE0,sTKE0R*S~4mxunhb_",
},
trailerUrl: "https://www.youtube.com/watch?v=vs7zsyIZkMM",
createdAt: "2023-11-29T11:42:06.030838Z",
nextRefresh: "2025-01-07T22:40:59.960952Z",
externalId: {
themoviedatabase: {
dataId: "912598",
link: "https://www.themoviedb.org/movie/912598",
},
imdb: {
dataId: "tt16360006",
link: "https://www.imdb.com/title/tt16360006",
},
},
},
};
+27
View File
@@ -0,0 +1,27 @@
import type { TSchema } from "elysia";
export const registerExamples = <T extends TSchema>(
schema: T,
...examples: (T["static"] | undefined)[]
) => {
if ("anyOf" in schema) {
for (const union of schema.anyOf) {
registerExamples(union, examples);
}
return;
}
for (const example of examples) {
if (!example) continue;
for (const [key, val] of Object.entries(example)) {
const prop = schema.properties[
key as keyof typeof schema.properties
] as TSchema;
if (!prop) continue;
prop.examples ??= [];
prop.examples.push(val);
}
}
};
export { bubble } from "./bubble";
export { madeInAbyss } from "./made-in-abyss";
+79
View File
@@ -0,0 +1,79 @@
import type { Serie } from "../serie";
export const madeInAbyss: Serie = {
id: "04bcf2ac-3c09-42f6-8357-b003798f9562",
slug: "made-in-abyss",
name: "Made in Abyss",
tagline: "How far would you go… for the ones you love?",
aliases: [
"Made in Abyss: The Golden City of the Scorching Sun",
"Meidoinabisu",
"Meidoinabisu: Retsujitsu no ôgonkyô",
],
description:
"Located in the center of a remote island, the Abyss is the last unexplored region, a huge and treacherous fathomless hole inhabited by strange creatures where only the bravest adventurers descend in search of ancient relics. In the upper levels of the Abyss, Riko, a girl who dreams of becoming an explorer, stumbles upon a mysterious little boy.",
tags: [
"android",
"amnesia",
"post-apocalyptic future",
"exploration",
"friendship",
"mecha",
"survival",
"curse",
"tragedy",
"orphan",
"based on manga",
"robot",
"dark fantasy",
"seinen",
"anime",
"drastic change of life",
"fantasy",
"adventure",
],
genres: [
"animation",
"drama",
"action",
"adventure",
"science-fiction",
"fantasy",
],
status: "finished",
rating: 84,
runtime: 24,
originalLanguage: "ja",
startAir: "2017-07-07",
endAir: "2022-09-28",
poster: {
id: "8205a20e-d91f-804c-3a84-4e4dc6202d66",
source:
"https://image.tmdb.org/t/p/original/4Bh9qzB1Kau4RDaVQXVFdoJ0HcE.jpg",
blurhash: "LZGlS3XTD%jE~Wf,SeV@%2o|WERj",
},
thumbnail: {
id: "819d816c-88f6-9f3a-b5e7-ce3daaffbac4",
source:
"https://image.tmdb.org/t/p/original/Df9XrvZFIeQfLKfu8evRmzvRsd.jpg",
blurhash: "LmJtk{kq~q%2bbWCxaV@.8RixuNG",
},
logo: {
id: "23cb7b06-8406-2288-8e40-08bfc16180b5",
source:
"https://image.tmdb.org/t/p/original/7hY3Q4GhkiYPBfn4UoVg0AO4Zgk.png",
blurhash: "LKGaa%M{0zbI#7$%bbofGGw^wcw{",
},
banner: null,
trailerUrl: "https://www.youtube.com/watch?v=ePOyy6Wlk4s",
externalId: {
themoviedatabase: {
dataId: "72636",
link: "https://www.themoviedb.org/tv/72636",
},
imdb: { dataId: "tt7222086", link: "https://www.imdb.com/title/tt7222086" },
tvdb: { dataId: "326109", link: null },
},
createdAt: "2023-11-29T11:12:11.949503Z",
nextRefresh: "2025-01-07T11:42:50.948248Z",
};