NTP-68381 | Mehul | email deeplink handling (#16552)

This commit is contained in:
Mehul Garg
2025-06-17 11:52:23 +05:30
committed by GitHub
parent 21cf5d38f9
commit 2a54d5f015

View File

@@ -823,12 +823,72 @@ fun BillCategoryScreenRenderer(
viewModel.startOriginBillDetectionFlow.collectLatest { startOriginBillDetectionFlow ->
viewModel.resetOriginBillDetectionReplayCache()
if (startOriginBillDetectionFlow) {
if (fetchSmsPermissionState.allPermissionsGranted) {
viewModel.showLoadingBottomSheet()
openSheet()
viewModel.startDetectingBills()
} else {
requestPermission()
when (currentOriginSessionAttributes.originWidgetStatus) {
OriginWidgetStatus.SMS_FTU -> {
if (fetchSmsPermissionState.allPermissionsGranted) {
viewModel.showLoadingBottomSheet()
openSheet()
viewModel.startDetectingBills()
} else {
requestPermission()
}
}
OriginWidgetStatus.EMAIL_FTU -> {
naviBbpsActivity.gmailAccessSignInManager.signIn(
launcher = launcher,
callback = { gmailAccessState ->
when (gmailAccessState) {
is GmailAccessState.NotInitialized -> {
Toast.makeText(
naviBbpsActivity,
R.string.bbps_email_verification_failed,
Toast.LENGTH_SHORT,
)
.show()
naviBbpsAnalytics.onGmailAccessSignInFailed(
source = source,
sessionAttribute =
viewModel.getNaviBbpsSessionAttributes(),
initialSource = initialSource,
)
}
is GmailAccessState.ServerCredentialsMissing -> {
Toast.makeText(
naviBbpsActivity,
R.string.bbps_email_verification_failed,
Toast.LENGTH_SHORT,
)
.show()
naviBbpsAnalytics.onGmailAccessSignInFailed(
source = source,
sessionAttribute =
viewModel.getNaviBbpsSessionAttributes(),
initialSource = initialSource,
)
}
else -> {
// no-op
}
}
},
)
}
OriginWidgetStatus.SMS_RTU,
OriginWidgetStatus.EMAIL_RTU -> {
viewModel.handleOriginRedirectionForRtu(
detectedBills = currentOriginSessionAttributes.detectedBills
)
}
else -> {
// no-op
}
}
}
}