build.gradle.kts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. import com.codeskraps.weather.ConfigData
  2. @Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
  3. plugins {
  4. alias(libs.plugins.android.library)
  5. alias(libs.plugins.org.jetbrains.kotlin.android)
  6. alias(libs.plugins.com.google.devtools.ksp)
  7. alias(libs.plugins.dagger.hilt)
  8. alias(libs.plugins.secrets.gradle.plugin)
  9. }
  10. android {
  11. namespace = "com.codeskraps.maps"
  12. compileSdk = ConfigData.compileSdk
  13. defaultConfig {
  14. minSdk = ConfigData.minSdk
  15. testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
  16. consumerProguardFiles("consumer-rules.pro")
  17. }
  18. buildTypes {
  19. release {
  20. isMinifyEnabled = ConfigData.isMinifyRelease
  21. proguardFiles(
  22. getDefaultProguardFile("proguard-android-optimize.txt"),
  23. "proguard-rules.pro"
  24. )
  25. }
  26. debug {
  27. isMinifyEnabled = ConfigData.isMinifyDebug
  28. }
  29. }
  30. compileOptions {
  31. sourceCompatibility = ConfigData.javaVersion
  32. targetCompatibility = ConfigData.javaVersion
  33. }
  34. kotlinOptions {
  35. jvmTarget = ConfigData.javaTarget
  36. }
  37. buildFeatures {
  38. compose = true
  39. buildConfig = true
  40. }
  41. composeOptions {
  42. kotlinCompilerExtensionVersion = ConfigData.kotlinCompiler
  43. }
  44. }
  45. secrets {
  46. // Optionally specify a different file name containing your secrets.
  47. // The plugin defaults to "local.properties"
  48. propertiesFileName = "secrets.properties"
  49. // A properties file containing default secret values. This file can be
  50. // checked in version control.
  51. defaultPropertiesFileName = "local.defaults.properties"
  52. // Configure which keys should be ignored by the plugin by providing regular expressions.
  53. // "sdk.dir" is ignored by default.
  54. ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore"
  55. ignoreList.add("sdk.*") // Ignore all keys matching the regexp "sdk.*"
  56. }
  57. dependencies {
  58. implementation(project(mapOf("path" to ":feature:common")))
  59. implementation(project(mapOf("path" to ":core:location")))
  60. implementation(project(mapOf("path" to ":core:local")))
  61. implementation(libs.androidx.core.ktx)
  62. implementation(libs.androidx.lifecycle.runtime.ktx)
  63. implementation(libs.androidx.activity.compose)
  64. implementation(libs.androidx.navigation.compose)
  65. implementation(libs.androidx.lifecycle.runtime.compose)
  66. implementation(libs.android.compose.material3)
  67. val composeBom = platform(libs.androidx.compose.bom)
  68. implementation(composeBom)
  69. implementation(libs.androidx.compose.ui)
  70. implementation(libs.androidx.compose.graphics)
  71. implementation(libs.androidx.compose.tooling.preview)
  72. //Dagger - Hilt
  73. implementation(libs.hilt.android)
  74. ksp(libs.hilt.android.compiler)
  75. implementation(libs.play.services.maps)
  76. implementation(libs.maps.compose)
  77. testImplementation(libs.junit.junit)
  78. androidTestImplementation(libs.androidx.junit)
  79. androidTestImplementation(libs.espresso.core)
  80. }