buildscript { fun getExtOrDefault(name: String): Any? = if (rootProject.extra.has(name)) { rootProject.extra.get(name) } else { project.properties["NevisMobileAuthenticationSdkReact_$name"] } val kotlinVersion = getExtOrDefault("kotlinVersion") val agpVersion = getExtOrDefault("agpVersion") repositories { google() mavenCentral() } dependencies { classpath("com.android.tools.build:gradle:$agpVersion") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion") classpath("org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion") } } plugins { id("com.android.library") id("kotlin-android") id("com.facebook.react") } apply(plugin = "kotlinx-serialization") fun reactNativeArchitectures(): List { val value = rootProject.properties["reactNativeArchitectures"] as? String return value?.split(",") ?: listOf("armeabi-v7a", "x86", "x86_64", "arm64-v8a") } fun getExtOrDefault(name: String): Any? = if (rootProject.extra.has(name)) { rootProject.extra.get(name) } else { project.properties["NevisMobileAuthenticationSdkReact_$name"] } fun getExtOrIntegerDefault(name: String): Int = if (rootProject.extra.has(name)) { rootProject.extra.get(name).toString().toInt() } else { (project.properties["NevisMobileAuthenticationSdkReact_$name"] as String).toInt() } android { namespace = "ch.nevis.mobile.authentication.sdk.react" compileSdk = getExtOrIntegerDefault("compileSdkVersion") defaultConfig { minSdk = getExtOrIntegerDefault("minSdkVersion") targetSdk = getExtOrIntegerDefault("targetSdkVersion") } buildFeatures { buildConfig = true } buildTypes { release { isMinifyEnabled = false } } lint { disable.add("GradleCompatible") lintConfig = file("lint.xml") } } kotlin { jvmToolchain(17) } repositories { mavenCentral() google() } val kotlinVersion = getExtOrDefault("kotlinVersion") val kotlinxSerializationVersion = "1.5.1" dependencies { //noinspection GradleDynamicVersion debugCompileOnly("ch.nevis:nevis-mobile-authentication-sdk-android-debug:4.5.+") //noinspection GradleDynamicVersion releaseCompileOnly("ch.nevis:nevis-mobile-authentication-sdk-android:4.5.+") implementation("com.facebook.react:react-android") implementation("org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlinxSerializationVersion") }