114 lines
3.2 KiB
Groovy
114 lines
3.2 KiB
Groovy
import dependencies.AnnotationProcessing
|
|
import dependencies.Accompanist
|
|
import dependencies.InstrumentationTest
|
|
import dependencies.Jetbrains
|
|
import dependencies.Square
|
|
import dependencies.UnitTest
|
|
import dependencies.Versions
|
|
import dependencies.AndroidX
|
|
import dependencies.Google
|
|
|
|
plugins {
|
|
id 'com.android.application'
|
|
id 'kotlin-android'
|
|
id 'kotlin-kapt'
|
|
id 'dagger.hilt.android.plugin'
|
|
id "de.mannodermaus.android-junit5"
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion Versions.compileSdk
|
|
|
|
defaultConfig {
|
|
applicationId "com.codingwithmitch.food2forkcompose"
|
|
minSdkVersion Versions.minSdk
|
|
targetSdkVersion Versions.targetSdk
|
|
versionCode Versions.versionCode
|
|
versionName Versions.versionName
|
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
buildFeatures {
|
|
compose true
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = Versions.jvmTarget
|
|
useIR = true
|
|
}
|
|
composeOptions {
|
|
def kotlin_compiler_version = Versions.kotlin
|
|
kotlinCompilerVersion kotlin_compiler_version
|
|
|
|
def kotlin_compiler_extension_version = Versions.kotlin_compiler_extension
|
|
kotlinCompilerExtensionVersion kotlin_compiler_extension_version
|
|
}
|
|
packagingOptions {
|
|
exclude "META-INF/AL2.0"
|
|
exclude "META-INF/LGPL2.1"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
implementation AndroidX.core_ktx
|
|
implementation AndroidX.app_compat
|
|
implementation AndroidX.constraint_layout
|
|
implementation AndroidX.ui_tooling
|
|
implementation AndroidX.nav_fragment_ktx // will remove later
|
|
implementation AndroidX.nav_ui_ktx // will remove later
|
|
implementation AndroidX.compose_ui
|
|
implementation AndroidX.compose_foundation
|
|
implementation AndroidX.compose_material
|
|
implementation AndroidX.compose_icons_core
|
|
implementation AndroidX.compose_icons_extended
|
|
implementation AndroidX.constraint_compose
|
|
implementation AndroidX.navigation_compose
|
|
implementation AndroidX.compose_activity
|
|
implementation AndroidX.navigation_hilt
|
|
implementation AndroidX.room_runtime
|
|
implementation AndroidX.room_ktx
|
|
implementation AndroidX.datastore
|
|
implementation AndroidX.hilt_lifecycle_viewmodel
|
|
|
|
implementation Google.material
|
|
implementation Google.hilt_android
|
|
|
|
implementation Accompanist.coil
|
|
|
|
implementation Jetbrains.kotlin_stdlib
|
|
|
|
implementation Square.retrofit
|
|
implementation Square.retrofit_gson
|
|
implementation Square.okHttp
|
|
implementation Square.leak_canary
|
|
|
|
kapt AnnotationProcessing.hilt_compiler
|
|
kapt AnnotationProcessing.room_compiler
|
|
|
|
// TESTING
|
|
testImplementation UnitTest.jupiter_api
|
|
testRuntimeOnly UnitTest.jupiter_engine
|
|
|
|
// Mock web server
|
|
testImplementation UnitTest.mock_web_server
|
|
// testImplementation UnitTest.okHttp // include this if you get issues
|
|
|
|
// compose testing
|
|
implementation InstrumentationTest.compose_ui
|
|
|
|
}
|
|
|
|
|