import androidx.build.Publish

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

dependencies {
    api(project(":emoji2:emoji2"))
    implementation(project(":emoji2:emoji2-views-helper"))
    api("androidx.core:core:1.3.0")

    implementation("androidx.collection:collection:1.1.0")

    androidTestImplementation(libs.testExtJunit)
    androidTestImplementation(libs.testCore)
    androidTestImplementation(libs.testRunner)
    androidTestImplementation(libs.testRules)
    androidTestImplementation(libs.espressoCore, excludes.espresso)
    androidTestImplementation(libs.mockitoCore, excludes.bytebuddy) // DexMaker has it"s own MockMaker
    androidTestImplementation(libs.dexmakerMockito, excludes.bytebuddy) // DexMaker has it"s own MockMaker
    androidTestImplementation project(':internal-testutils-runtime')
}

android {
    sourceSets {
        main {
            res.srcDirs += 'src/main/res-public'
        }
    }
    namespace "androidx.emoji2.widget"
}

androidx {
    name = "Android Emoji2 Compat Views"
    publish = Publish.SNAPSHOT_AND_RELEASE
    mavenGroup = LibraryGroups.EMOJI2
    inceptionYear = "2017"
    description = "Support for using emoji2 directly with Android Views, for use in apps without " +
            "appcompat"
}
