plugins { alias(libs.plugins.android.library) alias(libs.plugins.jetbrains.kotlin.android) alias(libs.plugins.compose.compiler) } android { namespace = "com.suno.android.common_ui" compileSdk = libs.versions.compileSdk.get().toInt() defaultConfig { minSdk = libs.versions.minSdk.get().toInt() testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles("consumer-rules.pro") } buildTypes { release { proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro", ) } } compileOptions { sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) } kotlinOptions { jvmTarget = libs.versions.java.get() freeCompilerArgs += "-opt-in=androidx.compose.material3.ExperimentalMaterial3Api" freeCompilerArgs += "-opt-in=androidx.compose.foundation.ExperimentalFoundationApi" } buildFeatures { buildConfig = true compose = true } testOptions { unitTests { isReturnDefaultValues = true } } } dependencies { implementation(project(":common-res")) implementation(project(":common-core-utils")) implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) api(libs.androidx.compose.ui) api(libs.androidx.compose.ui.graphics) api(libs.androidx.compose.ui.tooling.preview) api(libs.androidx.compose.material3) api(libs.androidx.compose.material3.adaptive) api(libs.androidx.window) api(libs.androidx.activity.compose) api(libs.androidx.navigation.compose) api(libs.androidx.compose.constraint.layout) api(libs.androidx.graphics.shapes) api(libs.accompanist.adaptive) api(libs.accompanist.drawablepainter) api(libs.accompanist.permissions) implementation(libs.androidx.animation) implementation(libs.androidx.foundation) implementation(libs.kotlinx.collections.immutable) // glassy blur effect api(libs.haze) api(libs.haze.materials) api(platform(libs.androidx.compose.bom)) implementation(libs.androidx.media3.common) implementation(libs.androidx.media3.exoplayer) implementation(libs.androidx.media3.session) api(libs.androidx.media3.ui.compose) // Cast and MediaRouter dependencies implementation(libs.play.services.cast.framework) implementation(libs.androidx.mediarouter) api(libs.coil.network) api(libs.coil.compose) api(libs.coil.svg) implementation(libs.androidx.browser) api(libs.androidx.palette.ktx) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) debugImplementation(libs.androidx.compose.ui.tooling) }