-
Notifications
You must be signed in to change notification settings - Fork 114
Expand file tree
/
Copy pathGlobalDependencies.kt
More file actions
228 lines (201 loc) · 12.9 KB
/
GlobalDependencies.kt
File metadata and controls
228 lines (201 loc) · 12.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
@file:Suppress("unused")
object Versions {
/* SDK Versions */
const val COMPILE_SDK = 36
const val MIN_SDK = 28
const val TARGET_SDK = 35
/* Build/tooling */
const val ANDROID_GRADLE_TOOLS = "8.13.2"
const val BUILD_TOOLS = "35.0.0"
/* Testing */
const val JUNIT = "4.13.2"
const val ROBOLECTRIC = "4.16"
const val JACOCO_ANDROID = "0.1.5"
/* Kotlin */
const val KOTLIN = "2.2.21"
const val KOTLIN_COROUTINES = "1.10.2"
const val KSP = "2.2.21-2.0.4"
/* Google, Play Services */
const val GOOGLE_SERVICES = "4.4.3"
/* Others */
const val APOLLO = "4.3.3"
const val NUTRIENT = "11.1.1"
const val PHOTO_VIEW = "2.3.0"
const val MOBIUS = "1.2.1"
const val HILT = "2.57.2"
const val HILT_ANDROIDX = "1.3.0"
const val LIFECYCLE = "2.10.0"
const val FRAGMENT = "1.8.9"
const val WORK_MANAGER = "2.11.0"
const val GLIDE_VERSION = "5.0.5"
const val RETROFIT = "3.0.0"
const val OKHTTP = "4.12.0"
const val ROOM = "2.8.4"
const val HAMCREST = "3.0"
const val NAVIGATION = "2.9.6"
const val MEDIA3 = "1.8.0"
const val DATASTORE = "1.2.0"
const val LOTTIE = "6.7.0"
const val ENCRYPTED_SHARED_PREFERENCES = "1.1.0"
const val JAVA_JWT = "4.5.0"
const val GLANCE = "1.1.1"
const val LIVEDATA = "1.9.0"
const val REORDERABLE = "2.4.0"
const val MLKIT_DOCUMENT_SCANNER = "16.0.0"
}
object Libs {
/* Kotlin */
const val KOTLIN_STD_LIB = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.KOTLIN}"
const val KOTLIN_COROUTINES_CORE = "org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.KOTLIN_COROUTINES}"
const val KOTLIN_COROUTINES_ANDROID = "org.jetbrains.kotlinx:kotlinx-coroutines-android:${Versions.KOTLIN_COROUTINES}"
const val KOTLIN_COROUTINES_TEST = "org.jetbrains.kotlinx:kotlinx-coroutines-test:${Versions.KOTLIN_COROUTINES}"
/* Apollo/GraphQL */
const val APOLLO_RUNTIME = "com.apollographql.apollo:apollo-runtime:${Versions.APOLLO}"
const val APOLLO_API = "com.apollographql.apollo:apollo-api:${Versions.APOLLO}"
const val APOLLO_HTTP_CACHE = "com.apollographql.apollo:apollo-http-cache:${Versions.APOLLO}"
/* Androidx libraries */
const val ANDROIDX_ANNOTATION = "androidx.annotation:annotation:1.9.1"
const val ANDROIDX_APPCOMPAT = "androidx.appcompat:appcompat:1.7.1"
const val ANDROIDX_BROWSER = "androidx.browser:browser:1.9.0"
const val ANDROIDX_CARDVIEW = "androidx.cardview:cardview:1.0.0"
const val ANDROIDX_CONSTRAINT_LAYOUT = "androidx.constraintlayout:constraintlayout:2.2.1"
const val ANDROIDX_EXIF = "androidx.exifinterface:exifinterface:1.4.2"
const val ANDROIDX_FRAGMENT = "androidx.fragment:fragment:${Versions.FRAGMENT}"
const val ANDROIDX_FRAGMENT_KTX = "androidx.fragment:fragment-ktx:${Versions.FRAGMENT}"
const val ANDROIDX_PALETTE = "androidx.palette:palette:1.0.0"
const val ANDROIDX_PERCENT = "androidx.percentlayout:percentlayout:1.0.0"
const val ANDROIDX_RECYCLERVIEW = "androidx.recyclerview:recyclerview:1.4.0"
const val ANDROIDX_VECTOR = "androidx.vectordrawable:vectordrawable:1.2.0"
const val ANDROIDX_SWIPE_REFRESH_LAYOUT = "androidx.swiperefreshlayout:swiperefreshlayout:1.2.0"
const val ANDROIDX_CORE_TESTING = "androidx.arch.core:core-testing:2.2.0"
const val ANDROIDX_WORK_MANAGER = "androidx.work:work-runtime:${Versions.WORK_MANAGER}"
const val ANDROIDX_WORK_MANAGER_KTX = "androidx.work:work-runtime-ktx:${Versions.WORK_MANAGER}"
const val ANDROIDX_WORK_TEST = "androidx.work:work-testing:${Versions.WORK_MANAGER}"
const val ANDROIDX_WEBKIT = "androidx.webkit:webkit:1.14.0"
const val ANDROIDX_COMPOSE_ACTIVITY = "androidx.activity:activity-compose:1.12.1"
const val DATASTORE = "androidx.datastore:datastore-preferences:${Versions.DATASTORE}"
const val ENCRYPTED_SHARED_PREFERENCES = "androidx.security:security-crypto:${Versions.ENCRYPTED_SHARED_PREFERENCES}"
/* Firebase */
const val FIREBASE_BOM = "com.google.firebase:firebase-bom:34.6.0"
const val FIREBASE_CRASHLYTICS = "com.google.firebase:firebase-crashlytics"
const val FIREBASE_MESSAGING = "com.google.firebase:firebase-messaging"
const val FIREBASE_CONFIG = "com.google.firebase:firebase-config"
const val FIREBASE_CRASHLYTICS_NDK = "com.google.firebase:firebase-crashlytics-ndk"
/* Google Dependencies */
const val PLAY_IN_APP_UPDATES = "com.google.android.play:app-update:2.1.0"
const val FLEXBOX_LAYOUT = "com.google.android.flexbox:flexbox:3.0.0"
const val MATERIAL_DESIGN = "com.google.android.material:material:1.13.0"
const val MLKIT_DOCUMENT_SCANNER = "com.google.android.gms:play-services-mlkit-document-scanner:${Versions.MLKIT_DOCUMENT_SCANNER}"
/* Mobius */
const val MOBIUS_CORE = "com.spotify.mobius:mobius-core:${Versions.MOBIUS}"
const val MOBIUS_TEST = "com.spotify.mobius:mobius-test:${Versions.MOBIUS}"
const val MOBIUS_ANDROID = "com.spotify.mobius:mobius-android:${Versions.MOBIUS}"
const val MOBIUS_EXTRAS = "com.spotify.mobius:mobius-extras:${Versions.MOBIUS}"
/* Testing */
const val JUNIT = "junit:junit:${Versions.JUNIT}"
const val ROBOLECTRIC = "org.robolectric:robolectric:${Versions.ROBOLECTRIC}"
const val ANDROIDX_TEST_JUNIT = "androidx.test.ext:junit:1.3.0"
const val MOCKK = "io.mockk:mockk:1.14.7"
const val THREETEN_BP = "org.threeten:threetenbp:1.7.2"
const val UI_AUTOMATOR = "androidx.test.uiautomator:uiautomator:2.3.0"
const val TEST_ORCHESTRATOR = "androidx.test:orchestrator:1.6.1"
const val HAMCREST = "org.hamcrest:hamcrest:${Versions.HAMCREST}"
/* Qr Code (zxing) */
const val JOURNEY_ZXING = "com.journeyapps:zxing-android-embedded:4.3.0"
const val JOURNEY_ZXING_CORE = "com.google.zxing:core:3.5.2"
/* Dependency Inejction */
const val HILT = "com.google.dagger:hilt-android:${Versions.HILT}"
const val HILT_COMPILER = "com.google.dagger:hilt-android-compiler:${Versions.HILT}"
const val HILT_TESTING = "com.google.dagger:hilt-android-testing:${Versions.HILT}"
const val HILT_TESTING_COMPILER = "com.google.dagger:hilt-android-compiler:${Versions.HILT}"
const val HILT_ANDROIDX_COMPILER = "androidx.hilt:hilt-compiler:${Versions.HILT_ANDROIDX}"
const val HILT_ANDROIDX_WORK = "androidx.hilt:hilt-work:${Versions.HILT_ANDROIDX}"
const val HILT_COMPOSE_NAVIGATION = "androidx.hilt:hilt-navigation-compose:${Versions.HILT_ANDROIDX}"
/* Android Architecture Components */
const val VIEW_MODEL = "androidx.lifecycle:lifecycle-viewmodel-ktx:${Versions.LIFECYCLE}"
const val LIVE_DATA = "androidx.lifecycle:lifecycle-livedata-ktx:${Versions.LIFECYCLE}"
const val VIEW_MODE_SAVED_STATE = "androidx.lifecycle:lifecycle-viewmodel-savedstate:${Versions.LIFECYCLE}"
const val LIFECYCLE_COMPILER = "androidx.lifecycle:lifecycle-compiler:${Versions.LIFECYCLE}"
const val COMPOSE_VIEW_MODEL = "androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.LIFECYCLE}"
/* Media and content handling */
const val NUTRIENT = "io.nutrient:nutrient:${Versions.NUTRIENT}"
const val MEDIA3 = "androidx.media3:media3-exoplayer:${Versions.MEDIA3}"
const val MEDIA3_UI = "androidx.media3:media3-ui:${Versions.MEDIA3}"
const val MEDIA3_HLS = "androidx.media3:media3-exoplayer-hls:${Versions.MEDIA3}"
const val MEDIA3_DASH = "androidx.media3:media3-exoplayer-dash:${Versions.MEDIA3}"
const val MEDIA3_SMOOTH_STREAMING = "androidx.media3:media3-exoplayer-smoothstreaming:${Versions.MEDIA3}"
const val PHOTO_VIEW = "com.github.chrisbanes:PhotoView:${Versions.PHOTO_VIEW}"
const val ANDROID_SVG = "com.caverock:androidsvg:1.4"
const val RICH_EDITOR = "jp.wasabeef:richeditor-android:2.0.0"
const val GLIDE = "com.github.bumptech.glide:glide:${Versions.GLIDE_VERSION}"
const val GLIDE_OKHTTP = "com.github.bumptech.glide:okhttp3-integration:${Versions.GLIDE_VERSION}"
const val GLIDE_COMPILER = "com.github.bumptech.glide:compiler:${Versions.GLIDE_VERSION}"
const val GLIDE_COMPOSE = "com.github.bumptech.glide:compose:1.0.0-beta01"
const val SCALE_IMAGE_VIEW = "com.davemorrissey.labs:subsampling-scale-image-view:3.10.0"
/* Network */
const val RETROFIT = "com.squareup.retrofit2:retrofit:${Versions.RETROFIT}"
const val GSON = "com.google.code.gson:gson:2.10.1"
const val RETROFIT_GSON_ADAPTER = "com.squareup.retrofit2:converter-gson:${Versions.RETROFIT}"
const val RETROFIT_XML_ADAPTER = "com.squareup.retrofit2:converter-simplexml:${Versions.RETROFIT}"
const val RETROFIT_SCALAR_CONVERTER = "com.squareup.retrofit2:converter-scalars:${Versions.RETROFIT}"
const val OKHTTP = "com.squareup.okhttp3:okhttp:${Versions.OKHTTP}"
const val OKHTTP_LOGGING = "com.squareup.okhttp3:logging-interceptor:${Versions.OKHTTP}"
const val OKHTTP_URL_CONNECTION = "com.squareup.okhttp3:okhttp-urlconnection:${Versions.OKHTTP}"
const val OKIO = "com.squareup.okio:okio:3.16.2"
/* Other */
const val LOTTIE = "com.airbnb.android:lottie:${Versions.LOTTIE}"
const val LOTTIE_COMPOSE = "com.airbnb.android:lottie-compose:${Versions.LOTTIE}"
const val SLIDING_UP_PANEL = "com.sothree.slidinguppanel:library:3.3.1"
const val DISK_LRU_CACHE = "com.jakewharton:disklrucache:2.0.2"
const val EVENTBUS = "org.greenrobot:eventbus:3.3.1"
const val JW_THREETEN_BP = "com.jakewharton.threetenabp:threetenabp:1.4.9"
const val PROCESS_PHOENIX = "com.jakewharton:process-phoenix:2.1.2"
const val KEYBOARD_VISIBILITY_LISTENER = "net.yslibrary.keyboardvisibilityevent:keyboardvisibilityevent:2.2.1"
const val APACHE_COMMONS_TEXT = "org.apache.commons:commons-text:1.12.0"
const val CAMERA_VIEW = "com.otaliastudios:cameraview:2.7.2"
const val JAVA_JWT = "com.auth0:java-jwt:${Versions.JAVA_JWT}"
const val PENDO = "sdk.pendo.io:pendoIO:3.9.+"
/* Database */
const val ROOM = "androidx.room:room-runtime:${Versions.ROOM}"
const val ROOM_COMPILER = "androidx.room:room-compiler:${Versions.ROOM}"
const val ROOM_COROUTINES = "androidx.room:room-ktx:${Versions.ROOM}"
const val ROOM_TEST = "androidx.room:room-testing:${Versions.ROOM}"
const val RRULE = "org.scala-saddle:google-rfc-2445:20110304"
// Compose
const val COMPOSE_BOM = "androidx.compose:compose-bom:2025.09.01"
const val COMPOSE_MATERIAL = "androidx.compose.material:material"
const val COMPOSE_MATERIAL_ICONS = "androidx.compose.material:material-icons-core"
const val COMPOSE_PREVIEW = "androidx.compose.ui:ui-tooling-preview"
const val COMPOSE_TOOLING = "androidx.compose.ui:ui-tooling"
const val COMPOSE_UI = "androidx.compose.ui:ui-android"
const val COMPOSE_UI_TEST = "androidx.compose.ui:ui-test-junit4"
const val COMPOSE_UI_TEST_MANIFEST = "androidx.compose.ui:ui-test-manifest"
const val COMPOSE_MATERIAL_3 = "androidx.compose.material3:material3:1.4.0"
const val COMPOSE_ADAPTIVE = "androidx.compose.material3.adaptive:adaptive"
const val COMPOSE_MATERIAL3_WINDOW_SIZE = "androidx.compose.material3:material3-window-size-class"
const val COMPOSE_NAVIGATION_HILT = "androidx.hilt:hilt-navigation-compose:1.3.0"
const val COMPOSE_FRAGMENT = "androidx.fragment:fragment-compose:1.8.9"
const val COMPOSE_REORDERABLE = "sh.calvin.reorderable:reorderable:${Versions.REORDERABLE}"
const val COMPOSE_FOUNDATION = "androidx.compose.foundation:foundation"
// Glance
const val GLANCE = "androidx.glance:glance:${Versions.GLANCE}"
const val GLANCE_PREVIEW = "androidx.glance:glance-preview:${Versions.GLANCE}"
const val GLANCE_APPWIDGET = "androidx.glance:glance-appwidget:${Versions.GLANCE}"
const val GLANCE_APPWIDGET_PREVIEW = "androidx.glance:glance-appwidget-preview:${Versions.GLANCE}"
// Navigation
const val NAVIGATION_FRAGMENT = "androidx.navigation:navigation-fragment-ktx:${Versions.NAVIGATION}"
const val NAVIGATION_KTX = "androidx.navigation:navigation-ui-ktx:${Versions.NAVIGATION}"
const val NAVIGATION_COMPOSE = "androidx.navigation:navigation-compose:${Versions.NAVIGATION}"
const val KOTLIN_SERIALIZABLE = "org.jetbrains.kotlinx:kotlinx-serialization-json:1.9.0"
}
object Plugins {
// We should upgrade this to 3.0.0, but it requires AGP 8.1+, which we are currently not supporting due to the ProjectTransformers
const val FIREBASE_CRASHLYTICS = "com.google.firebase:firebase-crashlytics-gradle:2.9.2"
const val ANDROID_GRADLE_TOOLS = "com.android.tools.build:gradle:${Versions.ANDROID_GRADLE_TOOLS}"
const val APOLLO = "com.apollographql.apollo:apollo-gradle-plugin:${Versions.APOLLO}"
const val KOTLIN = "org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.KOTLIN}"
const val GOOGLE_SERVICES = "com.google.gms:google-services:${Versions.GOOGLE_SERVICES}"
const val JACOCO_ANDROID = "com.dicedmelon.gradle:jacoco-android:${Versions.JACOCO_ANDROID}"
const val HILT = "com.google.dagger:hilt-android-gradle-plugin:${Versions.HILT}"
const val KSP = "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:${Versions.KSP}"
}