group = "com.tokilabs.mattermost_push_plugin" version = "1.0-SNAPSHOT" buildscript { val kotlinVersion = "2.2.20" repositories { google() mavenCentral() } dependencies { classpath("com.android.tools.build:gradle:8.11.1") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin-api:$kotlinVersion") } } allprojects { repositories { google() mavenCentral() } } plugins { id("com.android.library") id("kotlin-android") id("kotlin-kapt") } android { namespace = "com.tokilabs.mattermost_push_plugin" compileSdk = 36 compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = JavaVersion.VERSION_17.toString() } sourceSets { getByName("main") { java.srcDirs("src/main/kotlin", "src/main/java") } getByName("test") { java.srcDirs("src/test/kotlin") } } defaultConfig { minSdk = 24 } testOptions { unitTests { isIncludeAndroidResources = true all { it.useJUnitPlatform() it.outputs.upToDateWhen { false } it.testLogging { events("passed", "skipped", "failed", "standardOut", "standardError") showStandardStreams = true } } } } } dependencies { implementation(platform("com.google.firebase:firebase-bom:33.7.0")) implementation("com.google.firebase:firebase-messaging") implementation("io.jsonwebtoken:jjwt-api:0.12.5") runtimeOnly("io.jsonwebtoken:jjwt-impl:0.12.5") runtimeOnly("io.jsonwebtoken:jjwt-orgjson:0.12.5") { exclude(group = "org.json", module = "json") } implementation("com.squareup.okhttp3:okhttp:4.12.0") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3") implementation("androidx.room:room-runtime:2.7.0-rc01") implementation("androidx.room:room-ktx:2.7.0-rc01") kapt("androidx.room:room-compiler:2.7.0-rc01") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") }