- 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).
42 lines
1.3 KiB
Kotlin
42 lines
1.3 KiB
Kotlin
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
plugins {
|
|
alias(libs.plugins.android.application) apply false
|
|
alias(libs.plugins.android.library) apply false
|
|
alias(libs.plugins.kotlin.android) apply false
|
|
alias(libs.plugins.kotlin.compose) apply false
|
|
alias(libs.plugins.kotlin.serialization) apply false
|
|
alias(libs.plugins.kotlin.ksp) apply false
|
|
alias(libs.plugins.hilt) apply false
|
|
alias(libs.plugins.kover) apply false
|
|
}
|
|
|
|
val test by tasks.registering {
|
|
group = "verification"
|
|
description = "Runs available unit tests for the included projects."
|
|
}
|
|
|
|
subprojects {
|
|
val rootTest = rootProject.tasks.named("test")
|
|
tasks.matching {
|
|
it.name == "allTests" ||
|
|
it.name.endsWith("DebugUnitTest")
|
|
}.configureEach {
|
|
rootTest.configure {
|
|
dependsOn(this@configureEach)
|
|
}
|
|
}
|
|
tasks.withType<Test>().configureEach {
|
|
maxHeapSize = "4g"
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
configurations.all {
|
|
resolutionStrategy {
|
|
force("org.jetbrains.kotlin:kotlin-stdlib:2.1.20")
|
|
force("org.jetbrains.kotlin:kotlin-stdlib-common:2.1.20")
|
|
force("org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.20")
|
|
force("org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.20")
|
|
}
|
|
}
|
|
}
|