105 lines
3.1 KiB
Text
105 lines
3.1 KiB
Text
plugins {
|
|
alias(libs.plugins.library)
|
|
alias(libs.plugins.kotlinAndroid)
|
|
alias(libs.plugins.ksp)
|
|
alias(libs.plugins.kotlinSerialization)
|
|
alias(libs.plugins.parcelize)
|
|
`maven-publish`
|
|
}
|
|
|
|
android {
|
|
compileSdk = libs.versions.app.build.compileSDKVersion.get().toInt()
|
|
|
|
defaultConfig {
|
|
minSdk = libs.versions.app.build.minimumSDK.get().toInt()
|
|
vectorDrawables.useSupportLibrary = true
|
|
ksp {
|
|
arg("room.schemaLocation", "$projectDir/schemas")
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
isMinifyEnabled = false
|
|
proguardFiles(
|
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
|
"proguard-rules.pro"
|
|
)
|
|
consumerProguardFiles("proguard-rules.pro")
|
|
}
|
|
}
|
|
|
|
buildFeatures {
|
|
viewBinding = true
|
|
compose = true
|
|
}
|
|
|
|
composeOptions {
|
|
kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get()
|
|
}
|
|
|
|
compileOptions {
|
|
val currentJavaVersionFromLibs = JavaVersion.valueOf(libs.versions.app.build.javaVersion.get().toString())
|
|
sourceCompatibility = currentJavaVersionFromLibs
|
|
targetCompatibility = currentJavaVersionFromLibs
|
|
}
|
|
|
|
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
|
|
kotlinOptions.jvmTarget = project.libs.versions.app.build.kotlinJVMTarget.get()
|
|
kotlinOptions.freeCompilerArgs = listOf(
|
|
"-opt-in=kotlin.RequiresOptIn",
|
|
"-opt-in=androidx.compose.material3.ExperimentalMaterial3Api",
|
|
"-opt-in=androidx.compose.material.ExperimentalMaterialApi",
|
|
"-opt-in=androidx.compose.foundation.ExperimentalFoundationApi",
|
|
"-Xcontext-receivers"
|
|
)
|
|
}
|
|
|
|
sourceSets {
|
|
getByName("main").java.srcDirs("src/main/kotlin")
|
|
}
|
|
namespace = libs.versions.app.version.groupId.get()
|
|
}
|
|
|
|
publishing.publications {
|
|
create<MavenPublication>("release") {
|
|
groupId = libs.versions.app.version.groupId.get()
|
|
artifactId = name
|
|
version = libs.versions.app.version.versionName.get()
|
|
afterEvaluate {
|
|
from(components["release"])
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(libs.kotlinx.serialization.json)
|
|
implementation(libs.kotlin.immutable.collections)
|
|
implementation(libs.androidx.constraintlayout)
|
|
implementation(libs.androidx.documentfile)
|
|
implementation(libs.androidx.swiperefreshlayout)
|
|
implementation(libs.androidx.exifinterface)
|
|
implementation(libs.androidx.biometric.ktx)
|
|
implementation(libs.ez.vcard)
|
|
|
|
|
|
implementation(libs.bundles.lifecycle)
|
|
implementation(libs.bundles.compose)
|
|
debugImplementation(libs.bundles.compose.preview)
|
|
|
|
api(libs.joda.time)
|
|
api(libs.recyclerView.fastScroller)
|
|
api(libs.reprint)
|
|
api(libs.rtl.viewpager)
|
|
api(libs.patternLockView)
|
|
api(libs.androidx.core.ktx)
|
|
api(libs.androidx.appcompat)
|
|
api(libs.material)
|
|
api(libs.gson)
|
|
|
|
api(libs.glide)
|
|
ksp(libs.glide.compiler)
|
|
|
|
api(libs.bundles.room)
|
|
ksp(libs.androidx.room.compiler)
|
|
}
|