/*
 * Copyright 2017 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package androidx.build

/**
 * The list of maven group names of all the libraries in this project.
 */
object LibraryGroups {
    const val ACTIVITY = "androidx.activity"
    const val ANIMATION = "androidx.animation"
    const val ANNOTATION = "androidx.annotation"
    const val APPCOMPAT = "androidx.appcompat"
    const val ASYNCLAYOUTINFLATER = "androidx.asynclayoutinflater"
    const val BIOMETRIC = "androidx.biometric"
    const val BROWSER = "androidx.browser"
    const val BENCHMARK = "androidx.benchmark"
    const val CAR = "androidx.car"
    const val CARDVIEW = "androidx.cardview"
    const val COLLECTION = "androidx.collection"
    const val CONCURRENT = "androidx.concurrent"
    const val CONTENTPAGER = "androidx.contentpager"
    const val COORDINATORLAYOUT = "androidx.coordinatorlayout"
    const val CORE = "androidx.core"
    const val CURSORADAPTER = "androidx.cursoradapter"
    const val CUSTOMVIEW = "androidx.customview"
    const val DOCUMENTFILE = "androidx.documentfile"
    const val DRAWERLAYOUT = "androidx.drawerlayout"
    const val DYNAMICANIMATION = "androidx.dynamicanimation"
    const val EMOJI = "androidx.emoji"
    const val EXIFINTERFACE = "androidx.exifinterface"
    const val FRAGMENT = "androidx.fragment"
    const val GRIDLAYOUT = "androidx.gridlayout"
    const val HEIFWRITER = "androidx.heifwriter"
    const val INTERPOLATOR = "androidx.interpolator"
    const val LEANBACK = "androidx.leanback"
    const val LEGACY = "androidx.legacy"
    const val LOADER = "androidx.loader"
    const val LOCALBROADCASTMANAGER = "androidx.localbroadcastmanager"
    const val MEDIA = "androidx.media"
    const val MEDIA2 = "androidx.media2"
    const val MEDIAROUTER = "androidx.mediarouter"
    const val PALETTE = "androidx.palette"
    const val PERCENTLAYOUT = "androidx.percentlayout"
    const val PREFERENCE = "androidx.preference"
    const val PRINT = "androidx.print"
    const val RECOMMENDATION = "androidx.recommendation"
    const val RECYCLERVIEW = "androidx.recyclerview"
    const val SLICE = "androidx.slice"
    const val REMOTECALLBACK = "androidx.remotecallback"
    const val SLIDINGPANELAYOUT = "androidx.slidingpanelayout"
    const val SWIPEREFRESHLAYOUT = "androidx.swiperefreshlayout"
    const val TEXTCLASSIFIER = "androidx.textclassifier"
    const val TRANSITION = "androidx.transition"
    const val TVPROVIDER = "androidx.tvprovider"
    const val VECTORDRAWABLE = "androidx.vectordrawable"
    const val VIEWPAGER = "androidx.viewpager"
    const val VIEWPAGER2 = "androidx.viewpager2"
    const val WEAR = "androidx.wear"
    const val WEBKIT = "androidx.webkit"
    const val ROOM = "androidx.room"
    const val PERSISTENCE = "androidx.sqlite"
    const val LIFECYCLE = "androidx.lifecycle"
    const val ARCH_CORE = "androidx.arch.core"
    const val PAGING = "androidx.paging"
    const val NAVIGATION = "android.arch.navigation"
    const val JETIFIER = "com.android.tools.build.jetifier"
    const val WORKMANAGER = "android.arch.work"
    const val VERSIONEDPARCELABLE = "androidx.versionedparcelable"
}
