Files
AuroraStore/gradle/libs.versions.toml
Rahul Patel 753c7fa06a Add user reviews to AppDetailsScreen
Resolves #1494

Allow signed-in users to rate, review, edit, and delete an installed app's
review directly from its details screen. The form is hidden from anonymous
accounts and only shown for installed apps.

Submitted reviews are cached locally in a new Room "review" table (db v9) so
they appear immediately while Google publishes them, and are reconciled with
the Play API: edits made on the Play Store are mirrored, and a review deleted
there (or via the new delete action) is removed locally. Deletion relies on
gplayapi 3.6.3.
2026-06-03 00:38:58 +05:30

114 lines
6.9 KiB
TOML

#
# SPDX-FileCopyrightText: 2024-2025 The Calyx Institute
# SPDX-FileCopyrightText: 2024-2025 Aurora OSS
# SPDX-License-Identifier: GPL-3.0-or-later
#
[versions]
activity = "1.13.0"
adaptive = "1.3.0-beta02"
agCoreservice = "13.3.1.300"
androidGradlePlugin = "9.2.1"
androidx-hilt = "1.3.0"
androidx-junit = "1.3.0"
biometric = "1.1.0"
browser = "1.10.0"
coil = "3.4.0"
composeBom = "2026.05.01"
composeMaterial = "1.5.0-alpha20"
core = "1.18.0"
espresso = "3.7.0"
gplayapi = "3.6.3"
hiddenapibypass = "6.1"
hilt = "2.59.2"
junit = "4.13.2"
kotlin = "2.3.21"
ksp = "2.3.7"
ktlint = "14.2.0"
leakcanary = "2.14"
libsu = "6.0.0"
lifecycle = "2.10.0"
material = "1.14.0"
navigation = "2.9.8"
navigation3 = "1.1.2"
okhttp = "5.3.2"
paging = "3.5.0"
preference = "1.2.1"
processPhoenix = "3.0.0"
protobufJavalite = "4.35.0"
rikkaHiddenAPI = "4.4.0"
rikkaTools = "4.4.0"
room = "2.8.4"
serialization = "1.11.0"
shizuku = "13.1.5"
truth = "1.4.5"
work = "2.11.2"
[libraries]
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activity" }
androidx-adaptive-core = { module = "androidx.compose.material3.adaptive:adaptive", version.ref = "adaptive" }
androidx-adaptive-layout = { module = "androidx.compose.material3.adaptive:adaptive-layout", version.ref = "adaptive" }
androidx-adaptive-navigation = { module = "androidx.compose.material3.adaptive:adaptive-navigation", version.ref = "adaptive" }
androidx-biometric = { module = "androidx.biometric:biometric", version.ref = "biometric" }
androidx-browser = { module = "androidx.browser:browser", version.ref = "browser" }
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
androidx-compose-runtime-livedata = { group = "androidx.compose.runtime", name = "runtime-livedata" }
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "core" }
androidx-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso" }
androidx-hilt-viewmodel = { module = "androidx.hilt:hilt-lifecycle-viewmodel-compose", version.ref = "androidx-hilt" }
androidx-junit = { module = "androidx.test.ext:junit-ktx", version.ref = "androidx-junit" }
androidx-lifecycle-navigation3 = { module = "androidx.lifecycle:lifecycle-viewmodel-navigation3", version.ref = "lifecycle" }
androidx-lifecycle-viewmodel-ktx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycle" }
androidx-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "composeMaterial" }
androidx-navigation3-runtime = { module = "androidx.navigation3:navigation3-runtime", version.ref = "navigation3" }
androidx-navigation3-ui = { module = "androidx.navigation3:navigation3-ui", version.ref = "navigation3" }
androidx-paging-compose = { module = "androidx.paging:paging-compose", version.ref = "paging" }
androidx-paging-runtime = { module = "androidx.paging:paging-runtime", version.ref = "paging" }
androidx-preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "preference" }
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
androidx-room-paging = { module = "androidx.room:room-paging", version.ref = "room" }
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
androidx-ui = { group = "androidx.compose.ui", name = "ui" }
androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
androidx-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
androidx-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
androidx-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
androidx-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "work" }
auroraoss-gplayapi = { module = "com.auroraoss:gplayapi", version.ref = "gplayapi" }
coil-compose = { module = "io.coil-kt.coil3:coil-compose", version.ref = "coil" }
coil-kt = { module = "io.coil-kt.coil3:coil", version.ref = "coil" }
coil-network = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil" }
github-topjohnwu-libsu = { module = "com.github.topjohnwu.libsu:core", version.ref = "libsu" }
google-android-material = { module = "com.google.android.material:material", version.ref = "material" }
google-protobuf-javalite = { module = "com.google.protobuf:protobuf-javalite", version.ref = "protobufJavalite" }
google-truth = { module = "com.google.truth:truth", version.ref = "truth" }
hilt-android-compiler = { module = "com.google.dagger:hilt-android-compiler", version.ref = "hilt" }
hilt-android-core = { module = "com.google.dagger:hilt-android", version.ref = "hilt" }
hilt-android-testing = { module = "com.google.dagger:hilt-android-testing", version.ref = "hilt" }
hilt-androidx-compiler = { module = "androidx.hilt:hilt-compiler", version.ref = "androidx-hilt" }
hilt-androidx-work = { module = "androidx.hilt:hilt-work", version.ref = "androidx-hilt" }
huawei-hms-coreservice = { module = "com.huawei.hms:ag-coreservice", version.ref = "agCoreservice" }
junit = { module = "junit:junit", version.ref = "junit" }
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "serialization" }
lsposed-hiddenapibypass = { module = "org.lsposed.hiddenapibypass:hiddenapibypass", version.ref = "hiddenapibypass" }
process-phoenix = { module = "com.jakewharton:process-phoenix", version.ref = "processPhoenix" }
rikka-hidden-stub = { module = "dev.rikka.hidden:stub", version.ref = "rikkaHiddenAPI" }
rikka-shizuku-api = { module = "dev.rikka.shizuku:api", version.ref = "shizuku" }
rikka-shizuku-provider = { module = "dev.rikka.shizuku:provider", version.ref = "shizuku" }
rikka-tools-refine-runtime = { module = "dev.rikka.tools.refine:runtime", version.ref = "rikkaTools" }
squareup-leakcanary-android = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanary" }
squareup-okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
androidx-navigation = { id = "androidx.navigation.safeargs.kotlin", version.ref = "navigation" }
google-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
hilt-android-plugin = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
jetbrains-kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
jetbrains-kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" }
jetbrains-kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint" }
rikka-tools-refine-plugin = { id = "dev.rikka.tools.refine", version.ref = "rikkaTools" }