fix(anime): thread episode metadata through stream playback and fix seas

- Split anime browser stream titles into series/season/episode fields (episode-metadata.ts) instead of one joined string, so stats grouping, the mpv title, and the Jimaku/TsukiHime modals all get real values instead of a filename-derived "m3u8"
- Fix AniList season resolver to walk through split-cour sequels and specials without counting them as a season, and to surface rate-limit/network failures instead of falling through to a wrong air-order guess
- Add a Season field to the TsukiHime modal and include later seasons in its search query
- Rewrite WebVTT subtitle tracks as SRT before handing them to alass, since alass has no VTT support and streams serve VTT
- Update CHANGELOG and troubleshooting docs
This commit is contained in:
2026-08-01 23:34:23 -07:00
parent 035ff8e7bf
commit c94830531c
25 changed files with 1725 additions and 69 deletions
+2
View File
@@ -24,6 +24,7 @@ export type RendererDom = {
tsukihimeModal: HTMLDivElement;
tsukihimeTitleInput: HTMLInputElement;
tsukihimeSeasonInput: HTMLInputElement;
tsukihimeEpisodeInput: HTMLInputElement;
tsukihimeSearchButton: HTMLButtonElement;
tsukihimeCloseButton: HTMLButtonElement;
@@ -180,6 +181,7 @@ export function resolveRendererDom(): RendererDom {
tsukihimeModal: getRequiredElement<HTMLDivElement>('tsukihimeModal'),
tsukihimeTitleInput: getRequiredElement<HTMLInputElement>('tsukihimeTitle'),
tsukihimeSeasonInput: getRequiredElement<HTMLInputElement>('tsukihimeSeason'),
tsukihimeEpisodeInput: getRequiredElement<HTMLInputElement>('tsukihimeEpisode'),
tsukihimeSearchButton: getRequiredElement<HTMLButtonElement>('tsukihimeSearch'),
tsukihimeCloseButton: getRequiredElement<HTMLButtonElement>('tsukihimeClose'),