diff --git a/src/Database.zig b/src/Database.zig index a331ad4..19f7c9c 100644 --- a/src/Database.zig +++ b/src/Database.zig @@ -149,10 +149,12 @@ test fuzzyScoreString { pub const Ids = extern struct { anidb: Id.Optional = .none, anilist: Id.Optional = .none, + animecountdown: Id.Optional = .none, anisearch: Id.Optional = .none, kitsu: Id.Optional = .none, livechart: Id.Optional = .none, myanimelist: Id.Optional = .none, + simkl: Id.Optional = .none, pub fn primary(ids: Ids) Id { return ids.primaryChecked() orelse unreachable; diff --git a/src/database/Id.zig b/src/database/Id.zig index bd714cf..7df3c0c 100644 --- a/src/database/Id.zig +++ b/src/database/Id.zig @@ -28,10 +28,12 @@ pub fn format( pub const Site = enum(u8) { anidb, anilist, + animecountdown, anisearch, kitsu, livechart, myanimelist, + simkl, pub const all = std.meta.tags(Site); @@ -43,25 +45,18 @@ pub const Site = enum(u8) { /// old or alternative urls for the site. pub fn urls(site: Site) []const []const u8 { return switch (site) { - .anidb => &.{ - "https://anidb.net/anime/", - }, - .anilist => &.{ - "https://anilist.co/anime/", - }, - .anisearch => &.{ - "https://anisearch.com/anime/", - }, + .anidb => &.{"https://anidb.net/anime/"}, + .anilist => &.{"https://anilist.co/anime/"}, + .animecountdown => &.{"https://animecountdown.com/"}, + .anisearch => &.{"https://anisearch.com/anime/"}, + .livechart => &.{"https://livechart.me/anime/"}, + .myanimelist => &.{"https://myanimelist.net/anime/"}, + .simkl => &.{"https://simkl.com/anime/"}, + .kitsu => &.{ "https://kitsu.app/anime/", "https://kitsu.io/anime/", }, - .livechart => &.{ - "https://livechart.me/anime/", - }, - .myanimelist => &.{ - "https://myanimelist.net/anime/", - }, }; } }; diff --git a/src/database/Image.zig b/src/database/Image.zig index b05cf17..001d05e 100644 --- a/src/database/Image.zig +++ b/src/database/Image.zig @@ -22,8 +22,6 @@ pub fn format( } pub const Base = enum(u8) { - no_pic1, - no_pic2, anidb, anilist, animeplanet1, @@ -33,12 +31,15 @@ pub const Base = enum(u8) { anisearch3, kitsu1, kitsu2, + kitsu3, livechart, myanimelist1, myanimelist2, + no_pic1, + no_pic2, notifymoe1, notifymoe2, - kitsu3, + simkl, pub fn fromUrl(str: []const u8) !Image.Base { for (std.meta.tags(Image.Base)) |base| { @@ -52,23 +53,24 @@ pub const Base = enum(u8) { pub fn url(base: Image.Base) []const u8 { return switch (base) { - .no_pic1 => "https://raw.githubusercontent.com/manami-project/anime-offline-database/master/pics/no_pic.png", - .no_pic2 => "https://raw.githubusercontent.com/manami-project/anime-offline-database/master/pics/no_pic_thumbnail.png", - .livechart => "https://u.livechart.me/anime/", + .anidb => "https://cdn.anidb.net/images/main/", .anilist => "https://s4.anilist.co/file/anilistcdn/media/anime/cover/medium/", - .notifymoe1 => "https://media.notify.moe/images/anime/large/", - .notifymoe2 => "https://media.notify.moe/images/anime/small/", - .kitsu1 => "https://media.kitsu.io/anime/poster_images/", - .kitsu2 => "https://media.kitsu.io/anime/", - .myanimelist1 => "https://cdn.myanimelist.net/images/anime/", - .myanimelist2 => "https://cdn.myanimelist.net/images/", + .animeplanet1 => "https://cdn.anime-planet.com/images/anime/default/", + .animeplanet2 => "https://cdn.anime-planet.com/anime/primary/", .anisearch1 => "https://cdn.anisearch.com/images/anime/cover/full/", .anisearch2 => "https://cdn.anisearch.com/images/anime/cover/", .anisearch3 => "https://www.anisearch.com/images/anime/cover/", - .animeplanet1 => "https://cdn.anime-planet.com/images/anime/default/", - .animeplanet2 => "https://cdn.anime-planet.com/anime/primary/", - .anidb => "https://cdn.anidb.net/images/main/", + .kitsu1 => "https://media.kitsu.io/anime/poster_images/", + .kitsu2 => "https://media.kitsu.io/anime/", .kitsu3 => "https://media.kitsu.app/anime/", + .livechart => "https://u.livechart.me/anime/", + .myanimelist1 => "https://cdn.myanimelist.net/images/anime/", + .myanimelist2 => "https://cdn.myanimelist.net/images/", + .no_pic1 => "https://raw.githubusercontent.com/manami-project/anime-offline-database/master/pics/no_pic.png", + .no_pic2 => "https://raw.githubusercontent.com/manami-project/anime-offline-database/master/pics/no_pic_thumbnail.png", + .notifymoe1 => "https://media.notify.moe/images/anime/large/", + .notifymoe2 => "https://media.notify.moe/images/anime/small/", + .simkl => "https://simkl.in/posters/", }; } };