Merge remote-tracking branch 'origin/master' into agent/download-season-queue

# Conflicts:
#	apps/electron-backend/src/app/events/database/download-requests.ts
#	libs/portal/xtream/feature/src/lib/serial-details/serial-details.component.spec.ts
#	libs/portal/xtream/feature/src/lib/serial-details/serial-details.component.ts
#	libs/ui/components/src/lib/season-container/episode-download.util.ts
#	libs/ui/components/src/lib/season-container/episode-utils.spec.ts
#	libs/ui/components/src/lib/season-container/season-container.component.spec.ts
#	libs/ui/components/src/lib/season-container/season-container.component.ts
This commit is contained in:
4gray committed 2026-08-02 18:06:37 +02:00
commit 31ac306bb0
243 files changed
+12935 -1106

No files matched your search

+10
View File
@@ -0,0 +1,10 @@
---
type: feature
area: dashboard
---
Dashboard source cards now warn when a portal subscription is about to lapse:
an amber "Expires in N d" chip appears within a week of the expiry date, and
an "Expired" chip once it has passed. Xtream expirations come from the same
cached status check the playlist switcher uses; Stalker portals reuse the
account info saved at import.
+7
View File
@@ -0,0 +1,7 @@
---
type: fix
area: downloads
issues: [897, 1289]
---
Xtream movie and episode downloads now keep their provider-compatible identity from the first request through legacy retries after source removal. Recoverable connection drops retain validated partials and show a credential-safe code; Retry resumes only with ETag or Last-Modified, otherwise it safely restarts.
+9
View File
@@ -0,0 +1,9 @@
---
type: fix
area: embedded-mpv
issues: [1139]
---
Opening the volume, audio, subtitle, speed or aspect menu in the Embedded MPV
player no longer makes the video jump or leave a black bar above the controls:
the menus now unfold inside the control bar instead of floating over the video.
+11
View File
@@ -0,0 +1,11 @@
---
type: fix
area: embedded-mpv
issues: [1139, 1145]
---
On Windows and Linux displays scaled above 100%, the Embedded MPV video was
drawn toward the top-left corner at a fraction of its size, in windowed and
fullscreen mode alike. The video now fills the player area correctly at any
display scale and page zoom, with no need for a high-DPI compatibility
workaround.
@@ -0,0 +1,12 @@
---
type: fix
area: playback
issues: [849, 910, 732]
---
Stalker streams that require the portal session now play in the built-in
players (HTML5, Video.js, ArtPlayer), not only in VLC/MPV: the player's
requests carry the portal cookie and token, scoped to that stream and
dropped when the player closes or the channel changes. VOD, series and
radio get the same headers live TV had — also from Favorites and Recently
Viewed.
+11
View File
@@ -0,0 +1,11 @@
---
type: fix
area: pwa
---
The self-hosted web app now talks to Stalker portals exactly like the desktop
app: MAG User-Agent, full STB cookie, serial-number header, and the
`JsHttpRequest` marker every real client sends — so portals that worked only in
the desktop app now work in the PWA too. Portal credentials (MAC and session
token) no longer travel in the portal request URL, keeping them out of server
logs.
+10
View File
@@ -0,0 +1,10 @@
---
type: feature
area: stalker
---
Stalker portals now have an Account info dialog — subscription status,
tariff plan, expiry date with a days-left counter, login, and portal
details. Open it from the header playlist menu, the dashboard source card,
or the command palette, same as for Xtream. If the portal is unreachable,
the data saved when the portal was added is shown instead.
+10
View File
@@ -0,0 +1,10 @@
---
type: fix
area: stalker
---
Stalker portals now receive channel commands exactly as a real set-top box
sends them: already-encoded parts of a channel's `cmd` are no longer
double-encoded, so strict portals and reseller panels that compare the command
literally work again. Playing Stalker channels from Favorites or global
collections now also handles portals that answer with relative stream paths.
+10
View File
@@ -0,0 +1,10 @@
---
type: fix
area: ui
issues: [1100]
---
IPTVnator is usable on a phone again. The navigation bar no longer sits off
screen, category and channel lists take the full width instead of squeezing
the content into a sliver, the video keeps a usable share of the screen, and
the M3U channel list can be reopened after hiding it.
+10
View File
@@ -0,0 +1,10 @@
---
type: feature
area: ui
issues: [1100]
---
On phone-sized screens the categories and filters panel no longer sits stacked
above the content — it is now a slide-in drawer, opened from a new button in
the header and closed by picking an entry, tapping outside it, or pressing
Escape. The content gets the whole screen while browsing.
@@ -0,0 +1,8 @@
---
type: fix
area: workspace
---
The playlist dropdown in the header shows a "Playlist info" entry for the
active playlist again, next to "Account info" and "Add playlist" — it had
disappeared when playlist actions moved into the per-row menu.
@@ -0,0 +1,9 @@
---
type: fix
area: workspace
---
The playlist sync overlay no longer shows a bare "Syncing playlist" card when
an Xtream playlist is loaded from the local library. Reading the saved catalog
from this device now reports its own phase, so the overlay always shows a
source badge and explains what is happening — remote fetch or local read.