learning_ai_common_plat/packages/kotlin-platform-sdk/build.gradle.kts
saravanakumardb1 35487137e1 feat(kotlin-sdk): restore 13 deferred UI files — diagnostics, clients, Compose UI, passkeys, deep links
- Move 5 diagnostics files into src/main/.../diagnostics/ (DiagnosticsTypes, DiagnosticsClient, BreadcrumbTrail, DeviceStateCollector, NetworkInterceptor)
- Move 3 API clients (BLBroadcastClient, BLSurveyClient, BLFeedbackClient) — fix toMediaType, serializer pattern, coroutine imports
- Move 2 pure Kotlin files (DeepLinkRouter, BLPasskeyManager)
- Move 3 Compose UI files into src/main/.../ui/ (BLAuthUI, SurveyUI, BroadcastUI)
- Move 2 test files (DiagnosticsTypesTest, BLAuthClientSmartAuthTest) — fix JUnit5, Device JSON, serializer
- Add coil-compose dependency for AsyncImage
- Add appVersion/osVersion fields to BLPlatformConfig
- Fix OkHttp Headers iteration (name/value indexed access)
- Fix BroadcastUI string comparisons for status/style/priority
- Remove _deferred_ui/ directory — all files now compile in src/
- 57 tests total, 56 pass (1 pre-existing BLKillSwitchClientTest failure)
2026-03-19 18:25:35 -07:00

78 lines
2.4 KiB
Plaintext

plugins {
id("com.android.library") version "8.7.3"
id("org.jetbrains.kotlin.android") version "2.1.0"
id("org.jetbrains.kotlin.plugin.serialization") version "2.1.0"
id("org.jetbrains.kotlin.plugin.compose") version "2.1.0"
}
android {
namespace = "com.bytelyst.platform"
compileSdk = 35
defaultConfig {
minSdk = 26
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}
buildFeatures {
compose = true
}
}
group = "com.bytelyst.platform"
version = "0.1.0"
dependencies {
// HTTP
api("com.squareup.okhttp3:okhttp:4.12.0")
// Serialization
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.3")
// Coroutines
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0")
// Compose UI (for SurveyUI, InAppMessageUI, BroadcastUI)
implementation(platform("androidx.compose:compose-bom:2024.12.01"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.material3:material3")
implementation("androidx.compose.material:material-icons-extended")
implementation("androidx.compose.foundation:foundation")
// Image loading (for BroadcastUI AsyncImage)
implementation("io.coil-kt:coil-compose:2.7.0")
// Android
implementation("androidx.security:security-crypto:1.0.0")
implementation("androidx.biometric:biometric:1.1.0")
implementation("androidx.core:core-ktx:1.15.0")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
// Credential Manager (Passkeys)
implementation("androidx.credentials:credentials:1.5.0-beta01")
implementation("androidx.credentials:credentials-play-services-auth:1.5.0-beta01")
// Testing
testImplementation("org.junit.jupiter:junit-jupiter-api:5.11.4")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.11.4")
testImplementation("com.squareup.okhttp3:mockwebserver:4.12.0")
testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.9.0")
testImplementation("org.robolectric:robolectric:4.14.1")
}
tasks.withType<Test> {
useJUnitPlatform()
}