aboutsummaryrefslogtreecommitdiff
path: root/buildSrc/src/main/kotlin/kau/Dependencies.kt
blob: a5002c7465306dfccc585f7a1610a844150b7aec (plain)
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
package kau

/**
 * Some common dependencies, backed by the supplied versions
 */
object Dependencies {
    @JvmStatic
    fun kau(version: String) = "ca.allanwang:kau:$version"

    @JvmStatic
    fun kau(type: String, version: String) = "ca.allanwang.kau:$type:$version"

    @JvmStatic
    fun kauAbout(version: String) = kau("about", version)

    @JvmStatic
    fun kauAdapter(version: String) = kau("adapter", version)

    @JvmStatic
    fun kauColorPicker(version: String) = kau("colorpicker", version)

    @JvmStatic
    fun kauCore(version: String) = kau("core", version)

    @JvmStatic
    fun kauCoreUi(version: String) = kau("core-ui", version)

    @JvmStatic
    fun kauFastAdapter(version: String) = kau("fastadapter", version)

    @JvmStatic
    fun kauFastAdapterViewBinding(version: String) = kau("fastadapter-viewbinding", version)

    @JvmStatic
    fun kauKprefActivity(version: String) = kau("kpref-activity", version)

    @JvmStatic
    fun kauMediaPicker(version: String) = kau("mediapicker", version)

    @JvmStatic
    fun kauSearchView(version: String) = kau("searchview", version)

    @JvmStatic
    fun kotlin(type: String) = "org.jetbrains.kotlin:kotlin-$type:${Versions.kotlin}"

    @JvmField
    val kotlin = kotlin("stdlib")
    @JvmField
    val kotlinTest = kotlin("test-junit")
    @JvmField
    val kotlinReflect = kotlin("reflect")

    @JvmField
    val hilt = "com.google.dagger:hilt-android:${Versions.hilt}"

    @JvmField
    val hiltCompiler = hilt("compiler")

    @JvmField
    val hiltTest = hilt("testing")

    @JvmStatic
    fun hilt(type: String) = "com.google.dagger:hilt-android-$type:${Versions.hilt}"

    @JvmStatic
    fun compose(type: String) = "androidx.ui:ui-$type:${Versions.compose}"

    const val junit = "junit:junit:${Versions.junit}"
    const val coroutines = "org.jetbrains.kotlinx:kotlinx-coroutines-android:${Versions.coroutines}"

    const val appcompat = "androidx.appcompat:appcompat:${Versions.appcompat}"
    const val recyclerView = "androidx.recyclerview:recyclerview:${Versions.recyclerView}"
    const val swipeRefreshLayout = "androidx.swiperefreshlayout:swiperefreshlayout:${Versions.swipeRefreshLayout}"
    const val cardView = "androidx.cardview:cardview:${Versions.cardView}"
    const val constraintLayout =
        "androidx.constraintlayout:constraintlayout:${Versions.constraintLayout}"
    const val googleMaterial = "com.google.android.material:material:${Versions.googleMaterial}"

    const val coreKtx = "androidx.core:core-ktx:${Versions.coreKtx}"

    const val iconics = "com.mikepenz:iconics-core:${Versions.iconics}"
    const val iconicsGoogle =
        "com.mikepenz:google-material-typeface:${Versions.iconicsGoogle}-kotlin@aar"
    const val iconicsMaterial =
        "com.mikepenz:material-design-iconic-typeface:${Versions.iconicsMaterial}-kotlin@aar"
    const val iconicsCommunity =
        "com.mikepenz:community-material-typeface:${Versions.iconicsCommunity}-kotlin@aar"

    const val aboutLibraries = "com.mikepenz:aboutlibraries:${Versions.aboutLibraries}"
    const val aboutLibrariesCore = "com.mikepenz:aboutlibraries-core:${Versions.aboutLibraries}"

    const val blurry = "jp.wasabeef:blurry:${Versions.blurry}"

    const val glide = "com.github.bumptech.glide:glide:${Versions.glide}"
    const val glideKapt = "com.github.bumptech.glide:compiler:${Versions.glide}"

    @JvmStatic
    fun materialDialog(type: String) =
        "com.afollestad.material-dialogs:$type:${Versions.materialDialog}"

    @JvmField
    val materialDialog = materialDialog("core")

    const val fastAdapter = "com.mikepenz:fastadapter:${Versions.fastAdapter}"
    @JvmStatic
    fun fastAdapter(type: String) =
        "com.mikepenz:fastadapter-extensions-$type:${Versions.fastAdapter}"

    const val bugsnag = "com.bugsnag:bugsnag-android:${Versions.bugsnag}"

    const val leakCanary = "com.squareup.leakcanary:leakcanary-android:${Versions.leakCanary}"

    @JvmStatic
    fun espresso(type: String) = "androidx.test.espresso:espresso-$type:${Versions.espresso}"

    @JvmField
    val espresso = espresso("core")

    const val testRunner = "androidx.test.ext:junit:${Versions.testRunner}"
    const val testRules = "androidx.test:rules:${Versions.testRules}"
}