plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.compose) alias(libs.plugins.ksp) } android { namespace = "com.approagency.pharmacy" compileSdk { version = release(36) } defaultConfig { applicationId = "com.approagency.pharmacy" minSdk = 24 targetSdk = 36 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" // ---- Myket in-app billing ---- val marketApplicationId = "ir.mservices.market" val marketBindAddress = "ir.mservices.market.InAppBillingService.BIND" manifestPlaceholders["marketApplicationId"] = marketApplicationId manifestPlaceholders["marketBindAddress"] = marketBindAddress manifestPlaceholders["marketPermission"] = "$marketApplicationId.BILLING" buildConfigField( "String", "IAB_PUBLIC_KEY", "\"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCDSaqJLDPxQZBZD/LGRsZOJ8m1hLVFedg/tnqebQusikVTNYSEjmP86i1TtXu/2b4E8hpkrqyNlNVvEg1lrHCpnxCh0tOubYiG6X/GEQtgOtIRuBzO3HM/r9w1HQm4gZOJc6DJO46Sxp3YbryJujp+pG8p7bU6zHp4zcqydCJ14QIDAQAB\"" ) } buildTypes { release { isMinifyEnabled = true proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } buildFeatures { compose = true buildConfig = true } } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.lifecycle.runtime.ktx) implementation(libs.androidx.activity.compose) implementation(platform(libs.androidx.compose.bom)) implementation(libs.androidx.compose.ui) implementation(libs.androidx.compose.ui.graphics) implementation(libs.androidx.compose.ui.tooling.preview) implementation(libs.androidx.compose.material3) implementation(libs.androidx.material3) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) androidTestImplementation(platform(libs.androidx.compose.bom)) androidTestImplementation(libs.androidx.compose.ui.test.junit4) debugImplementation(libs.androidx.compose.ui.tooling) debugImplementation(libs.androidx.compose.ui.test.manifest) implementation(libs.androidx.compose.material.icons.core) // ViewModel implementation(libs.androidx.lifecycle.viewmodel.compose) implementation(libs.androidx.lifecycle.viewmodel.ktx) // Networking implementation(libs.retrofit) implementation(libs.retrofit.gson) implementation(libs.okhttp) implementation(libs.okhttp.logging) implementation(libs.gson) // Image loading implementation(libs.coil.compose) // Location services implementation(libs.location.services) // SMS User Consent API (OTP auto-fill) implementation(libs.play.services.auth.api.phone) // Myket in-app billing implementation("com.github.myketstore:myket-billing-client:1.6") // Koin for DI implementation(libs.koin.android) implementation(libs.koin.androidx.compose.v410) //navigation implementation(libs.androidx.navigation.compose) // Room Database implementation(libs.androidx.room.runtime) implementation(libs.androidx.room.ktx) ksp(libs.androidx.room.compiler) //crawl implementation(libs.jsoup) implementation(libs.retrofit.scalars) implementation(libs.androidx.compose.material.icons.extended) }