apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion Versions.compileSdk
    defaultConfig {
        applicationId ApplicationId.id
        minSdkVersion Versions.minSdk
        targetSdkVersion Versions.targetSdk
        versionCode Releases.versionCode
        versionName Releases.versionName
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation Libraries.kotlin
    implementation Libraries.kotlinPoet

    // Support
    implementation SupportLibraries.appcompat
    implementation SupportLibraries.cardView
    implementation SupportLibraries.constraintLayout
    implementation SupportLibraries.preferences

    // Rx
    implementation Libraries.rxJava
    implementation Libraries.rxBinding
    implementation Libraries.rxBindingSupport
    implementation Libraries.rxKotlin
    implementation Libraries.rxPreferences
    implementation Libraries.rxAndroid

    // Lifecycle
    implementation Libraries.lifeCycleViewModel
    implementation Libraries.lifeCycleExtensions
    implementation Libraries.lifecycleKtx

    // Coroutines
    implementation Libraries.coroutinesCore
    implementation Libraries.coroutinesAndroid

    // Moshi
    implementation Libraries.moshiCore
    kapt Libraries.moshiCodeGen

    // Test
    testImplementation TestLibraries.junit
    androidTestImplementation TestLibraries.androidTestRunner
    androidTestImplementation TestLibraries.espressoCore
}
