Plex Integration + Music Source Integration Improvements (#37)
* plex integration * The big one - Full Music Source page rework + Playlist importing + Full Plex Integration + Discovery Options + More Like This/Surprise Me/Instant Mix + More... * Music source track page - Play all / shuffle fixes * lint * format * fix type checks * format
This commit is contained in:
@@ -35,6 +35,7 @@ from .repo_providers import (
|
||||
get_listenbrainz_repository,
|
||||
get_jellyfin_repository,
|
||||
get_navidrome_repository,
|
||||
get_plex_repository,
|
||||
get_coverart_repository,
|
||||
get_youtube_repo,
|
||||
get_audiodb_image_service,
|
||||
@@ -138,7 +139,6 @@ def make_processor(lidarr_repo, memory_cache, disk_cache, cover_repo, request_hi
|
||||
if payload and isinstance(payload, dict):
|
||||
is_monitored = payload.get("monitored", False)
|
||||
|
||||
# Prefer the explicit monitored flag before falling back to the top-level result.
|
||||
if not is_monitored:
|
||||
is_monitored = bool(result.get("monitored"))
|
||||
|
||||
@@ -568,7 +568,8 @@ def get_jellyfin_playback_service() -> "JellyfinPlaybackService":
|
||||
from services.jellyfin_playback_service import JellyfinPlaybackService
|
||||
|
||||
jellyfin_repo = get_jellyfin_repository()
|
||||
return JellyfinPlaybackService(jellyfin_repo)
|
||||
cache = get_cache()
|
||||
return JellyfinPlaybackService(jellyfin_repo, cache)
|
||||
|
||||
|
||||
@singleton
|
||||
@@ -606,4 +607,25 @@ def get_navidrome_playback_service() -> "NavidromePlaybackService":
|
||||
from services.navidrome_playback_service import NavidromePlaybackService
|
||||
|
||||
navidrome_repo = get_navidrome_repository()
|
||||
return NavidromePlaybackService(navidrome_repo)
|
||||
cache = get_cache()
|
||||
return NavidromePlaybackService(navidrome_repo, cache)
|
||||
|
||||
|
||||
@singleton
|
||||
def get_plex_library_service() -> "PlexLibraryService":
|
||||
from services.plex_library_service import PlexLibraryService
|
||||
|
||||
plex_repo = get_plex_repository()
|
||||
preferences_service = get_preferences_service()
|
||||
library_db = get_library_db()
|
||||
mbid_store = get_mbid_store()
|
||||
return PlexLibraryService(plex_repo, preferences_service, library_db, mbid_store)
|
||||
|
||||
|
||||
@singleton
|
||||
def get_plex_playback_service() -> "PlexPlaybackService":
|
||||
from services.plex_playback_service import PlexPlaybackService
|
||||
|
||||
plex_repo = get_plex_repository()
|
||||
cache = get_cache()
|
||||
return PlexPlaybackService(plex_repo, cache)
|
||||
|
||||
Reference in New Issue
Block a user