/**
 * This file was created using the `create_project.py` script located in the
 * `<AndroidX root>/development/project-creator` directory.
 *
 * Please use that script when creating a new project, rather than copying an existing project and
 * modifying its settings.
 */
import androidx.build.Publish

plugins {
    id("AndroidXPlugin")
    id("com.android.library")
}

dependencies {
    api("androidx.annotation:annotation:1.1.0")
    implementation("androidx.collection:collection:1.0.0")
    api("androidx.appcompat:appcompat:1.0.0")
    api("androidx.recyclerview:recyclerview:1.3.2")
    api("androidx.preference:preference:1.1.0")
    api(project(":leanback:leanback"))
}

android {
    defaultConfig {
        minSdkVersion 21
    }

    sourceSets {
        main.java.srcDirs += [
                "api21"
        ]
    }
    namespace "androidx.leanback.preference"
}

androidx {
    name = "Leanback Preference"
    publish = Publish.SNAPSHOT_AND_RELEASE
    mavenVersion = LibraryVersions.LEANBACK_PREFERENCE
    inceptionYear = "2015"
    description = "AndroidX Leanback Preference"
    failOnDeprecationWarnings = false
    metalavaK2UastEnabled = true
}
