ext {
    versions = [
            java                  : JavaVersion.VERSION_1_8,
            compileSdk            : 28,
            targetSdk             : 28,
            buildTools            : '28.0.0-rc2',
            kotlin                : '1.2.50',
            coroutine             : '0.23.1',
            dokka                 : '0.9.16',

            // Main dependencies
            appCompat             : '1.0.0-alpha1',
            recyclerview          : '1.0.0-alpha1',
            material              : '1.0.0-alpha1',
            cardview              : '1.0.0-alpha1',
            browser               : '1.0.0-alpha1',
            constraintLayout      : '1.1.0',
            androidKtx            : '1.0.0-alpha1',
            dagger                : '2.16',
            exoPlayer             : '2.6.0',
            playServices          : '15.0.0',
            firebase              : '15.0.0',
            room                  : '2.0.0-alpha1',
            lifecycle             : '2.0.0-alpha1',
            rxKotlin              : '2.2.0',
            rxAndroid             : '2.0.2',
            moshi                 : '1.6.0',
            okhttp                : '3.10.0',
            timber                : '4.7.0',
            threeTenABP           : '1.0.5',
            rxBinding             : '2.0.0',
            fresco                : '1.9.0',
            kotshi                : '1.0.2',
            frescoImageViewer     : '0.5.1',
            markwon               : '1.0.3',
            sheetMenu             : '5ff79ccf14',
            aVLoadingIndicatorView: '2.1.3',
            flexbox               : '0.3.2',

            // For testing
            junit                 : '4.12',
            truth                 : '0.36',
            espresso              : '3.1.0-alpha2',
            mockito               : '2.10.0',

            //For wearable
            wear                  : '2.3.0',
            playServicesWearable  : '15.0.1',
            supportWearable       : '26.1.0'
    ]
    libraries = [
            kotlin                : "org.jetbrains.kotlin:kotlin-stdlib-jre8:${versions.kotlin}",
            coroutines            : "org.jetbrains.kotlinx:kotlinx-coroutines-core:${versions.coroutine}",
            coroutinesAndroid     : "org.jetbrains.kotlinx:kotlinx-coroutines-android:${versions.coroutine}",

            appCompat             : "androidx.appcompat:appcompat:${versions.appCompat}",
            recyclerview          : "androidx.recyclerview:recyclerview:${versions.recyclerview}",
            material              : "com.google.android.material:material:${versions.material}",
            constraintlayout      : "androidx.constraintlayout:constraintlayout:${versions.constraintLayout}",
            cardview              : "androidx.cardview:cardview:${versions.cardview}",
            flexbox               : "com.google.android:flexbox:${versions.flexbox}",
            browser               : "androidx.browser:browser:${versions.browser}",

            androidKtx            : "androidx.core:core-ktx:${versions.androidKtx}",

            dagger                : "com.google.dagger:dagger:${versions.dagger}",
            daggerSupport         : "com.google.dagger:dagger-android-support:${versions.dagger}",
            daggerProcessor       : "com.google.dagger:dagger-compiler:${versions.dagger}",
            daggerAndroidApt      : "com.google.dagger:dagger-android-processor:${versions.dagger}",
            fcm                   : "com.google.firebase:firebase-messaging:${versions.firebase}",
            playServicesAuth      : "com.google.android.gms:play-services-auth:${versions.playServices}",
            exoPlayer             : "com.google.android.exoplayer:exoplayer:${versions.exoPlayer}",

            room                  : "androidx.room:room-runtime:${versions.room}",
            roomProcessor         : "androidx.room:room-compiler:${versions.room}",
            lifecycleExtensions   : "androidx.lifecycle:lifecycle-extensions:${versions.lifecycle}",
            lifecycleCompiler     : "androidx.lifecycle:lifecycle-compiler:${versions.lifecycle}",

            rxKotlin              : "io.reactivex.rxjava2:rxkotlin:${versions.rxKotlin}",
            rxAndroid             : "io.reactivex.rxjava2:rxandroid:${versions.rxAndroid}",

            moshi                 : "com.squareup.moshi:moshi:${versions.moshi}",
            moshiKotlin           : "com.squareup.moshi:moshi-kotlin:${versions.moshi}",
            okhttp                : "com.squareup.okhttp3:okhttp:${versions.okhttp}",
            okhttpLogger          : "com.squareup.okhttp3:logging-interceptor:${versions.okhttp}",

            timber                : "com.jakewharton.timber:timber:${versions.timber}",
            threeTenABP           : "com.jakewharton.threetenabp:threetenabp:${versions.threeTenABP}",
            rxBinding             : "com.jakewharton.rxbinding2:rxbinding-kotlin:${versions.rxBinding}",

            fresco                : "com.facebook.fresco:fresco:${versions.fresco}",
            frescoOkHttp          : "com.facebook.fresco:imagepipeline-okhttp3:${versions.fresco}",
            frescoAnimatedGif     : "com.facebook.fresco:animated-gif:${versions.fresco}",
            frescoWebP            : "com.facebook.fresco:webpsupport:${versions.fresco}",
            frescoAnimatedWebP    : "com.facebook.fresco:animated-webp:${versions.fresco}",

            kotshiApi             : "se.ansman.kotshi:api:${versions.kotshi}",
            kotshiCompiler        : "se.ansman.kotshi:compiler:${versions.kotshi}",

            frescoImageViewer     : "com.github.luciofm:FrescoImageViewer:${versions.frescoImageViewer}",

            markwon               : "ru.noties:markwon:${versions.markwon}",

            //sheetMenu             : "com.github.whalemare:sheetmenu:${versions.sheetMenu}",
            sheetMenu             : "com.github.luciofm:sheetmenu:${versions.sheetMenu}",

            aVLoadingIndicatorView: "com.wang.avi:library:${versions.aVLoadingIndicatorView}",


            //For the wear app
            wearable              : "com.google.android.support:wearable:${versions.wear}",
            playServicesWearable  : "com.google.android.gms:play-services-wearable:${versions.playServicesWearable}",
            percentLayout         : "com.android.support:percent:${versions.supportWearable}",
            supportWearable       : "com.android.support:support-v4:${versions.supportWearable}",
            wearableRecyclerView  : "com.android.support:recyclerview-v7:${versions.supportWearable}",
            wearSupport           : "com.android.support:wear:${versions.supportWearable}",

            // For testing
            junit                 : "junit:junit:$versions.junit",
            espressoCore          : "androidx.test.espresso:espresso-core:${versions.espresso}",
            espressoIntents       : "androidx.test.espresso:espresso-intents:${versions.espresso}",
            roomTest              : "android.arch.persistence.room:testing:${versions.room}",
            truth                 : "com.google.truth:truth:$versions.truth"
    ]
}