From 410a9d4c4bd16dfebbcf9de2ec3e9869ed2fb14a Mon Sep 17 00:00:00 2001
From: tapframe <85391825+tapframe@users.noreply.github.com>
Date: Wed, 22 Jul 2026 03:25:32 +0530
Subject: [PATCH] refactor(tracking): register library read providers
---
.../composeResources/values/strings.xml | 3 +
.../commonMain/kotlin/com/nuvio/app/App.kt | 14 +-
.../tracking/TrackingProviderBootstrap.kt | 5 +
...rDialog.kt => TrackingListPickerDialog.kt} | 14 +-
.../app/features/details/MetaDetailsScreen.kt | 10 +-
.../app/features/library/LibraryRepository.kt | 384 +++++-------------
.../simkl/SimklApplicationAdapters.kt | 75 ++++
.../app/features/tracking/TrackingProvider.kt | 18 +
.../app/features/tracking/TrackingReads.kt | 53 +++
.../trakt/TraktTrackingLibraryProvider.kt | 86 ++++
.../features/library/LibraryRepositoryTest.kt | 12 +-
11 files changed, 372 insertions(+), 302 deletions(-)
rename composeApp/src/commonMain/kotlin/com/nuvio/app/core/ui/{TraktListPickerDialog.kt => TrackingListPickerDialog.kt} (95%)
create mode 100644 composeApp/src/commonMain/kotlin/com/nuvio/app/features/tracking/TrackingReads.kt
create mode 100644 composeApp/src/commonMain/kotlin/com/nuvio/app/features/trakt/TraktTrackingLibraryProvider.kt
diff --git a/composeApp/src/commonMain/composeResources/values/strings.xml b/composeApp/src/commonMain/composeResources/values/strings.xml
index 3d6b89d90..b170f2b4b 100644
--- a/composeApp/src/commonMain/composeResources/values/strings.xml
+++ b/composeApp/src/commonMain/composeResources/values/strings.xml
@@ -515,6 +515,8 @@
Licensed under the Apache License, Version 2.0.
Loading your Trakt lists…
Choose where to save this title on Trakt
+ Loading lists…
+ Choose where to save this title
Donate
Go to details
Remove
@@ -1442,6 +1444,7 @@
Unable to play trailer
Failed to load Trakt lists
Failed to update Trakt lists
+ Failed to update tracking lists
%1$s • %2$s
Update check failed
Download failed
diff --git a/composeApp/src/commonMain/kotlin/com/nuvio/app/App.kt b/composeApp/src/commonMain/kotlin/com/nuvio/app/App.kt
index a50dee88a..38f74df32 100644
--- a/composeApp/src/commonMain/kotlin/com/nuvio/app/App.kt
+++ b/composeApp/src/commonMain/kotlin/com/nuvio/app/App.kt
@@ -117,7 +117,7 @@ import com.nuvio.app.core.ui.NuvioToastHost
import com.nuvio.app.core.ui.NuvioToastController
import com.nuvio.app.core.ui.NuvioFloatingPrompt
import com.nuvio.app.core.ui.ProfileMeshBackground
-import com.nuvio.app.core.ui.TraktListPickerDialog
+import com.nuvio.app.core.ui.TrackingListPickerDialog
import com.nuvio.app.core.ui.NuvioTheme
import com.nuvio.app.core.ui.NuvioTokens
import com.nuvio.app.core.ui.LocalNuvioBottomNavigationOverlayPadding
@@ -224,7 +224,7 @@ import com.nuvio.app.features.tracking.TrackingScrobbleAction
import com.nuvio.app.features.tracking.TrackingScrobbleCoordinator
import com.nuvio.app.features.tracking.TrackingScrobbleEvent
import com.nuvio.app.features.tracking.buildTrackingMediaReference
-import com.nuvio.app.features.trakt.TraktListTab
+import com.nuvio.app.features.tracking.TrackingLibraryTab
import com.nuvio.app.features.updater.AppUpdaterHost
import com.nuvio.app.features.updater.AppUpdaterPlatform
import com.nuvio.app.features.updater.rememberAppUpdaterController
@@ -814,7 +814,7 @@ private fun MainAppContent(
var showLibraryListPicker by remember { mutableStateOf(false) }
var pickerItem by remember { mutableStateOf(null) }
var pickerTitle by remember { mutableStateOf("") }
- var pickerTabs by remember { mutableStateOf>(emptyList()) }
+ var pickerTabs by remember { mutableStateOf>(emptyList()) }
var pickerMembership by remember { mutableStateOf