diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 65a8c2c2a..cd7db9eb5 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -160,36 +160,36 @@ val genericImplementation by configurations val googleplayImplementation by configurations dependencies { - coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.3") - implementation("com.github.bitfireAT:dav4jvm:2.2.1") { + coreLibraryDesugaring(libs.desugar.jdk.libs) + implementation(libs.bitfire.dav4jvm) { exclude(group = "junit") } - implementation("com.github.tasks:ical4android:12fe73a") { + implementation(libs.bitfire.ical4android) { exclude(group = "commons-logging") exclude(group = "org.json", module = "json") exclude(group = "org.codehaus.groovy", module = "groovy") exclude(group = "org.codehaus.groovy", module = "groovy-dateutil") } - implementation("com.github.bitfireAT:cert4android:7814052") - implementation("com.github.tasks.opentasks:opentasks-provider:562fec5") { + implementation(libs.bitfire.cert4android) + implementation(libs.dmfs.opentasks.provider) { exclude("com.github.tasks.opentasks", "opentasks-contract") } - implementation("org.dmfs:rfc5545-datetime:0.2.4") - implementation("org.dmfs:lib-recur:0.11.4") - implementation("org.dmfs:jems:1.33") + implementation(libs.dmfs.rfc5545.datetime) + implementation(libs.dmfs.recur) + implementation(libs.dmfs.jems) implementation(libs.dagger.hilt) kapt(libs.dagger.hilt.compiler) kapt(libs.androidx.hilt.compiler) implementation(libs.androidx.hilt.work) - implementation("androidx.fragment:fragment-ktx:1.5.6") + implementation(libs.androidx.fragment.ktx) implementation(libs.androidx.lifecycle.runtime) implementation(libs.androidx.lifecycle.viewmodel) implementation(libs.androidx.room) kapt(libs.androidx.room.compiler) - implementation("androidx.appcompat:appcompat:1.6.1") - implementation("androidx.paging:paging-runtime:3.1.1") + implementation(libs.androidx.appcompat) + implementation(libs.androidx.paging) implementation(libs.bundles.markwon) debugImplementation(libs.bundles.flipper) @@ -199,40 +199,40 @@ dependencies { implementation(libs.kotlin.jdk8) implementation(libs.okhttp) - implementation("com.github.franmontiel:PersistentCookieJar:1.0.1") - implementation("com.google.code.gson:gson:2.10.1") - implementation("com.google.android.material:material:1.8.0") - implementation("androidx.constraintlayout:constraintlayout:2.1.4") - implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0") - implementation("androidx.preference:preference:1.2.0") - implementation("com.jakewharton.timber:timber:5.0.1") - implementation("com.google.android.apps.dashclock:dashclock-api:2.0.0") - implementation("com.github.twofortyfouram:android-plugin-api-for-locale:1.0.2") { + implementation(libs.persistent.cookiejar) + implementation(libs.gson) + implementation(libs.material) + implementation(libs.androidx.constraintlayout) + implementation(libs.androidx.swiperefreshlayout) + implementation(libs.androidx.preference) + implementation(libs.timber) + implementation(libs.dashclock.api) + implementation(libs.locale) { isTransitive = false } - implementation("com.rubiconproject.oss:jchronic:0.2.6") { + implementation(libs.jchronic) { isTransitive = false } - implementation("me.leolin:ShortcutBadger:1.1.22@aar") - implementation("com.google.apis:google-api-services-tasks:v1-rev20210709-2.0.0") - implementation("com.google.apis:google-api-services-drive:v3-rev20230306-2.0.0") - implementation("com.google.auth:google-auth-library-oauth2-http:0.27.0") + implementation(libs.shortcut.badger) + implementation(libs.google.api.tasks) + implementation(libs.google.api.drive) + implementation(libs.google.oauth2) implementation(libs.androidx.work) - implementation("com.etebase:client:2.3.2") - implementation("com.github.QuadFlask:colorpicker:0.0.15") - implementation("net.openid:appauth:0.11.1") - implementation("org.osmdroid:osmdroid-android:6.1.16@aar") + implementation(libs.etebase) + implementation(libs.colorpicker) + implementation(libs.appauth) + implementation(libs.osmdroid) implementation(libs.bundles.retrofit) - implementation("androidx.recyclerview:recyclerview:1.3.0") + implementation(libs.androidx.recyclerview) implementation(platform(libs.androidx.compose)) implementation("androidx.compose.ui:ui") implementation("androidx.compose.foundation:foundation") implementation("androidx.compose.material:material") implementation("androidx.compose.runtime:runtime-livedata") - implementation("androidx.activity:activity-compose:1.7.0") + implementation(libs.androidx.activity.compose) implementation("androidx.compose.material:material-icons-extended") - implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1") + implementation(libs.androidx.lifecycle.viewmodel.compose) implementation("androidx.compose.ui:ui-viewbinding") implementation("androidx.compose.ui:ui-tooling-preview") implementation(libs.bundles.coil) @@ -247,12 +247,12 @@ dependencies { exclude("com.google.android.gms", "play-services-ads-identifier") } googleplayImplementation("com.google.firebase:firebase-config-ktx") - googleplayImplementation("com.google.android.gms:play-services-location:19.0.1") - googleplayImplementation("com.google.android.gms:play-services-maps:18.1.0") - googleplayImplementation("com.android.billingclient:billing-ktx:4.1.0") - googleplayImplementation("com.google.android.play:core:1.10.3") - googleplayImplementation("com.google.android.play:core-ktx:1.8.1") - googleplayImplementation("com.google.android.gms:play-services-oss-licenses:17.0.0") + googleplayImplementation(libs.play.services.location) + googleplayImplementation(libs.play.services.maps) + googleplayImplementation(libs.play.billing.ktx) + googleplayImplementation(libs.play.core) + googleplayImplementation(libs.play.core.ktx) + googleplayImplementation(libs.play.services.oss.licenses) androidTestImplementation(libs.dagger.hilt.testing) kaptAndroidTest(libs.dagger.hilt.compiler) @@ -261,13 +261,13 @@ dependencies { androidTestImplementation(libs.make.it.easy) androidTestImplementation(libs.androidx.test.runner) androidTestImplementation(libs.androidx.test.rules) - androidTestImplementation("androidx.test.ext:junit:1.1.5") + androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.okhttp.mockwebserver) - testImplementation("junit:junit:4.13.2") - testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4") + testImplementation(libs.junit) + testImplementation(libs.kotlinx.coroutines.test) testImplementation(libs.make.it.easy) testImplementation(libs.androidx.test.core) testImplementation(libs.mockito.core) - testImplementation("org.ogce:xpp3:1.1.6") + testImplementation(libs.xpp3) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 969d88b26..72451e88f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,56 +1,127 @@ [versions] accompanist = "0.30.1" +activity-compose = "1.7.0" +appauth = "0.11.1" +appcompat = "1.6.1" +cert4android = "7814052" coil = "2.3.0" +colorpicker = "0.0.15" compose = "2023.04.00" compose-compiler = "1.4.4" +constraintlayout = "2.1.4" dagger-hilt = "2.45" +dashclock-api = "2.0.0" +dav4jvm = "2.2.1" +desugar_jdk_libs = "2.0.3" +etebase = "2.3.2" firebase = "31.4.0" flipper = "0.188.0" +fragment-ktx = "1.5.6" +google-oauth2 = "0.27.0" +google-api-drive = "v3-rev20230306-2.0.0" +google-api-tasks = "v1-rev20210709-2.0.0" +gson = "2.10.1" hilt = "1.0.0" +ical4android = "12fe73a" +jchronic = "0.2.6" +jems = "1.33" +junit-junit = "4.13.2" +junit = "1.1.5" kotlin = "1.8.10" +kotlinx-coroutines-test = "1.6.4" leakcanary = "2.10" +lib-recur = "0.11.4" lifecycle = "2.6.1" +locale = "1.0.2" make-it-easy = "4.0.1" markwon = "4.6.2" +material = "1.8.0" mockito = "5.2.0" okhttp = "4.10.0" +opentasks = "562fec5" +osmdroid = "6.1.16" +paging = "3.1.1" +persistent-cookiejar = "1.0.1" +play-billing-ktx = "4.1.0" +play-core-ktx = "1.8.1" +play-core = "1.10.3" +play-services-maps = "18.1.0" +play-services-location = "19.0.1" +play-services-oss-licenses = "17.0.0" +preference = "1.2.0" +recyclerview = "1.3.0" retrofit = "2.9.0" +rfc5545-datetime = "0.2.4" room = "2.5.1" +shortcut-badger = "1.1.22" soloader = "0.10.5" +timber = "5.0.1" +swiperefreshlayout = "1.1.0" work = "2.8.1" androidx-test = "1.5.0" androidx-test-runner = "1.5.2" +xpp3 = "1.1.6" [libraries] accompanist-flowlayout = { module = "com.google.accompanist:accompanist-flowlayout", version.ref = "accompanist" } accompanist-permissions = { module = "com.google.accompanist:accompanist-permissions", version.ref = "accompanist" } accompanist-themeadapter = { module = "com.google.accompanist:accompanist-themeadapter-appcompat", version.ref = "accompanist" } +androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activity-compose" } +androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appcompat" } androidx-compose = { module = "androidx.compose:compose-bom", version.ref = "compose" } +androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "constraintlayout" } +androidx-fragment-ktx = { module = "androidx.fragment:fragment-ktx", version.ref = "fragment-ktx" } androidx-hilt-compiler = { module = "androidx.hilt:hilt-compiler", version.ref = "hilt" } androidx-hilt-work = { module = "androidx.hilt:hilt-work", version.ref = "hilt" } +androidx-junit = { module = "androidx.test.ext:junit", version.ref = "junit" } androidx-lifecycle-runtime = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "lifecycle" } androidx-lifecycle-viewmodel = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "lifecycle" } +androidx-lifecycle-viewmodel-compose = { module = "androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "lifecycle" } +androidx-paging = { module = "androidx.paging:paging-runtime", version.ref = "paging" } +androidx-preference = { module = "androidx.preference:preference", version.ref = "preference" } +androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version.ref = "recyclerview" } androidx-room = { module = "androidx.room:room-ktx", version.ref = "room" } androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "room"} +androidx-swiperefreshlayout = { module = "androidx.swiperefreshlayout:swiperefreshlayout", version.ref = "swiperefreshlayout" } androidx-test-core = { module = "androidx.test:core", version.ref = "androidx-test" } androidx-test-rules = { module = "androidx.test:rules", version.ref = "androidx-test" } androidx-test-runner = { module = "androidx.test:runner", version.ref = "androidx-test-runner" } androidx-work = { module = "androidx.work:work-runtime-ktx", version.ref = "work" } +appauth = { module = "net.openid:appauth", version.ref = "appauth" } +bitfire-cert4android = { module = "com.github.bitfireAT:cert4android", version.ref = "cert4android" } +bitfire-dav4jvm = { module = "com.github.bitfireAT:dav4jvm", version.ref = "dav4jvm"} +bitfire-ical4android = { module = "com.github.tasks:ical4android", version.ref = "ical4android"} coil-compose = { module = "io.coil-kt:coil-compose", version.ref = "coil" } coil-gif = { module = "io.coil-kt:coil-gif", version.ref = "coil" } coil-svg = { module = "io.coil-kt:coil-svg", version.ref = "coil" } coil-video = { module = "io.coil-kt:coil-video", version.ref = "coil" } +colorpicker = { module = "com.github.QuadFlask:colorpicker", version.ref = "colorpicker" } compose-compiler = { module = "androidx.compose.compiler:compiler", version.ref = "compose-compiler" } dagger-hilt = { module = "com.google.dagger:hilt-android", version.ref = "dagger-hilt" } dagger-hilt-compiler = { module = "com.google.dagger:hilt-compiler", version.ref = "dagger-hilt" } dagger-hilt-testing = { module = "com.google.dagger:hilt-android-testing", version.ref = "dagger-hilt" } +dashclock-api = { module = "com.google.android.apps.dashclock:dashclock-api", version.ref = "dashclock-api" } +desugar_jdk_libs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "desugar_jdk_libs" } +dmfs-jems = { module = "org.dmfs:jems", version.ref = "jems" } +dmfs-opentasks-provider = { module = "com.github.tasks.opentasks:opentasks-provider", version.ref = "opentasks" } +dmfs-recur = { module = "org.dmfs:lib-recur", version.ref = "lib-recur" } +dmfs-rfc5545-datetime = { module = "org.dmfs:rfc5545-datetime", version.ref = "rfc5545-datetime" } +etebase = { module = "com.etebase:client", version.ref = "etebase" } facebook-flipper = { module = "com.facebook.flipper:flipper", version.ref = "flipper" } facebook-flipper-network = { module = "com.facebook.flipper:flipper-network-plugin", version.ref = "flipper" } facebook-soloader = { module = "com.facebook.soloader:soloader", version.ref = "soloader" } firebase = { module = "com.google.firebase:firebase-bom", version.ref = "firebase" } +google-oauth2 = { module = "com.google.auth:google-auth-library-oauth2-http", version.ref = "google-oauth2" } +google-api-drive = { module = "com.google.apis:google-api-services-drive", version.ref = "google-api-drive" } +google-api-tasks = { module = "com.google.apis:google-api-services-tasks", version.ref = "google-api-tasks" } +gson = { module = "com.google.code.gson:gson", version.ref = "gson" } +jchronic = { module = "com.rubiconproject.oss:jchronic", version.ref = "jchronic" } +junit = { module = "junit:junit", version.ref = "junit-junit" } kotlin-jdk8 = { module = "org.jetbrains.kotlin:kotlin-stdlib-jdk8", version.ref = "kotlin" } kotlin-reflect = { module = "org.jetbrains.kotlin:kotlin-reflect", version.ref = "kotlin" } +kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinx-coroutines-test" } leakcanary = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanary" } +locale = { module = "com.github.twofortyfouram:android-plugin-api-for-locale", version.ref = "locale" } make-it-easy = { module = "com.natpryce:make-it-easy", version.ref = "make-it-easy" } markwon = { module = "io.noties.markwon:core", version.ref = "markwon" } markwon-editor = { module = "io.noties.markwon:editor", version.ref = "markwon" } @@ -58,12 +129,24 @@ markwon-linkify = { module = "io.noties.markwon:linkify", version.ref = "markwon markwon-strikethrough = { module = "io.noties.markwon:ext-strikethrough", version.ref = "markwon" } markwon-tables = { module = "io.noties.markwon:ext-tables", version.ref = "markwon" } markwon-tasklist = { module = "io.noties.markwon:ext-tasklist", version.ref = "markwon" } +material = { module = "com.google.android.material:material", version.ref = "material" } mockito-android = { module = "org.mockito:mockito-android", version.ref = "mockito" } mockito-core = { module = "org.mockito:mockito-core", version.ref = "mockito" } okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" } okhttp-mockwebserver = { module = "com.squareup.okhttp3:mockwebserver", version.ref = "okhttp" } +osmdroid = { module = "org.osmdroid:osmdroid-android", version.ref = "osmdroid" } +persistent-cookiejar = { module = "com.github.franmontiel:PersistentCookieJar", version.ref = "persistent-cookiejar" } +play-billing-ktx = { module = "com.android.billingclient:billing-ktx", version.ref = "play-billing-ktx" } +play-core-ktx = { module = "com.google.android.play:core-ktx", version.ref = "play-core-ktx" } +play-core = { module = "com.google.android.play:core", version.ref = "play-core" } +play-services-maps = { module = "com.google.android.gms:play-services-maps", version.ref = "play-services-maps" } +play-services-location = { module = "com.google.android.gms:play-services-location", version.ref = "play-services-location" } +play-services-oss-licenses = { module = "com.google.android.gms:play-services-oss-licenses", version.ref = "play-services-oss-licenses" } retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" } retrofit-moshi = { module = "com.squareup.retrofit2:converter-moshi", version.ref = "retrofit" } +shortcut-badger = { module = "me.leolin:ShortcutBadger", version.ref = "shortcut-badger" } +timber = { module = "com.jakewharton.timber:timber", version.ref = "timber" } +xpp3 = { module = "org.ogce:xpp3", version.ref = "xpp3" } [bundles] coil = [