import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.androidLibrary) alias(libs.plugins.jetbrainsKotlinAndroid) alias(libs.plugins.parcelize) } android { namespace = 'com.vitorpamplona.quartz' compileSdk = libs.versions.android.compileSdk.get().toInteger() defaultConfig { minSdk = libs.versions.android.minSdk.get().toInteger() targetSdk = libs.versions.android.targetSdk.get().toInteger() testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" } buildTypes { release { minifyEnabled = true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } create("benchmark") { initWith(getByName("release")) signingConfig = signingConfigs.debug } } compileOptions { sourceCompatibility JavaVersion.VERSION_21 targetCompatibility JavaVersion.VERSION_21 } packagingOptions { resources { excludes += ['**/libscrypt.dylib'] } } } kotlin { compilerOptions { jvmTarget = JvmTarget.JVM_21 freeCompilerArgs.add("-Xstring-concat=inline") } } dependencies { implementation libs.androidx.core.ktx implementation platform(libs.androidx.compose.bom) // @Immutable and @Stable implementation libs.androidx.runtime.runtime // Bitcoin secp256k1 bindings to Android api libs.secp256k1.kmp.jni.android // LibSodium for ChaCha encryption (NIP-44) // Wait for @aar support in version catalogs // implementation 'com.goterl:lazysodium-android:5.2.0@aar' // implementation 'net.java.dev.jna:jna:5.17.0@aar' implementation variantOf(libs.lazysodium.android) { artifactType("aar") } implementation variantOf(libs.jna) { artifactType("aar") } // Performant Parser of JSONs into Events api libs.jackson.module.kotlin // immutable collections to avoid recomposition api libs.kotlinx.collections.immutable // Parses URLs from Text: api libs.url.detector // Normalizes URLs api libs.rfc3986.normalizer // Websockets API implementation libs.okhttp testImplementation libs.junit testImplementation libs.secp256k1.kmp.jni.jvm androidTestImplementation platform(libs.androidx.compose.bom) androidTestImplementation libs.androidx.junit androidTestImplementation libs.androidx.espresso.core }