plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("kotlin-kapt") id("dagger.hilt.android.plugin") id("kotlin-parcelize") } android { namespace = "com.smoa" compileSdk = AppConfig.compileSdk defaultConfig { applicationId = AppConfig.applicationId minSdk = AppConfig.minSdk targetSdk = AppConfig.targetSdk versionCode = AppConfig.versionCode versionName = AppConfig.versionName testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary = true } } buildTypes { release { isMinifyEnabled = true isShrinkResources = true proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.4" } packaging { resources { excludes += "/META-INF/{AL2.0,LGPL2.1}" excludes += "/META-INF/DEPENDENCIES" excludes += "/META-INF/LICENSE*" excludes += "/META-INF/NOTICE*" pickFirsts += "META-INF/blueprint.handlers" pickFirsts += "META-INF/blueprint.schemas" pickFirsts += "META-INF/spring.schemas" pickFirsts += "META-INF/spring.handlers" pickFirsts += "META-INF/wsdl.plugin.xml" pickFirsts += "META-INF/cxf/bus-extensions.txt" pickFirsts += "org/apache/cxf/endpoint/dynamic/simple-binding.xjb" } } } dependencies { implementation(platform(Dependencies.composeBom)) implementation(Dependencies.composeUi) implementation(Dependencies.composeUiGraphics) implementation(Dependencies.composeUiToolingPreview) implementation(Dependencies.composeMaterial3) implementation(Dependencies.androidxActivityCompose) implementation(Dependencies.androidxCoreKtx) implementation(Dependencies.androidxLifecycleRuntimeKtx) // Navigation implementation(Dependencies.navigationCompose) // Hilt implementation(Dependencies.hiltAndroid) kapt(Dependencies.hiltAndroidCompiler) implementation(Dependencies.hiltNavigationCompose) // Core modules implementation(project(":core:auth")) implementation(project(":core:security")) implementation(project(":core:common")) implementation(project(":core:barcode")) implementation(project(":core:as4")) implementation(project(":core:eidas")) implementation(project(":core:signing")) implementation(project(":core:certificates")) // Feature modules implementation(project(":modules:credentials")) implementation(project(":modules:directory")) implementation(project(":modules:communications")) implementation(project(":modules:meetings")) implementation(project(":modules:browser")) implementation(project(":modules:orders")) implementation(project(":modules:evidence")) implementation(project(":modules:reports")) implementation(project(":modules:atf")) implementation(project(":modules:ncic")) implementation(project(":modules:military")) implementation(project(":modules:judicial")) implementation(project(":modules:intelligence")) // Security implementation(Dependencies.securityCrypto) implementation(Dependencies.biometric) // Coroutines implementation(Dependencies.coroutinesCore) implementation(Dependencies.coroutinesAndroid) // Testing testImplementation(Dependencies.junit) androidTestImplementation(Dependencies.androidxJunit) androidTestImplementation(Dependencies.espressoCore) androidTestImplementation(platform(Dependencies.composeBom)) androidTestImplementation(Dependencies.composeUiTestJunit4) debugImplementation(Dependencies.composeUiTooling) debugImplementation(Dependencies.composeUiTestManifest) }