From 130fa5ee114dc9e7a11579814762f36cb8bb7791 Mon Sep 17 00:00:00 2001 From: Tera <1527149+Denoder@users.noreply.github.com> Date: Fri, 10 May 2024 00:27:35 +0300 Subject: [PATCH 1/4] [HiDive] Remove unreleased episodes from list When doing a range download/single selection of an anime that's currently airing episodes that haven't released will still get downloaded at 0 bytes. This will skip them if they have a date range in them, rather than an appropriate title. --- hidive.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/hidive.ts b/hidive.ts index 6492969..e146acd 100644 --- a/hidive.ts +++ b/hidive.ts @@ -369,6 +369,10 @@ export default class Hidive implements ServiceClass { season.value.paging.moreDataAvailable = seasonPage.value.paging.moreDataAvailable; } for (const episode of season.value.episodes) { + const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; + if (datePattern.test(episode.title)) { + continue; + } if (episode.title.includes(' - ')) { episode.episodeInformation.episodeNumber = parseFloat(episode.title.split(' - ')[0].replace('E', '')); episode.title = episode.title.split(' - ')[1]; @@ -397,6 +401,10 @@ export default class Hidive implements ServiceClass { } const episodes: Episode[] = []; for (const episode of season.value.episodes) { + const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; + if (datePattern.test(episode.title)) { + continue; + } if (episode.title.includes(' - ')) { episode.episodeInformation.episodeNumber = parseFloat(episode.title.split(' - ')[0].replace('E', '')); episode.title = episode.title.split(' - ')[1]; @@ -1077,4 +1085,4 @@ export default class Hidive implements ServiceClass { setTimeout(resolve, ms); }); } -} \ No newline at end of file +} From 87c7de7417699e526ff6d158df65456f58b66a74 Mon Sep 17 00:00:00 2001 From: Tera <1527149+Denoder@users.noreply.github.com> Date: Sun, 19 May 2024 00:06:09 +0300 Subject: [PATCH 2/4] Update hidive.ts Account for when the episode title is added, but still not released, when it's not available there's a 10 second clip. --- hidive.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hidive.ts b/hidive.ts index e146acd..5f063e8 100644 --- a/hidive.ts +++ b/hidive.ts @@ -370,7 +370,7 @@ export default class Hidive implements ServiceClass { } for (const episode of season.value.episodes) { const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; - if (datePattern.test(episode.title)) { + if (datePattern.test(episode.title) && episode.duration === 10) { continue; } if (episode.title.includes(' - ')) { @@ -402,7 +402,7 @@ export default class Hidive implements ServiceClass { const episodes: Episode[] = []; for (const episode of season.value.episodes) { const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; - if (datePattern.test(episode.title)) { + if (datePattern.test(episode.title) && episode.duration === 10) { continue; } if (episode.title.includes(' - ')) { From ab73931fb9f6ff6063a39d7e69e427ad07b6afa4 Mon Sep 17 00:00:00 2001 From: Tera <1527149+Denoder@users.noreply.github.com> Date: Sun, 19 May 2024 00:11:51 +0300 Subject: [PATCH 3/4] [HiDive] Remove unreleased episodes from list Allow listing to be visible but now allow it in the episodes list if it's not available --- hidive.ts | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/hidive.ts b/hidive.ts index 5f063e8..c26088a 100644 --- a/hidive.ts +++ b/hidive.ts @@ -370,15 +370,14 @@ export default class Hidive implements ServiceClass { } for (const episode of season.value.episodes) { const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; - if (datePattern.test(episode.title) && episode.duration === 10) { - continue; - } if (episode.title.includes(' - ')) { episode.episodeInformation.episodeNumber = parseFloat(episode.title.split(' - ')[0].replace('E', '')); episode.title = episode.title.split(' - ')[1]; } //S${episode.episodeInformation.seasonNumber}E${episode.episodeInformation.episodeNumber} - - episodes.push(episode); + if (!datePattern.test(episode.title) && !episode.duration === 10) { + episodes.push(episode); + } console.info(` [E.${episode.id}] ${episode.title}`); } } @@ -402,15 +401,14 @@ export default class Hidive implements ServiceClass { const episodes: Episode[] = []; for (const episode of season.value.episodes) { const datePattern = /\d{1,2}\/\d{1,2}\/\d{2,4} \d{1,2}:\d{2} UTC/; - if (datePattern.test(episode.title) && episode.duration === 10) { - continue; - } if (episode.title.includes(' - ')) { episode.episodeInformation.episodeNumber = parseFloat(episode.title.split(' - ')[0].replace('E', '')); episode.title = episode.title.split(' - ')[1]; } //S${episode.episodeInformation.seasonNumber}E${episode.episodeInformation.episodeNumber} - - episodes.push(episode); + if (!datePattern.test(episode.title) && !episode.duration === 10) { + episodes.push(episode); + } console.info(` [E.${episode.id}] ${episode.title}`); } const series: NewHidiveSeriesExtra = {...season.value.series, season: season.value}; From 33afc263e7b40f815a76290efc71db905091fd1a Mon Sep 17 00:00:00 2001 From: Tera <1527149+Denoder@users.noreply.github.com> Date: Tue, 21 May 2024 10:56:07 +0300 Subject: [PATCH 4/4] [HiDive] Remove unreleased episodes from list --- hidive.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hidive.ts b/hidive.ts index c26088a..5d68e14 100644 --- a/hidive.ts +++ b/hidive.ts @@ -375,7 +375,7 @@ export default class Hidive implements ServiceClass { episode.title = episode.title.split(' - ')[1]; } //S${episode.episodeInformation.seasonNumber}E${episode.episodeInformation.episodeNumber} - - if (!datePattern.test(episode.title) && !episode.duration === 10) { + if (!datePattern.test(episode.title) && episode.duration !== 10) { episodes.push(episode); } console.info(` [E.${episode.id}] ${episode.title}`); @@ -406,7 +406,7 @@ export default class Hidive implements ServiceClass { episode.title = episode.title.split(' - ')[1]; } //S${episode.episodeInformation.seasonNumber}E${episode.episodeInformation.episodeNumber} - - if (!datePattern.test(episode.title) && !episode.duration === 10) { + if (!datePattern.test(episode.title) && episode.duration !== 10) { episodes.push(episode); } console.info(` [E.${episode.id}] ${episode.title}`);