import android.support.LibraryGroups
import android.support.LibraryVersions
import android.support.SupportLibraryExtension

plugins {
    id("SupportAndroidLibraryPlugin")
}

android {
    defaultConfig {
        minSdkVersion flatfoot.min_sdk
    }

    buildTypes.all {
        consumerProguardFiles 'proguard-rules.pro'
    }
}

dependencies {
    api project(":lifecycle:common")
    api project(":arch:common")
    // necessary for IJ to resolve dependencies.
    api libs.support.annotations

    testImplementation libs.junit
    testImplementation libs.mockito_core

    androidTestImplementation libs.junit
    androidTestImplementation libs.test_runner,      { exclude module: 'support-annotations' }
}

createAndroidCheckstyle(project)

supportLibrary {
    name 'Android Lifecycle Runtime'
    publish true
    mavenVersion = LibraryVersions.LIFECYCLES_RUNTIME
    mavenGroup LibraryGroups.LIFECYCLE
    inceptionYear '2017'
    description "Android Lifecycle Runtime"
    url SupportLibraryExtension.ARCHITECTURE_URL
}