feat(backend): Phase 2.1 scaffolding for bookshelf-api + ABS
- Port BookshelfApiService, AudiobookshelfApiService and all models from Book's Story. - Add Hilt 2.56.1 plugin, @HiltAndroidApp, NetworkModule, BackendModule. - Add Retrofit/OkHttp/Kotlinx Serialization dependencies. - Provide minimal SharedPreferences-based ServerSettings for URL/token storage. - Copy UriUtils (fixUriScheme/normalizeUri) from Book's Story. - No wiring into UI yet; OPDS/Gutenberg/LocalFolder still present. - ':app:assembleOssDebug' passes (APK ~80 MB).
This commit is contained in:
parent
9e30933077
commit
88113d9de6
25 changed files with 1070 additions and 0 deletions
|
|
@ -23,6 +23,11 @@ material3WindowSizeClassAndroid = "1.3.2"
|
|||
credentials = "1.5.0"
|
||||
composeMultiplatform = "1.8.2"
|
||||
ksp = "2.2.0-2.0.2"
|
||||
hilt = "2.56.1"
|
||||
hiltNavigationCompose = "1.2.0"
|
||||
retrofit = "2.11.0"
|
||||
retrofitKotlinxSerialization = "2.11.0"
|
||||
okhttpLogging = "4.12.0"
|
||||
|
||||
[libraries]
|
||||
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
|
||||
|
|
@ -56,6 +61,13 @@ androidx-runner = { group = "androidx.test", name = "runner", version.ref = "and
|
|||
androidx-material3-window-size-class1-android = { group = "androidx.compose.material3", name = "material3-window-size-class-android", version.ref = "material3WindowSizeClassAndroid" }
|
||||
androidx-credentials = { group = "androidx.credentials", name = "credentials", version.ref = "credentials" }
|
||||
|
||||
hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }
|
||||
hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" }
|
||||
hilt-navigation-compose = { group = "androidx.hilt", name = "hilt-navigation-compose", version.ref = "hiltNavigationCompose" }
|
||||
retrofit = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" }
|
||||
retrofit-kotlinx-serialization = { group = "com.squareup.retrofit2", name = "converter-kotlinx-serialization", version.ref = "retrofitKotlinxSerialization" }
|
||||
okhttp-logging = { group = "com.squareup.okhttp3", name = "logging-interceptor", version.ref = "okhttpLogging" }
|
||||
|
||||
|
||||
[plugins]
|
||||
android-application = { id = "com.android.application", version.ref = "agp" }
|
||||
|
|
@ -65,6 +77,7 @@ kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "ko
|
|||
kotlin-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
|
||||
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
|
||||
compose-multiplatform = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" }
|
||||
hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
|
||||
|
||||
# Add plugins required by pdfiumandroid
|
||||
android-library = { id = "com.android.library", version.ref = "agp" }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue