-
Notifications
You must be signed in to change notification settings - Fork 48
/
Copy pathbuild.gradle.kts
123 lines (102 loc) · 3.4 KB
/
build.gradle.kts
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
// Manifest version information!
plugins {
id(BuildPlugins.ANDROID_APPLICATION_PLUGIN)
id(BuildPlugins.KOTLIN_ANDROID_PLUGIN)
id(BuildPlugins.KOTLIN_PARCELABLE_PLUGIN)
id(BuildPlugins.KOTLIN_KAPT)
id(BuildPlugins.DAGGER_HILT)
id("org.jlleitschuh.gradle.ktlint")
}
subprojects {
apply {
from("variants.gradle.kts")
}
}
// def preDexEnabled = "true" == System.getProperty("pre-dex", "true")
android {
compileSdk = (ProjectProperties.COMPILE_SDK)
defaultConfig {
applicationId = (ProjectProperties.APPLICATION_ID)
minSdk = (ProjectProperties.MIN_SDK)
targetSdk = (ProjectProperties.TARGET_SDK)
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "com.mutualmobile.base.TextPraxisApplication"
vectorDrawables.useSupportLibrary = true
}
buildFeatures {
dataBinding = true
}
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = Lib.Android.COMPOSE_COMPILER_VERSION
}
packagingOptions {
resources.excludes.add("META-INF/LICENSE.txt")
resources.excludes.add("META-INF/NOTICE.txt")
resources.excludes.add("LICENSE.txt")
resources.excludes.add( "/META-INF/{AL2.0,LGPL2.1}")
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
}
// Required for annotation processing plugins like Dagger
kapt {
generateStubs = true
correctErrorTypes = true
}
dependencies {
implementation(project(":ui-jokes"))
implementation(project(":ui-githubrepos"))
implementation(project(":navigator"))
implementation(project(":data"))
implementation(project(":domain"))
implementation(project(":common"))
implementation(project(":commonui"))
/* Android Designing and layout */
implementation(Lib.Android.COMPOSE_LIVEDATA)
implementation(Lib.Android.COMPOSE_NAVIGATION)
implementation(Lib.Kotlin.KT_STD)
implementation(Lib.Android.MATERIAL_DESIGN)
implementation(Lib.Android.CONSTRAINT_LAYOUT_COMPOSE)
implementation(Lib.Android.ACCOMPANIST_INSETS)
implementation(Lib.Android.APP_COMPAT)
implementation(Lib.Android.NAVIGATION_FRAGMENT)
implementation(Lib.Kotlin.KTX_CORE)
/* SplashScreen */
implementation(Lib.Android.SPLASH_SCREEN_API)
/*DI*/
implementation(Lib.Di.hilt)
implementation(Lib.Di.hiltNavigationCompose)
implementation(Lib.Di.viewmodel)
kapt(Lib.Di.hiltCompiler)
kapt(Lib.Di.hiltAndroidCompiler)
/* Logger */
implementation(Lib.Logger.TIMBER)
/* Async */
implementation(Lib.Async.COROUTINES)
implementation(Lib.Async.COROUTINES_ANDROID)
/*Testing*/
testImplementation(TestLib.JUNIT)
testImplementation(TestLib.CORE_TEST)
testImplementation(TestLib.ANDROID_JUNIT)
testImplementation(TestLib.ARCH_CORE)
testImplementation(TestLib.MOCK_WEB_SERVER)
testImplementation(TestLib.ROBO_ELECTRIC)
testImplementation(TestLib.COROUTINES)
testImplementation(TestLib.MOCKK)
androidTestImplementation(TestLib.MOCKK)
androidTestImplementation(TestLib.MOCK_WEB_SERVER)
androidTestImplementation("androidx.compose.ui:ui-test-junit4:${Lib.Android.COMPOSE_VERSION}")
debugImplementation("androidx.compose.ui:ui-test-manifest:${Lib.Android.COMPOSE_VERSION}")
androidTestImplementation("com.google.dagger:hilt-android-testing:2.38.1")
kaptAndroidTest("com.google.dagger:hilt-android-compiler:2.38.1")
androidTestImplementation("androidx.test:runner:1.4.0")
}