soulsync/webui/static
BoulderBadgeDad 01c101d24a Video: live per-episode download tracking + auto-wishlist today's airings
Two Sonarr-parity features.

1) Per-episode live tracking. "Grab season" was headless (only a button label
   changed); episode rows had a status span that was never populated. Now every
   episode ROW shows its own live state — Searching → Downloading % → Downloaded
   / Failed — via epTrack() polling /downloads/status?id, matching the inline
   movie tracker. Grab season lights all target rows at once; manual + per-source
   auto grabs also light their row; reopening the modal resumes tracking in-flight
   episodes (resumeEpisodeTracking via /downloads/active + search_ctx match).
   Season batch grabs through the same payload as a manual grab (_pickAndGrab →
   sendGrab(buildGrabPayload)).

2) Auto-wishlist airing episodes. New daily automation (video_add_airing_episodes):
   reads the calendar for episodes airing TODAY for followed shows, skips owned
   ones, adds the rest to the wishlist (idempotent). Handler uses injected seams
   (calendar read + wishlist write) so it's unit-tested without a DB/server.
   Registered + action block + seeded as a daily system automation (01:00),
   owned_by=video.
2026-06-21 02:27:08 -07:00
..
docs
vendor
video Video: live per-episode download tracking + auto-wishlist today's airings 2026-06-21 02:27:08 -07:00
amazon.svg
api-monitor.js Watchlist: per-artist 'auto-download' toggle (follow-only) — off = discover/surface releases but skip the wishlist add; default on 2026-06-13 08:07:20 -07:00
artists.png
audiodb.png
auto-sync.js Mirrored playlists: custom name alias (overrides display + sync name, survives upstream refresh) — card rename button like the source-ref editor 2026-06-13 00:23:56 -07:00
automation.png
basic-search-v2.css
beatport-ui.js
blocklist.js Blocklist Phase 1 (backfill + API + modal): the Blocklist button on the watchlist page 2026-06-07 15:25:52 -07:00
core.js Remove old auto-acting Quality Scanner tool (replaced by Quality Upgrade Finder job) 2026-06-13 12:14:45 -07:00
dashboard.png
discover-section-controller.js
discover.js Discover: promote recommendations to a first-class section + show the 'why' 2026-06-03 18:28:19 -07:00
discover.png
docs-images-needed.md
docs.js
downloads.js resolve merge conflict in style.css 2026-06-11 18:21:04 +02:00
enrichment-manager.js Show "Running (Spotify Free)" instead of "rate limited" while the worker bridges 2026-06-05 22:08:07 -07:00
enrichment.js Add Empty Folder Cleaner library-maintenance job (corruption's request) 2026-06-11 22:11:26 -07:00
explorer.png
favicon.png
help.png
helper.js Remove old auto-acting Quality Scanner tool (replaced by Quality Upgrade Finder job) 2026-06-13 12:14:45 -07:00
hydrabase.png
import.png
init.js Manage Profiles: make the login-password state visible (clarity) 2026-06-11 21:10:02 -07:00
library.js Export: combine watchlist + library into one button with a scope selector 2026-06-11 23:10:54 -07:00
library.png
manifest.json
media-player.js #809 review follow-up: crossfade preload also streams un-mounted Navidrome tracks 2026-06-07 13:55:58 -07:00
mobile.css Mobile: notification panel fits the screen (override inline JS positioning) 2026-06-04 20:50:33 -07:00
my-accounts.js Profiles: Tidal logo on a light disc (dark logo) in My Accounts 2026-06-10 13:49:25 -07:00
origin-history.js Watchlist: show WHICH tracks a scan found/added + group Download Origins (#831) 2026-06-09 20:14:02 -07:00
pages-extra.js Server playlists: M3U export now downloads the .m3u to the browser too (was only saving server-side) — matches the other Export-as-M3U buttons 2026-06-13 08:35:02 -07:00
particles.js perf(webui): faster navigation, smoother scroll, no spurious settings save 2026-06-04 02:40:27 +02:00
placeholder-album.png
pwa-icon-192.png
pwa-icon-512.png
search.js Multi-artist tags: Search → Download Now finally knows its metadata source (Netti93) 2026-06-09 17:20:16 -07:00
search.png
service-switch.js Profiles: revert Service Status modal to admin-only 2026-06-10 11:43:22 -07:00
settings.js fix: video side can configure server connections again, without changing music 2026-06-15 14:59:36 -07:00
settings.png
setup-wizard.css
setup-wizard.js
shared-helpers.js webui: sync organize-by-playlist toggles + stop dashboard poller 401-spam while locked 2026-06-12 13:28:24 -07:00
shell-bridge.js fix: video sidebar highlight needed two clicks (music chrome wiped it) 2026-06-19 13:36:00 -07:00
stats-automations.js video automations: working builder + New Automation button (own builder, not music's) 2026-06-19 23:02:52 -07:00
style.css HiFi instances: 'Restore Defaults' button (re-adds removed defaults, keeps customs) + bigger tap targets for the ✔/✖ controls (Sokhi) 2026-06-13 09:16:39 -07:00
sw.js SW: stop cover-art burst from hard-failing on first load 2026-06-11 12:03:41 +02:00
sync-lastfm.js
sync-listenbrainz.js
sync-services.js #867 UX: open Tidal discovery modal in 'discovering' phase so the empty/loading modal isn't interactable 2026-06-13 11:03:40 -07:00
sync-soulsync-discovery.js
sync-spotify.js Fix standalone mirrored playlist sync and post-sync downloads. 2026-06-04 00:24:00 +02:00
sync.png
track-detail.js Track-detail modal: click any download row for a rich, status-aware view 2026-05-31 20:24:37 -07:00
trans.png
trans2.png
watchlist-history.js Watchlist: bespoke live scan deck + persistent per-run Scan History (#831 round 2) 2026-06-09 20:35:16 -07:00
whisoul.png
wishlist-tools.js Remove old auto-acting Quality Scanner tool (replaced by Quality Upgrade Finder job) 2026-06-13 12:14:45 -07:00
worker-orbs.js Dashboard animations: GPU pass — same visuals, compositor-only where possible 2026-06-06 16:05:05 -07:00