Files
super-app/android/navi-pay/build.gradle
2025-05-20 09:46:47 +00:00

141 lines
5.4 KiB
Groovy

plugins {
alias libs.plugins.android.library
alias libs.plugins.hilt.android
alias libs.plugins.kotlin.android
alias libs.plugins.kotlin.compose
alias libs.plugins.kotlin.parcelize
alias libs.plugins.ksp
}
android {
namespace 'com.navi.pay'
compileSdk 35
defaultConfig {
minSdk 24
targetSdk 34
consumerProguardFiles "consumer-rules.pro"
testInstrumentationRunner "com.navi.pay.network.testsetup.HiltTestRunner"
}
buildFeatures {
compose true
dataBinding true
viewBinding true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
benchmark {
initWith release
matchingFallbacks = ['release']
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
kotlinOptions {
freeCompilerArgs += ["-Xstring-concat=inline"]
jvmTarget = '17'
}
lint {
disable 'NullSafeMutableLiveData'
}
flavorDimensions = ["app"]
productFlavors {
qa {
isDefault true
dimension "app"
buildConfigField 'String', 'NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT', formatString('LOCAL')
buildConfigField 'String', 'NAVIPAY_SMV_BASE_URL', formatString('https://api.sandbox.bureau.id/v2/auth/initiate')
buildConfigField 'String', 'NAVIPAY_SMV_CLIENT_ID', formatString('093f0fc3-bbe5-4944-a6c3-1bf410ae4237')
buildConfigField "String", "JUSPAY_AXIS_HANDLE", formatString('@axisbiz')
buildConfigField 'String', 'NAVIPAY_CONVERSATION_ID_GENERATOR_SALT', formatString('c9b5d45f-fc8c-44e9-8db7-04f09e7bf7db')
buildConfigField 'String', 'FIREBASE_CLOUD_PROJECT_NUMBER', formatString('679085041776')
}
prod {
dimension "app"
if (project.hasProperty('NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT')
&& project.hasProperty('NAVIPAY_SMV_BASE_URL')
&& project.hasProperty('NAVIPAY_SMV_CLIENT_ID')
&& project.hasProperty('NAVIPAY_CONVERSATION_ID_GENERATOR_SALT')) {
buildConfigField 'String', 'NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT', formatString("$NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT")
buildConfigField 'String', 'NAVIPAY_SMV_BASE_URL', formatString("$NAVIPAY_SMV_BASE_URL")
buildConfigField 'String', 'NAVIPAY_SMV_CLIENT_ID', formatString("$NAVIPAY_SMV_CLIENT_ID")
buildConfigField "String", "JUSPAY_AXIS_HANDLE", formatString('@naviaxis')
buildConfigField 'String', 'NAVIPAY_CONVERSATION_ID_GENERATOR_SALT', formatString("$NAVIPAY_CONVERSATION_ID_GENERATOR_SALT")
buildConfigField 'String', 'FIREBASE_CLOUD_PROJECT_NUMBER', formatString('1074736393094')
}
}
}
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
merges += "META-INF/LICENSE.md"
merges += "META-INF/LICENSE-notice.md"
}
}
}
static def formatString(String value) {
return '"' + value + '"'
}
dependencies {
implementation project(":navi-payments-shared")
implementation project(":navi-common")
implementation project(":navi-rr")
implementation project(":navi-money-manager")
implementation libs.accompanist.systemuicontroller
implementation libs.android.material
implementation libs.android.play.integrity
implementation libs.androidx.appcompat
implementation libs.androidx.camera.mlkit.vision
implementation libs.androidx.compose.animation
implementation libs.androidx.compose.runtime.livedata
implementation libs.androidx.constraintlayout
implementation libs.androidx.core.google.shortcuts
implementation libs.androidx.core.ktx
implementation libs.androidx.glanceAppWidget
implementation libs.androidx.hilt.work
implementation libs.androidx.lifecycle.viewmodel.ktx
implementation libs.androidx.paging.compose
implementation libs.androidx.room.paging
implementation libs.androidx.sqlite
implementation libs.androidx.window
implementation libs.androidx.work.runtimeKtx
implementation libs.dagger.hiltAndroid
implementation libs.kotlinx.serialization.json
implementation libs.mlkit.barcodeScanning
implementation libs.pierfrancescosoffritti.androidyoutubeplayer
implementation libs.raamcosta.composeDestinations.animation.core
implementation libs.zxing
qaImplementation project(path: ':npci-upi-cl', configuration: 'uat')
prodImplementation project(path: ':npci-upi-cl', configuration: 'prod')
androidTestImplementation libs.androidx.test.junit
testImplementation libs.dagger.hiltAndroidTesting
testImplementation libs.junit
testImplementation libs.kotlinx.coroutines.test
testImplementation libs.mockk
androidTestImplementation libs.androidx.test.runner
androidTestImplementation libs.dagger.hiltAndroidTesting
androidTestImplementation libs.kotlinx.coroutines.test
androidTestImplementation libs.mockk.android
androidTestImplementation libs.turbine
androidTestImplementation libs.androidx.work.testing
ksp libs.androidx.hilt.compiler
ksp libs.androidx.room.compiler
ksp libs.dagger.hiltCompiler
ksp libs.raamcosta.composeDestinations.ksp
}