apply plugin: 'com.android.library'
apply plugin: 'org.jetbrains.kotlin.android'

if (rootProject.testCoverage) {
    apply plugin: 'jacoco'
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${versions.kotlin}"

    api project(":mail:common")

    implementation "com.jcraft:jzlib:1.0.7"
    implementation "com.beetstra.jutf7:jutf7:1.0.0"
    implementation "commons-io:commons-io:${versions.commonsIo}"
    implementation "com.jakewharton.timber:timber:${versions.timber}"
    implementation "androidx.annotation:annotation:${versions.androidxAnnotation}"

    testImplementation project(":mail:testing")
    testImplementation "org.robolectric:robolectric:${versions.robolectric}"
    testImplementation "junit:junit:${versions.junit}"
    testImplementation "com.google.truth:truth:${versions.truth}"
    testImplementation "org.mockito:mockito-core:${versions.mockito}"
    testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:${versions.mockitoKotlin}"
    testImplementation "com.squareup.okio:okio:${versions.okio}"
    testImplementation "org.apache.james:apache-mime4j-core:${versions.mime4j}"
}

android {
    compileSdkVersion buildConfig.compileSdk
    buildToolsVersion buildConfig.buildTools

    defaultConfig {
        minSdkVersion buildConfig.minSdk
    }

    buildTypes {
        debug {
            testCoverageEnabled rootProject.testCoverage
        }
    }

    lintOptions {
        abortOnError false
        lintConfig file("$rootProject.projectDir/config/lint/lint.xml")
    }

    compileOptions {
        sourceCompatibility javaVersion
        targetCompatibility javaVersion
    }

    kotlinOptions {
        jvmTarget = kotlinJvmVersion
    }
}
