ext.deps = [:] def versions = [:] versions.kotlin = "1.5.10" versions.gradle = "4.2.1" versions.room = "2.3.0" versions.androidx_appcompat = "1.3.0" versions.androidx_core = "1.3.2" versions.androidx_constraint_layout = "2.0.4" versions.androidx_lifecycle = "2.2.0" versions.androidx_recycler_view = "1.2.0" versions.androidx_navigation = "2.3.5" versions.okhttp_interceptor = "4.9.1" versions.retrofit = "2.9.0" versions.timber = "4.7.1" versions.koin = "2.2.3" versions.rx_core = "2.2.21" versions.rx_android = "2.1.1" versions.junit = "4.13.2" versions.test = "1.3.0" versions.test_ext = "1.1.2" versions.espresso = "3.3.0" def build_versions = [:] build_versions.min_sdk = 21 build_versions.target_sdk = 30 build_versions.build_tools = "30.0.3" build_versions.kotlin = "$versions.kotlin" ext.build_versions = build_versions def deps = [:] def project = [:] project.kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlin" project.gradle = "com.android.tools.build:gradle:$versions.gradle" deps.project = project def kotlin = [:] kotlin.version = "$versions.kotlin" kotlin.std_lib = "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$versions.kotlin" def androidx = [:] androidx.appcompat = "androidx.appcompat:appcompat:$versions.androidx_appcompat" androidx.core_ktx = "androidx.core:core-ktx:$versions.androidx_core" androidx.constraint_layout = "androidx.constraintlayout:constraintlayout:$versions.androidx_constraint_layout" androidx.lifecycle_ext = "androidx.lifecycle:lifecycle-extensions:$versions.androidx_lifecycle" androidx.lifecycle_viewmodel = "androidx.lifecycle:lifecycle-viewmodel-ktx:$versions.androidx_lifecycle" androidx.recycler_view = "androidx.recyclerview:recyclerview:$versions.androidx_recycler_view" androidx.navigation_fragment = "androidx.navigation:navigation-fragment-ktx:$versions.androidx_navigation" androidx.navigation_ui = "androidx.navigation:navigation-ui-ktx:$versions.androidx_navigation" def google = [:] google.kotlin = kotlin google.androidx = androidx deps.google = google def room = [:] room.runtime = "androidx.room:room-runtime:$versions.room" room.compiler = "androidx.room:room-compiler:$versions.room" def koin = [:] koin.core = "io.insert-koin:koin-android:$versions.koin" koin.scope = "io.insert-koin:koin-androidx-scope:$versions.koin" koin.viewmodel = "io.insert-koin:koin-androidx-viewmodel:$versions.koin" def rx = [:] rx.core = "io.reactivex.rxjava2:rxjava:$versions.rx_core" rx.android = "io.reactivex.rxjava2:rxandroid:$versions.rx_android" deps.rx = rx def okhttp = [:] okhttp.logging_interceptor = "com.squareup.okhttp3:logging-interceptor:$versions.okhttp_interceptor" def retrofit = [:] retrofit.runtime = "com.squareup.retrofit2:retrofit:$versions.retrofit" retrofit.gson = "com.squareup.retrofit2:converter-gson:$versions.retrofit" retrofit.mock = "com.squareup.retrofit2:retrofit-mock:$versions.retrofit" retrofit.rx = "com.squareup.retrofit2:adapter-rxjava2:$versions.retrofit" def thirdparty = [:] thirdparty.timber = "com.jakewharton.timber:timber:$versions.timber" def core = [:] core.room = room core.koin = koin core.rx = rx core.okhttp = okhttp core.retrofit = retrofit core.thirdparty = thirdparty deps.core = core def testing = [:] testing.junit = "junit:junit:$versions.junit" testing.core = "androidx.test:core:$versions.test" testing.rules = "androidx.test:rules:$versions.test" testing.runner = "androidx.test:runner:$versions.test" testing.ext = "androidx.test.ext:junit:$versions.test_ext" testing.koin = "org.koin:koin-test:$versions.koin" testing.espresso = "androidx.test.espresso:espresso-core:$versions.espresso" deps.testing = testing ext.deps = deps static def addRepos(RepositoryHandler handler) { handler.google() handler.mavenCentral() } ext.addRepos = this.&addRepos