mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-15 05:36:17 -08:00
fix(stalker): preserve specials season mapping
This commit is contained in:
1 parent
4fb04b340c
commit
f73ab6b496
2 files changed
+33
-6
No files matched your search
@@ -82,6 +82,31 @@ describe('stalker-series.adapters', () => {
|
||||
expect(firstEpisode.id).not.toBe(mapped['1'][1].id);
|
||||
});
|
||||
|
||||
it('preserves the Specials season zero through VOD episode mapping', () => {
|
||||
const mapped = mapVodSeriesEpisodes(
|
||||
[
|
||||
{
|
||||
id: 'specials',
|
||||
video_id: 'v1',
|
||||
name: 'Specials',
|
||||
season_number: '0',
|
||||
episodes: [
|
||||
{
|
||||
id: 'special-1',
|
||||
series_number: 1,
|
||||
name: 'Special episode',
|
||||
},
|
||||
],
|
||||
isLoading: false,
|
||||
isExpanded: false,
|
||||
},
|
||||
],
|
||||
{ parentSeriesId: 100 }
|
||||
);
|
||||
|
||||
expect(mapped['0'][0].season).toBe(0);
|
||||
});
|
||||
|
||||
it('generates deterministic VOD-series episode IDs for the same parent and provider episode', () => {
|
||||
const seasons = [
|
||||
{
|
||||
|
||||
@@ -74,10 +74,7 @@ function generateVodEpisodeId(options: {
|
||||
);
|
||||
}
|
||||
|
||||
function generateRegularEpisodeId(
|
||||
seed: string,
|
||||
episodeNum: number
|
||||
): number {
|
||||
function generateRegularEpisodeId(seed: string, episodeNum: number): number {
|
||||
return hashString(`${seed}_ep_${episodeNum}`);
|
||||
}
|
||||
|
||||
@@ -269,8 +266,13 @@ export function getVodSeriesSeasonNumber(
|
||||
season: VodSeriesSeasonVm,
|
||||
seasons: ReadonlyArray<VodSeriesSeasonVm>
|
||||
): number {
|
||||
const parsedSeasonNumber = Number(season.season_number);
|
||||
if (Number.isInteger(parsedSeasonNumber) && parsedSeasonNumber > 0) {
|
||||
const normalizedSeasonNumber = season.season_number.trim();
|
||||
const parsedSeasonNumber = Number(normalizedSeasonNumber);
|
||||
if (
|
||||
normalizedSeasonNumber !== '' &&
|
||||
Number.isInteger(parsedSeasonNumber) &&
|
||||
parsedSeasonNumber >= 0
|
||||
) {
|
||||
return parsedSeasonNumber;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user