129 lines
3.9 KiB
Groovy
129 lines
3.9 KiB
Groovy
/*
|
|
* Copyright 2020 Shreyas Patil
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
plugins {
|
|
id 'com.google.devtools.ksp'
|
|
}
|
|
apply plugin: 'com.android.library'
|
|
apply plugin: 'kotlin-android'
|
|
apply plugin: 'kotlin-kapt'
|
|
apply plugin: 'dagger.hilt.android.plugin'
|
|
apply plugin: 'kover'
|
|
|
|
android {
|
|
compileSdkVersion ProjectConfig.compileSdkVersion
|
|
|
|
defaultConfig {
|
|
minSdkVersion ProjectConfig.minSdkVersion
|
|
targetSdkVersion ProjectConfig.targetSdkVersion
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_11
|
|
targetCompatibility JavaVersion.VERSION_11
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = "11"
|
|
}
|
|
|
|
// Include sources generated by Mutekt
|
|
libraryVariants.all { variant ->
|
|
kotlin.sourceSets {
|
|
def name = variant.name
|
|
getByName(name) {
|
|
kotlin.srcDir("build/generated/ksp/$name/kotlin")
|
|
}
|
|
}
|
|
}
|
|
|
|
testOptions {
|
|
unitTests.returnDefaultValues = true
|
|
unitTests.all {
|
|
useJUnitPlatform()
|
|
reports {
|
|
junitXml.enabled = true
|
|
html.enabled = true
|
|
}
|
|
}
|
|
}
|
|
lint {
|
|
abortOnError false
|
|
}
|
|
namespace 'dev.shreyaspatil.noty'
|
|
}
|
|
|
|
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
|
|
kotlinOptions {
|
|
jvmTarget = "11"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
// Core Module
|
|
implementation project(":core")
|
|
|
|
// Repository Module
|
|
api project(":repository")
|
|
|
|
// Android
|
|
implementation "androidx.core:core-ktx:$coreKtxVersion"
|
|
implementation "androidx.legacy:legacy-support-v4:$legacySupportVersion"
|
|
|
|
// Material Design
|
|
implementation "com.google.android.material:material:$materialDesignVersion"
|
|
|
|
// Lifecycle
|
|
api "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycleVersion"
|
|
api "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion"
|
|
api "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion"
|
|
|
|
// WorkManager
|
|
implementation "androidx.work:work-runtime-ktx:$workmanagerVersion"
|
|
implementation "androidx.work:work-multiprocess:$workmanagerVersion"
|
|
|
|
// Jetpack DataStore
|
|
implementation "androidx.datastore:datastore-preferences:$dataStoreVersion"
|
|
|
|
// JetPack Security
|
|
implementation "androidx.security:security-crypto:$securityCryptoVersion"
|
|
|
|
// Hilt + JetPack
|
|
api "androidx.hilt:hilt-work:$jetpackHiltVersion"
|
|
kapt "androidx.hilt:hilt-compiler:$jetpackHiltVersion"
|
|
|
|
// Dagger + Hilt
|
|
implementation "com.google.dagger:hilt-android:$daggerHiltVersion"
|
|
kapt "com.google.dagger:hilt-android-compiler:$daggerHiltVersion"
|
|
|
|
// Mutekt
|
|
implementation("dev.shreyaspatil.mutekt:mutekt-core:$mutektVersion")
|
|
ksp("dev.shreyaspatil.mutekt:mutekt-codegen:$mutektVersion")
|
|
|
|
// Compose runtime - For @Immutable annotation
|
|
implementation platform("androidx.compose:compose-bom:$composeBomVersion")
|
|
testImplementation platform("androidx.compose:compose-bom:$composeBomVersion")
|
|
implementation "androidx.compose.runtime:runtime"
|
|
|
|
// Testing
|
|
testImplementation "junit:junit:$jUnitVersion"
|
|
testImplementation "io.kotest:kotest-runner-junit5:$kotestVersion"
|
|
testImplementation "io.kotest:kotest-assertions-core:$kotestVersion"
|
|
testImplementation "io.kotest:kotest-property:$kotestVersion"
|
|
testImplementation "io.mockk:mockk:$mockkVersion"
|
|
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutinesVersion"
|
|
}
|