plugins {
    id 'com.android.library'
    id 'kotlin-android'
    id 'kotlinx-serialization'
}

android {
    compileSdkVersion androidCompileSdkVersion

    defaultConfig {
        minSdkVersion androidMinimumSdkVersion
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation project(":libsignal")
    implementation project(":libsession-util")
    implementation project(":liblazysodium")
    implementation "net.java.dev.jna:jna:5.12.1@aar"
    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
    implementation "androidx.core:core-ktx:$coreVersion"
    implementation "androidx.appcompat:appcompat:$appcompatVersion"
    implementation "androidx.preference:preference-ktx:$preferenceVersion"
    implementation "com.google.android.material:material:$materialVersion"
    implementation "com.google.protobuf:protobuf-java:$protobufVersion"
    implementation "com.google.dagger:hilt-android:$daggerVersion"
    androidTestImplementation 'androidx.test.ext:junit:1.1.5'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
    implementation "com.github.bumptech.glide:glide:$glideVersion"
    implementation 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1'
    implementation 'com.annimon:stream:1.1.8'
    implementation 'com.makeramen:roundedimageview:2.1.0'
    implementation 'com.esotericsoftware:kryo:5.1.1'
    implementation "com.fasterxml.jackson.core:jackson-databind:$jacksonDatabindVersion"
    implementation "com.github.oxen-io.session-android-curve-25519:curve25519-java:$curve25519Version"
    implementation "com.squareup.okhttp3:okhttp:$okhttpVersion"
    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
    implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion"
    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion"
    implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlinxJsonVersion"
    implementation "nl.komponents.kovenant:kovenant:$kovenantVersion"
    testImplementation "junit:junit:$junitVersion"
    testImplementation 'org.assertj:assertj-core:3.11.1'
    testImplementation "org.mockito:mockito-inline:4.11.0"
    testImplementation "org.mockito.kotlin:mockito-kotlin:$mockitoKotlinVersion"
    testImplementation "androidx.test:core:$testCoreVersion"
    testImplementation "androidx.arch.core:core-testing:2.1.0"
    testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutinesVersion"
    testImplementation "org.conscrypt:conscrypt-openjdk-uber:2.0.0"
    implementation 'org.greenrobot:eventbus:3.0.0'
}