feat(playlist): open recognized M3U movies in the VOD detail view (#1420)

M3U entries recognized as movie files now open in the portals' two-state VOD
detail view, fed by TMDB metadata instead of the empty EPG zone. Watch-first:
activation still plays immediately, with plot, cast, rating and artwork below
the player; Escape reveals the Browse hero.

Recognition is a synchronous URL-shape heuristic (movie container extension or
an Xtream-style /movie/ path; radio, DASH, /series/ paths and episode-marker
names keep today's live layout), gated on TMDB enrichment plus the new
default-on Settings.m3uVodDetails toggle. Works in Electron and the PWA.

Review follow-ups included: the playback payload no longer carries TMDB fields
(its identity is the player's source-application key), the persisted volume
reaches the player and survives Browse → Play, the enrichment guard keys on
the full lookup identity, and the saved engine mounts first time instead of
briefly falling back to Video.js.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
4grayandClaude Fable 5 authored and GitHub committed 2026-08-13 17:18:06 +02:00
1 parent 82a2948ffd
commit f7bb3a13db
49 files changed
+2344 -146

No files matched your search

@@ -131,6 +131,14 @@ export interface Settings {
* session, so this cannot loop.
*/
vodAutoFailover?: boolean;
/**
* Present M3U entries recognized as movie files (by URL shape) in the
* VOD detail view with TMDB metadata instead of the EPG zone. On by
* default; missing values mean enabled. Only takes effect while TMDB
* enrichment itself is enabled — without it there is no metadata to
* show, so recognition never runs.
*/
m3uVodDetails?: boolean;
epgUrl: string[];
streamFormat: StreamFormat;
openStreamOnDoubleClick: boolean;