apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-allopen'

dependencies {
    api 'com.squareup.okhttp3:okhttp:3.12.0'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion"
    api 'com.gitlab.ownclouders:dav4android:oc_support_1.0.1'
    api 'com.github.hannesa2:Logcat:1.6.0'
    api 'net.openid:appauth:0.7.1'

    // Moshi
    implementation ("com.squareup.moshi:moshi-kotlin:$moshiVersion") {
        exclude module: "kotlin-reflect"
    }
    kapt "com.squareup.moshi:moshi-kotlin-codegen:$moshiVersion"
}

allOpen {
    // allows mocking for classes w/o directly opening them for release builds
    annotation 'com.owncloud.android.lib.testing.OpenClass'
}

android {
    compileSdkVersion 29

    defaultConfig {
        minSdkVersion 21
        targetSdkVersion 29

        versionCode = 10000500
        versionName = "1.0.5"

        // This is pretty ugly but manifest placeholders don't seem to work very well when using different modules
        // See https://github.com/openid/AppAuth-Android/issues/325
        manifestPlaceholders = [appAuthRedirectScheme: '']
    }

    lintOptions {
        abortOnError false
        ignoreWarnings true
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}