NTP-23190 | Shiv Natani | burn banner coroutine initialise fix (#14362)

This commit is contained in:
Shiv Natani
2024-12-27 17:33:17 +05:30
committed by GitHub
parent 833096a4fe
commit 34a14b65e9

View File

@@ -221,7 +221,6 @@ constructor(
}
viewModelScope.launch(Dispatchers.IO) { getNaviUpiConnectedAccounts() }
viewModelScope.safeLaunch { collectIsDiscountAlreadyApplied() }
viewModelScope.safeLaunch { getRewardInfoV2() }
}
private fun getPaymentMethodData() {
@@ -282,8 +281,12 @@ constructor(
)
updatePaymentAmount(methodDetails.amount?.value.orZero())
updateLottieConfig(methodDetails.loaderConfig)
_coinBurnDetails.update { methodDetails.coinDetails }
_coinEarnBannerDetails.update { methodDetails.bannerDetails?.coinRewards }
if (paymentSdkInitParams?.rewardsInfo?.isEnabled.orFalse()) {
getRewardInfoV2()
} else {
_coinBurnDetails.update { methodDetails.coinDetails }
_coinEarnBannerDetails.update { methodDetails.bannerDetails?.coinRewards }
}
methodDetails.availablePaymentInstruments?.let { processAvailablePaymentMethods(it) }
}
}
@@ -913,35 +916,27 @@ constructor(
}
private fun getRewardInfoV2() {
if (paymentSdkInitParams?.rewardsInfo?.isEnabled.orFalse()) {
naviPaymentAnalytics.onOfferExperienceBannerShown(
rewardsInfoV2 = paymentSdkInitParams?.rewardsInfo,
baseAttributes = paymentDataProvider.getAnalyticsParams()
naviPaymentAnalytics.onOfferExperienceBannerShown(
rewardsInfoV2 = paymentSdkInitParams?.rewardsInfo,
baseAttributes = paymentDataProvider.getAnalyticsParams()
)
_rewardsInfoV2.update {
RewardsInfoV2(
burnDetails = paymentSdkInitParams?.rewardsInfo?.burnDetails,
earnDetails = paymentSdkInitParams?.rewardsInfo?.earnDetails
)
_rewardsInfoV2.update {
RewardsInfoV2(
burnDetails = paymentSdkInitParams?.rewardsInfo?.burnDetails,
earnDetails = paymentSdkInitParams?.rewardsInfo?.earnDetails
)
}
paymentSdkInitParams?.rewardsInfo?.burnDetails?.isOfferApplied?.let { isOfferApplied ->
_showDiscountedAmount.update { isOfferApplied }
_isDiscountApplied.update { isOfferApplied }
_isDiscountPreApplied.update { isOfferApplied }
}
paymentDataProvider.updateDiscountAppliedStatus(
paymentSdkInitParams?.rewardsInfo?.burnDetails?.isOfferApplied.orFalse()
)
if (
paymentSdkInitParams?.rewardsInfo?.burnDetails?.isDiscountApplyLottieShown == true
) {
_discountApplyCount.update {
2
} // only need to show lottie once for the entire journey
paymentDataProvider.updateDiscountApplyLottieShown(
isDiscountApplyLottieShown = true
)
}
}
paymentSdkInitParams?.rewardsInfo?.burnDetails?.isOfferApplied?.let { isOfferApplied ->
_showDiscountedAmount.update { isOfferApplied }
_isDiscountApplied.update { isOfferApplied }
_isDiscountPreApplied.update { isOfferApplied }
}
paymentDataProvider.updateDiscountAppliedStatus(
paymentSdkInitParams?.rewardsInfo?.burnDetails?.isOfferApplied.orFalse()
)
if (paymentSdkInitParams?.rewardsInfo?.burnDetails?.isDiscountApplyLottieShown == true) {
_discountApplyCount.update { 2 } // only need to show lottie once for the entire journey
paymentDataProvider.updateDiscountApplyLottieShown(isDiscountApplyLottieShown = true)
}
}
}