diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/analytics/NaviPayAnalytics.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/analytics/NaviPayAnalytics.kt index d8c3d0fd43..84d44f1882 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/analytics/NaviPayAnalytics.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/analytics/NaviPayAnalytics.kt @@ -5540,8 +5540,11 @@ class NaviPayAnalytics private constructor() { } inner class NaviPayLinkUpiNumber { - fun onLinkUpiNumberLanded() { - NaviTrackEvent.trackEventOnClickStream("NaviPay_PortedOut_Link2Navi_Landed") + fun onLinkUpiNumberLanded(source: String) { + NaviTrackEvent.trackEventOnClickStream( + "NaviPay_PortedOut_Link2Navi_Landed", + mapOf("source" to source) + ) } fun onUserOnboarded(selectedAccountVpa: String, selectedBankAccount: String) { diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/link/viewmodel/LinkUpiNumberViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/link/viewmodel/LinkUpiNumberViewModel.kt index b09848eaa3..4f09a8392d 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/link/viewmodel/LinkUpiNumberViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/upinumber/link/viewmodel/LinkUpiNumberViewModel.kt @@ -7,6 +7,7 @@ package com.navi.pay.management.upinumber.link.viewmodel +import androidx.lifecycle.SavedStateHandle import androidx.lifecycle.viewModelScope import com.navi.base.cache.datastore.DataStoreHelper import com.navi.base.model.CtaData @@ -29,6 +30,7 @@ import com.navi.pay.common.viewmodel.NaviPayBaseVM import com.navi.pay.entry.NaviPayActivityDataProvider import com.navi.pay.management.common.sendmoney.model.view.BankAccountsState import com.navi.pay.management.upinumber.link.model.LinkUpiNumberScreenBottomSheetStateHolder +import com.navi.pay.management.upinumber.link.model.LinkUpiNumberScreenSource import com.navi.pay.management.upinumber.list.model.network.CreateNewUpiNumberRequest import com.navi.pay.management.upinumber.list.repository.UpiNumberRepository import com.navi.pay.onboarding.account.add.model.view.AccountType @@ -65,7 +67,8 @@ constructor( private val naviPayNetworkConnectivity: NaviPayNetworkConnectivity, private val naviPayActivityDataProvider: NaviPayActivityDataProvider, private val checkUpiNumberAvailabilityUseCase: CheckUpiNumberAvailabilityUseCase, - private val refreshUpiNumbersUseCase: RefreshUpiNumbersUseCase + private val refreshUpiNumbersUseCase: RefreshUpiNumbersUseCase, + savedStateHandle: SavedStateHandle, ) : NaviPayBaseVM() { private val naviPayAnalytics: NaviPayAnalytics.NaviPayLinkUpiNumber = @@ -117,6 +120,9 @@ constructor( private val _triggerDismissBottomSheet = MutableSharedFlow() val triggerDismissBottomSheet = _triggerDismissBottomSheet.asSharedFlow() + private val source: LinkUpiNumberScreenSource = + savedStateHandle["source"] ?: LinkUpiNumberScreenSource.PnOrIan + val isUpiNumberExperimentEnabled = PreferenceManager.getBooleanPreference(key = LITMUS_EXPERIMENT_NAVIPAY_UPI_NUMBER) @@ -179,7 +185,7 @@ constructor( } private fun onUserLandedEvent() { - naviPayAnalytics.onLinkUpiNumberLanded() + naviPayAnalytics.onLinkUpiNumberLanded(source = source.name) } private fun onUserOnboarded() {