anidb_api/http/models/anime/
resource.rs

1use 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}