[versions]
android-sdk-compile = "35"
android-sdk-target = "35"
android-sdk-min = "26"

android-gradle-plugin = "8.7.3"
androidx-junit = "1.1.5"
espresso-core = "3.5.1"
google-services-plugin = "4.4.2"
junit = "4.13.2"
protobuf = "3.23.0"
kotlin-gradle-plugin = "2.1.0"
ksp-plugin = "2.1.0-1.0.29" #NB: ksp version must be compatible with kotlin
firebase-bom="32.6.0"
firebase-app-distribution-plugin = "4.0.0"
firebase-crashlytics-gradle = "2.9.9"
protobuf-plugin = "0.9.3"
play-publisher-plugin = "3.8.6"
compose-navigation = "2.8.4"
workmanager = "2.10.0"

hilt-android = "2.52"
hilt-navigation-compose = "1.2.0"
android-material-version = "1.11.0"

core-ktx = "1.12.0"
activity-compose = "1.8.2"
lifecycle = "2.8.3"
coroutines = "1.9.0"
compose-ui = "1.8.0"
androidx-compose-bom = "2024.01.00"
material3-version = "1.2.0-rc01"
accompanist = "0.31.3-beta"
retrofit = "2.11.0"
okhttp = "4.12.0"
kotlin-serialization = "1.7.1"

[libraries]
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "core-ktx" }
androidx-lifecycle-compose = { module = "androidx.lifecycle:lifecycle-runtime-compose", version.ref = "lifecycle" }
androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "material3-version" }
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activity-compose" }

androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "androidx-compose-bom" }
androidx-compose-foundation = { group = "androidx.compose.foundation", name = "foundation" }
androidx-compose-ui-tool-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
androidx-compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref="compose-ui" }
androidx-compose-lifecycle-vm = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose" }
androidx-compose-material = { module = "androidx.compose.material:material" }
androidx-compose-material-icons-extended = { module = "androidx.compose.material:material-icons-extended" }
accompanist-permissions = { group = "com.google.accompanist", name = "accompanist-permissions", version.ref = "accompanist" }
accompanist-bottomsheet = { group = "com.google.accompanist", name = "accompanist-navigation-material", version.ref = "accompanist" }
appauth = "net.openid:appauth:0.11.1"
simpleframework-xml-parser = "org.simpleframework:simple-xml:2.7.1"
hilt-android-compiler = { module = "com.google.dagger:hilt-android-compiler", version.ref = "hilt-android" }
hilt-android = { module = "com.google.dagger:hilt-android", version.ref = "hilt-android" }

androidx-compose-navigation = { module = "androidx.navigation:navigation-compose", version.ref = "compose-navigation" }
androidx-compose-hilt-navigation = { module = "androidx.hilt:hilt-navigation-compose", version.ref = "hilt-navigation-compose" }
androidx-splash-core = "androidx.core:core-splashscreen:1.0.1"
android-material = { module = "com.google.android.material:material", version.ref = "android-material-version" }

androidx-compose-debug-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
androidx-compose-debug-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
androidx-navigation-runtime-ktx = { module = "androidx.navigation:navigation-runtime-ktx", version.ref = "compose-navigation"}

timber = "com.jakewharton.timber:timber:5.0.1"

coroutines = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }

retrofit-retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
retrofit-converter-kotlinx-serialization = { module = "com.squareup.retrofit2:converter-kotlinx-serialization", version.ref = "retrofit" }
retrofit-converter-scalars = { module = "com.squareup.retrofit2:converter-scalars", version.ref = "retrofit" }

okhttp-okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
okhttp-logging = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "okhttp" }

androidx-datastore = "androidx.datastore:datastore-preferences:1.1.1"
google-protobuf = { module = "com.google.protobuf:protobuf-javalite", version.ref = "protobuf" }

firebase-bom = { group = "com.google.firebase", name = "firebase-bom", version.ref = "firebase-bom" }
firebase-crashlytics = { group = "com.google.firebase", name = "firebase-crashlytics"}

kotlin-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlin-serialization" }

androidx-work-runtime = { module = "androidx.work:work-runtime-ktx", version.ref = "workmanager" }

[plugins]
android-application = { id = "com.android.application", version.ref = "android-gradle-plugin" }
android-library = { id = "com.android.library", version.ref = "android-gradle-plugin" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin-gradle-plugin" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp-plugin" }
hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt-android" }
serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin-gradle-plugin" }
google-gms-gradle = { id = "com.google.gms.google-services", version.ref = "google-services-plugin" }
protobuf = { id = "com.google.protobuf", version.ref = "protobuf-plugin" }
play-publisher = { id = "com.github.triplet.play", version.ref = "play-publisher-plugin"}
firebase-appdistribution = { id = "com.google.firebase.appdistribution", version.ref = "firebase-app-distribution-plugin" }
firebase-crashlytics = { id = "com.google.firebase.crashlytics", version.ref = "firebase-crashlytics-gradle" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin-gradle-plugin" }
[bundles]
