anidb_api/http/models/anime/
resource.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
4pub(crate) struct ResourceList {
5 #[serde(rename = "resource")]
6 pub list: Vec<Resource>,
7}
8
9#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
10pub struct Resource {
11 #[serde(rename = "type")]
12 pub resource_type: ResourceType,
13 #[serde(rename = "externalentity")]
14 pub external_entity: Vec<ExternalEntity>,
15}
16
17#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
18pub struct ExternalEntity {
19 #[serde(rename = "identifier")]
20 pub identifiers: Option<Vec<String>>,
21 pub url: Option<String>,
22}
23
24#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
25pub enum ResourceType {
26 #[serde(rename(deserialize = "11"))]
27 DotLain = 11,
28 #[serde(rename(deserialize = "9"))]
29 Allcinema = 9,
30 #[serde(rename(deserialize = "48"))]
31 AmazonPrimeVideo = 48,
32 #[serde(rename(deserialize = "32"))]
33 AmazonVideo = 32,
34 #[serde(rename(deserialize = "16"))]
35 Animemorial = 16,
36 #[serde(rename(deserialize = "1"))]
37 AnimeNewsNetwork = 1,
38 #[serde(rename(deserialize = "3"))]
39 AnimeNFO = 3,
40 #[serde(rename(deserialize = "10"))]
41 Anison = 10,
42 #[serde(rename(deserialize = "33"))]
43 BaiduBaike = 33,
44 #[serde(rename(deserialize = "38"))]
45 Bangumi = 38,
46 #[serde(rename(deserialize = "47"))]
47 BiliBili = 47,
48 #[serde(rename(deserialize = "20"))]
49 ChineseWikipedia = 20,
50 #[serde(rename(deserialize = "28"))]
51 Crunchyroll = 28,
52 #[serde(rename(deserialize = "39"))]
53 Douban = 39,
54 #[serde(rename(deserialize = "6"))]
55 EnglishWikipedia = 6,
56 #[serde(rename(deserialize = "22"))]
57 Facebook = 22,
58 #[serde(rename(deserialize = "45"))]
59 Funimation = 45,
60 #[serde(rename(deserialize = "42"))]
61 HiDive = 42,
62 #[serde(rename(deserialize = "43"))]
63 IMDB = 43,
64 #[serde(rename(deserialize = "7"))]
65 JapaneseWikipedia = 7,
66 #[serde(rename(deserialize = "19"))]
67 KoreanWikipedia = 19,
68 #[serde(rename(deserialize = "15"))]
69 Marumegane = 15,
70 #[serde(rename(deserialize = "31"))]
71 MediaArtDatabase = 31,
72 #[serde(rename(deserialize = "2"))]
73 MyAnimeList = 2,
74 #[serde(rename(deserialize = "41"))]
75 Netflix = 41,
76 #[serde(rename(deserialize = "35"))]
77 OfficialBlog = 35,
78 #[serde(rename(deserialize = "5"))]
79 OfficialEnglishWebsite = 5,
80 #[serde(rename(deserialize = "34"))]
81 OfficialStream = 34,
82 #[serde(rename(deserialize = "4"))]
83 OfficialWebsite = 4,
84 #[serde(rename(deserialize = "46"))]
85 QQ = 46,
86 #[serde(rename(deserialize = "8"))]
87 Syoboi = 8,
88 #[serde(rename(deserialize = "44"))]
89 TMDB = 44,
90 #[serde(rename(deserialize = "17"))]
91 TvAnimationMuseum = 17,
92 #[serde(rename(deserialize = "23"))]
93 Twitter = 23,
94 #[serde(rename(deserialize = "14"))]
95 VisualNovelDatabase = 14,
96 #[serde(rename(deserialize = "26"))]
97 YouTube = 26,
98}