mirror of
https://github.com/zoriya/Kyoo.git
synced 2026-05-23 07:32:28 -04:00
Add serie model, dummy controller & example
This commit is contained in:
@@ -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",
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -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";
|
||||
@@ -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",
|
||||
};
|
||||
Reference in New Issue
Block a user