NTP-60715 | changed launched effect for experiment (#16038)

This commit is contained in:
Shaurya Rehan
2025-05-02 21:07:39 +05:30
committed by GitHub
parent 2230b96a76
commit b1bed219d9
2 changed files with 17 additions and 11 deletions

View File

@@ -261,7 +261,7 @@ fun PayToContactsScreen(
}
val onAllowPermissionButtonClicked = {
payToContactsViewModel.isPermissionLaunchedFromAllowClick = true
payToContactsViewModel.onPermissionLaunchedFromAllowClick(isFromAllowClick = true)
readContactsPermissionsState.launchMultiplePermissionRequest()
}
@@ -304,27 +304,29 @@ fun PayToContactsScreen(
val isContactListNonEmpty by
payToContactsViewModel.isSavedContactListNonEmpty.collectAsStateWithLifecycle()
LaunchedEffect(readContactsPermissionsState.allPermissionsGranted) {
LaunchedEffect(key1 = readContactsPermissionsState.allPermissionsGranted) {
if (readContactsPermissionsState.allPermissionsGranted) {
payToContactsViewModel.updateContactPermissionStatus(isContactPermissionGranted = true)
payToContactsViewModel.fetchContacts()
} else {
payToContactsViewModel.updateContactPermissionStatus(false)
payToContactsViewModel.updateContactPermissionStatus(isContactPermissionGranted = false)
naviPayAnalytics.onSendToContactsLoaded(
naviPaySessionAttributes = payToContactsViewModel.getNaviPaySessionAttributes(),
isPermissionGranted = false,
isContactListEmpty = contactList.isEmpty(),
isFrequentOrderListEmpty = filteredFrequentOrdersList.isEmpty(),
)
}
}
if (
isAutoOpenContactPermissionExperimentEnabled &&
!payToContactsViewModel.isPermissionPopupSeenOnLanded
) {
payToContactsViewModel.onPermissionPopupSeenOnLanded()
payToContactsViewModel.isPermissionLaunchedFromAllowClick = false
readContactsPermissionsState.launchMultiplePermissionRequest()
}
LaunchedEffect(key1 = isAutoOpenContactPermissionExperimentEnabled) {
if (
isAutoOpenContactPermissionExperimentEnabled &&
!payToContactsViewModel.isPermissionPopupSeenOnLanded
) {
payToContactsViewModel.onPermissionPopupSeenOnLanded()
payToContactsViewModel.onPermissionLaunchedFromAllowClick(isFromAllowClick = false)
readContactsPermissionsState.launchMultiplePermissionRequest()
}
}

View File

@@ -410,6 +410,10 @@ constructor(
isPermissionPopupSeenOnLanded = true
}
fun onPermissionLaunchedFromAllowClick(isFromAllowClick: Boolean) {
isPermissionLaunchedFromAllowClick = isFromAllowClick
}
fun updatePermissionResult(permissionResult: NaviPermissionResult) {
_permissionResult.update { permissionResult }
}