Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

143 lines
4.3 KiB
Kotlin

import Lib.Android.ACCOMPANIST_SYSTEM_UI_CONTROLLER
plugins {
id(BuildPlugins.ANDROID_APPLICATION_PLUGIN)
id(BuildPlugins.KOTLIN_ANDROID_PLUGIN)
id(BuildPlugins.KOTLIN_PARCELABLE_PLUGIN)
id(BuildPlugins.KOTLIN_KAPT)
id(BuildPlugins.DAGGER_HILT)
id(BuildPlugins.KOTLINTER)
}
android {
namespace = ProjectProperties.APPLICATION_ID
compileSdk = ProjectProperties.COMPILE_SDK
defaultConfig {
applicationId = ProjectProperties.APPLICATION_ID
minSdk = ProjectProperties.MIN_SDK
targetSdk = ProjectProperties.TARGET_SDK
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
getByName("release") {
isDebuggable = true
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android.txt"),
"proguard-common.txt",
"proguard-specific.txt"
)
}
}
buildFeatures {
dataBinding = true
}
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = Lib.Android.COMPOSE_COMPILER_VERSION
}
packagingOptions {
resources.excludes.add("META-INF/LICENSE.txt")
resources.excludes.add("META-INF/NOTICE.txt")
resources.excludes.add("LICENSE.txt")
resources.excludes.add("/META-INF/{AL2.0,LGPL2.1}")
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
}
// Required for annotation processing plugins like Dagger
kapt {
generateStubs = true
correctErrorTypes = true
}
dependencies {
implementation(project(":core:designsystem"))
implementation(project(":core:components"))
implementation(project(":core:navigation"))
implementation(project(":feature:login"))
implementation(project(":feature:dashboard"))
implementation("androidx.tracing:tracing-ktx:1.1.0")
implementation(Lib.Material3.MATERIAL_3)
implementation(Lib.Material3.MATERIAL_WINDOW_SIZE)
/* Android Designing and layout */
implementation(Lib.Android.COMPOSE_LIVEDATA)
implementation(Lib.Android.COMPOSE_NAVIGATION)
implementation(Lib.Kotlin.KT_STD)
implementation(Lib.Android.MATERIAL_DESIGN)
implementation(Lib.Android.CONSTRAINT_LAYOUT_COMPOSE)
implementation(Lib.Android.ACCOMPANIST_INSETS)
implementation(Lib.Android.ACCOMPANIST_INSETS_UI)
implementation(ACCOMPANIST_SYSTEM_UI_CONTROLLER)
implementation(Lib.Android.ACCOMPANIST_FLOW_LAYOUTS)
implementation(Lib.Android.COMPOSE_WINDOW_MATRICES)
implementation(Lib.Android.APP_COMPAT)
implementation(Lib.Kotlin.KTX_CORE)
/* Image Loading */
implementation(Lib.Android.COIL_COMPOSE)
implementation(Lib.Android.ACCOMPANIST_COIL)
/*DI*/
implementation(Lib.Di.hiltAndroid)
implementation(Lib.Di.hiltNavigationCompose)
implementation(Lib.Android.COMPOSE_TOOLING_PREVIEW)
debugImplementation(Lib.Android.COMPOSE_TOOLING)
implementation(Lib.Android.PROFILE_INSTALLER)
kapt(Lib.Di.hiltCompiler)
kapt(Lib.Di.hiltAndroidCompiler)
implementation(Lib.Android.ACCOMPANIST_PAGER)
implementation(Lib.Android.ACCOMPANIST_PAGER_INDICATOR)
/* Logger */
// implementation(Lib.Logger.TIMBER)
/* Async */
// implementation(Lib.Async.COROUTINES)
// implementation(Lib.Async.COROUTINES_ANDROID)
/* Room */
// implementation(Lib.Room.roomRuntime)
// kapt(Lib.Room.roomCompiler)
// implementation(Lib.Room.roomKtx)
// implementation(Lib.Room.roomPaging)
/*Testing*/
// testImplementation(TestLib.JUNIT)
// testImplementation(TestLib.CORE_TEST)
// testImplementation(TestLib.ANDROID_JUNIT)
// testImplementation(TestLib.ARCH_CORE)
// testImplementation(TestLib.MOCK_WEB_SERVER)
// testImplementation(TestLib.ROBO_ELECTRIC)
// testImplementation(TestLib.COROUTINES)
// testImplementation(TestLib.MOCKK)
// androidTestImplementation(Lib.Android.COMPOSE_JUNIT)
// debugImplementation(Lib.Android.COMPOSE_TEST_MANIFEST)
}
ktlint {
android.set(true)
outputColorName.set("RED")
}