mirror of
https://github.com/NoCrypt/migu.git
synced 2026-04-21 00:22:08 +00:00
fix: releases breaking on finished anime
This commit is contained in:
parent
8e40e85b33
commit
a3d4698d34
2 changed files with 5 additions and 4 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "Miru",
|
"name": "Miru",
|
||||||
"version": "1.0.2",
|
"version": "1.0.3",
|
||||||
"author": "ThaUnknown_ <ThaUnknown@users.noreply.github.com>",
|
"author": "ThaUnknown_ <ThaUnknown@users.noreply.github.com>",
|
||||||
"main": "src/index.js",
|
"main": "src/index.js",
|
||||||
"homepage": "https://github.com/ThaUnknown/miru#readme",
|
"homepage": "https://github.com/ThaUnknown/miru#readme",
|
||||||
|
|
|
||||||
|
|
@ -121,14 +121,15 @@ export async function resolveFileMedia (opts) {
|
||||||
let episode
|
let episode
|
||||||
let media = assoc[relations[praseObj.anime_title]]
|
let media = assoc[relations[praseObj.anime_title]]
|
||||||
// resolve episode, if movie, dont.
|
// resolve episode, if movie, dont.
|
||||||
if ((media?.format !== 'MOVIE' || (media.episodes || media.nextAiringEpisode?.episode)) && praseObj.episode_number) {
|
const maxep = media.nextAiringEpisode?.episode || media.episodes
|
||||||
|
if ((media?.format !== 'MOVIE' || maxep) && praseObj.episode_number) {
|
||||||
if (praseObj.episode_number.constructor === Array) {
|
if (praseObj.episode_number.constructor === Array) {
|
||||||
// is an episode range
|
// is an episode range
|
||||||
if (parseInt(praseObj.episode_number[0]) === 1) {
|
if (parseInt(praseObj.episode_number[0]) === 1) {
|
||||||
// if it starts with #1 and overflows then it includes more than 1 season in a batch, cant fix this cleanly, name is parsed per file basis so this shouldnt be an issue
|
// if it starts with #1 and overflows then it includes more than 1 season in a batch, cant fix this cleanly, name is parsed per file basis so this shouldnt be an issue
|
||||||
episode = `${praseObj.episode_number[0]} ~ ${praseObj.episode_number[1]}`
|
episode = `${praseObj.episode_number[0]} ~ ${praseObj.episode_number[1]}`
|
||||||
} else {
|
} else {
|
||||||
if ((media?.nextAiringEpisode?.episode || media.episodes) && parseInt(praseObj.episode_number[1]) > (media.nextAiringEpisode.episode || media.episodes)) {
|
if (maxep && parseInt(praseObj.episode_number[1]) > maxep) {
|
||||||
// if highest value is bigger than episode count or latest streamed episode +1 for safety, parseint to math.floor a number like 12.5 - specials - in 1 go
|
// if highest value is bigger than episode count or latest streamed episode +1 for safety, parseint to math.floor a number like 12.5 - specials - in 1 go
|
||||||
const result = await resolveSeason({ media, episode: praseObj.episode_number[1] })
|
const result = await resolveSeason({ media, episode: praseObj.episode_number[1] })
|
||||||
media = result.rootMedia
|
media = result.rootMedia
|
||||||
|
|
@ -140,7 +141,7 @@ export async function resolveFileMedia (opts) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ((media?.episodes || media?.nextAiringEpisode?.episode) && parseInt(praseObj.episode_number) > (media.episodes || media.nextAiringEpisode.episode)) {
|
if (maxep && parseInt(praseObj.episode_number) > maxep) {
|
||||||
// value bigger than episode count
|
// value bigger than episode count
|
||||||
const result = await resolveSeason({ media, episode: parseInt(praseObj.episode_number) })
|
const result = await resolveSeason({ media, episode: parseInt(praseObj.episode_number) })
|
||||||
media = result.rootMedia
|
media = result.rootMedia
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue