From 176f13b91db37685fa31a6491ce7b9345c86e79d Mon Sep 17 00:00:00 2001 From: Aditya Narayan Malik Date: Mon, 9 Sep 2024 14:15:40 +0530 Subject: [PATCH] TP-82209 | Narayan | Used constant for default resource id (#12416) --- .../com/navi/pay/common/model/view/NaviPayText.kt | 3 ++- .../com/navi/pay/common/ui/NaviPayCommonView.kt | 15 ++++++++------- .../transactionlist/ui/TransactionListView.kt | 3 ++- .../model/view/TransactionTagHolder.kt | 6 ++++-- .../ui/TransactionHistoryBottomSheetContent.kt | 9 +++++---- .../viewmodel/TransactionHistoryViewModel.kt | 4 +++- .../navi/pay/permission/utils/PermissionUtils.kt | 7 ++++--- .../list/ui/OrderHistoryBottomSheetContent.kt | 9 +++++---- .../pay/tstore/list/ui/OrderHistoryItemView.kt | 3 ++- .../list/viewmodel/OrderHistoryViewModel.kt | 4 +++- 10 files changed, 38 insertions(+), 25 deletions(-) diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/common/model/view/NaviPayText.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/common/model/view/NaviPayText.kt index 3f1d0a4ec5..67af8aa8f0 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/common/model/view/NaviPayText.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/common/model/view/NaviPayText.kt @@ -15,9 +15,10 @@ import com.navi.design.font.FontWeightEnum import com.navi.design.theme.FF191919 import com.navi.design.theme.getFontWeight import com.navi.design.theme.ttComposeFontFamily +import com.navi.pay.utils.RESOURCE_DEFAULT_ID data class NaviPayText( - val textId: Int = -1, + val textId: Int = RESOURCE_DEFAULT_ID, val fontFamily: FontFamily = ttComposeFontFamily, val fontWeight: FontWeight = getFontWeight(FontWeightEnum.TT_REGULAR), val color: Color = FF191919, diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/common/ui/NaviPayCommonView.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/common/ui/NaviPayCommonView.kt index e730a6f134..039d1c48e5 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/common/ui/NaviPayCommonView.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/common/ui/NaviPayCommonView.kt @@ -167,7 +167,7 @@ fun NaviPayHeader( title: String, navigationIcon: Int = CommonR.drawable.ic_arrow_left_black_v2, onNavigationIconClick: () -> Unit, - actionIconId: Int = -1, + actionIconId: Int = RESOURCE_DEFAULT_ID, actionIconText: String? = null, onActionClick: (() -> Unit)? = null, modifier: Modifier, @@ -723,7 +723,7 @@ fun BottomSheetContentWithIconHeaderPrimarySecondaryButtonCtaLoader( fun RenderAPIResultScreen( lottieFileName: String, titleResId: Int, - descriptionId: Int = -1, + descriptionId: Int = RESOURCE_DEFAULT_ID, showLottieInfiniteTimes: Boolean = false, onAnimationEnd: (() -> Unit)? = null, primaryButtonTextId: Int? = null, @@ -736,15 +736,16 @@ fun RenderAPIResultScreen( RenderAPIResultScreen( lottieFileName = lottieFileName, titleText = stringResource(id = titleResId), - descriptionText = if (descriptionId != -1) stringResource(id = descriptionId) else "", + descriptionText = + if (descriptionId != RESOURCE_DEFAULT_ID) stringResource(id = descriptionId) else "", onAnimationEnd = onAnimationEnd, showLottieInfiniteTimes = showLottieInfiniteTimes, primaryButtonText = - if (primaryButtonTextId != null && primaryButtonTextId != -1) + if (primaryButtonTextId != null && primaryButtonTextId != RESOURCE_DEFAULT_ID) stringResource(id = primaryButtonTextId) else null, secondaryButtonText = - if (secondaryButtonTextId != null && secondaryButtonTextId != -1) + if (secondaryButtonTextId != null && secondaryButtonTextId != RESOURCE_DEFAULT_ID) stringResource(id = secondaryButtonTextId) else null, onPrimaryButtonClicked = onPrimaryButtonClicked, @@ -2571,7 +2572,7 @@ fun ImageTitleDescriptionShimmerView() { @Composable fun BottomSheetContentWithVerticalPrimarySecondaryButton( - iconId: Int = -1, + iconId: Int = RESOURCE_DEFAULT_ID, headerText: String, descriptionText: String, header: @Composable () -> Unit = { @@ -2608,7 +2609,7 @@ fun BottomSheetContentWithVerticalPrimarySecondaryButton( .background(color = NaviPayColor.bgDefault) .padding(start = 16.dp, end = 16.dp, top = 16.dp, bottom = 32.dp) ) { - if (iconId != -1) { + if (iconId != RESOURCE_DEFAULT_ID) { Row( modifier = Modifier.fillMaxWidth(), verticalAlignment = Alignment.CenterVertically diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/transactionlist/ui/TransactionListView.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/transactionlist/ui/TransactionListView.kt index 97ec33ed59..5a12d5bbb9 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/transactionlist/ui/TransactionListView.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/common/transactionlist/ui/TransactionListView.kt @@ -46,6 +46,7 @@ import com.navi.pay.management.common.transactionlist.util.getStatusImageForTran import com.navi.pay.management.common.transactionlist.util.getStatusTextColorForTransactionHistoryList import com.navi.pay.management.common.transactionlist.util.getStatusTextIdForTransactionHistoryList import com.navi.pay.management.transactionhistory.model.view.TransactionHistoryEntity +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.RUPEE_SYMBOL import com.navi.pay.utils.clickableDebounce import com.navi.pay.utils.initials @@ -176,7 +177,7 @@ fun RenderTransactionItemView( Spacer(modifier = Modifier.width(8.dp)) - if (statusImageForTransactionHistoryListId != -1) { + if (statusImageForTransactionHistoryListId != RESOURCE_DEFAULT_ID) { Image( painter = painterResource(id = statusImageForTransactionHistoryListId), contentDescription = "", diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/model/view/TransactionTagHolder.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/model/view/TransactionTagHolder.kt index 5742a3f401..442993e94d 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/model/view/TransactionTagHolder.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/model/view/TransactionTagHolder.kt @@ -1,15 +1,17 @@ /* * - * * Copyright © 2023 by Navi Technologies Limited + * * Copyright © 2023-2024 by Navi Technologies Limited * * All rights reserved. Strictly confidential * */ package com.navi.pay.management.transactionhistory.model.view +import com.navi.pay.utils.RESOURCE_DEFAULT_ID + data class TransactionTagHolder( val id: Int, // This should be in index order of the list - val displayTextId: Int = -1, + val displayTextId: Int = RESOURCE_DEFAULT_ID, val displayText: String = "", val dbSearchTag: List, val isSelected: Boolean, diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryBottomSheetContent.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryBottomSheetContent.kt index 511c5e9417..6b28335ab0 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryBottomSheetContent.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryBottomSheetContent.kt @@ -35,6 +35,7 @@ import com.navi.pay.common.theme.color.NaviPayColor import com.navi.pay.common.ui.PrimaryAndSecondaryButton import com.navi.pay.management.transactionhistory.model.view.TransactionTagHolder import com.navi.pay.management.transactionhistory.viewmodel.TransactionHistoryScreenBottomSheetUIState +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.noRippleClickableWithDebounce @Composable @@ -106,7 +107,7 @@ private fun RenderTransactionHistoryBottomSheetCategoriesScreen( categoryTagsHolder.forEach { categoryTagHolder -> CheckBoxItem( text = - if (categoryTagHolder.displayTextId != -1) + if (categoryTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = categoryTagHolder.displayTextId) else categoryTagHolder.displayText, isChecked = categoryTagHolder.isSelected, @@ -166,7 +167,7 @@ private fun RenderTransactionHistoryBottomSheetFiltersScreen( paymentModeTagsHolder.forEach { paymentModeTagHolder -> CheckBoxItem( text = - if (paymentModeTagHolder.displayTextId != -1) + if (paymentModeTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = paymentModeTagHolder.displayTextId) else paymentModeTagHolder.displayText, isChecked = paymentModeTagHolder.isSelected, @@ -195,7 +196,7 @@ private fun RenderTransactionHistoryBottomSheetFiltersScreen( transactionStatusTagsHolder.forEach { transactionStatusTagHolder -> CheckBoxItem( text = - if (transactionStatusTagHolder.displayTextId != -1) + if (transactionStatusTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = transactionStatusTagHolder.displayTextId) else transactionStatusTagHolder.displayText, isChecked = transactionStatusTagHolder.isSelected, @@ -245,7 +246,7 @@ private fun RenderTransactionHistoryBottomSheetMonthsScreen( monthTagsHolder.forEach { monthTagHolder -> CheckBoxItem( text = - if (monthTagHolder.displayTextId != -1) + if (monthTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = monthTagHolder.displayTextId) else monthTagHolder.displayText, isChecked = monthTagHolder.isSelected, diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/viewmodel/TransactionHistoryViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/viewmodel/TransactionHistoryViewModel.kt index 4b967495df..bf14e1ebdb 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/viewmodel/TransactionHistoryViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/viewmodel/TransactionHistoryViewModel.kt @@ -44,6 +44,7 @@ import com.navi.pay.management.transactionhistory.model.view.TransactionTagHolde import com.navi.pay.management.transactionhistory.repository.TransactionRepository import com.navi.pay.utils.ConfigKey import com.navi.pay.utils.DATE_TIME_FORMAT_MONTH_YEAR_WITH_COMMA_SEPARATOR +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.parallelMap import dagger.hilt.android.lifecycle.HiltViewModel import javax.inject.Inject @@ -497,7 +498,8 @@ constructor( return tagHolders .filter { it.isActive } .map { - if (it.displayTextId != -1) resourceProvider.getString(resId = it.displayTextId) + if (it.displayTextId != RESOURCE_DEFAULT_ID) + resourceProvider.getString(resId = it.displayTextId) else it.displayText } } diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/permission/utils/PermissionUtils.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/permission/utils/PermissionUtils.kt index 02f3c533e7..372c4e9730 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/permission/utils/PermissionUtils.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/permission/utils/PermissionUtils.kt @@ -24,6 +24,7 @@ import com.navi.pay.permission.utils.PermissionKeys.FIRST_TIME_SCREEN_PERMISSION import com.navi.pay.permission.utils.PermissionKeys.NON_FIRST_TIME_SCREEN_PERMISSION_KEY import com.navi.pay.permission.utils.PermissionKeys.NOTIFICATION_PERMISSION_KEY import com.navi.pay.permission.utils.PermissionKeys.QR_SCAN_PERMISSION_KEY +import com.navi.pay.utils.RESOURCE_DEFAULT_ID object PermissionUtils { val permissionDataMap = @@ -144,9 +145,9 @@ object PermissionKeyData { val NOTIFICATION_PERMISSION_DATA = listOf( PermissionData( - iconId = -1, - titleId = -1, - descriptionId = -1, + iconId = RESOURCE_DEFAULT_ID, + titleId = RESOURCE_DEFAULT_ID, + descriptionId = RESOURCE_DEFAULT_ID, qualifierList = listOf(Manifest.permission.POST_NOTIFICATIONS) ) ) diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryBottomSheetContent.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryBottomSheetContent.kt index 8165e1084b..77a07dbd2c 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryBottomSheetContent.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryBottomSheetContent.kt @@ -35,6 +35,7 @@ import com.navi.pay.common.theme.color.NaviPayColor import com.navi.pay.common.ui.PrimaryAndSecondaryButton import com.navi.pay.management.transactionhistory.model.view.TransactionTagHolder import com.navi.pay.tstore.list.viewmodel.OrderHistoryScreenBottomSheetUIState +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.noRippleClickableWithDebounce @Composable @@ -106,7 +107,7 @@ private fun RenderTransactionHistoryBottomSheetCategoriesScreen( categoryTagsHolder.forEach { categoryTagHolder -> CheckBoxItem( text = - if (categoryTagHolder.displayTextId != -1) + if (categoryTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = categoryTagHolder.displayTextId) else categoryTagHolder.displayText, isChecked = categoryTagHolder.isSelected, @@ -166,7 +167,7 @@ private fun RenderTransactionHistoryBottomSheetFiltersScreen( paymentModeTagsHolder.forEach { paymentModeTagHolder -> CheckBoxItem( text = - if (paymentModeTagHolder.displayTextId != -1) + if (paymentModeTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = paymentModeTagHolder.displayTextId) else paymentModeTagHolder.displayText, isChecked = paymentModeTagHolder.isSelected, @@ -195,7 +196,7 @@ private fun RenderTransactionHistoryBottomSheetFiltersScreen( transactionStatusTagsHolder.forEach { transactionStatusTagHolder -> CheckBoxItem( text = - if (transactionStatusTagHolder.displayTextId != -1) + if (transactionStatusTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = transactionStatusTagHolder.displayTextId) else transactionStatusTagHolder.displayText, isChecked = transactionStatusTagHolder.isSelected, @@ -245,7 +246,7 @@ private fun RenderTransactionHistoryBottomSheetMonthsScreen( monthTagsHolder.forEach { monthTagHolder -> CheckBoxItem( text = - if (monthTagHolder.displayTextId != -1) + if (monthTagHolder.displayTextId != RESOURCE_DEFAULT_ID) stringResource(id = monthTagHolder.displayTextId) else monthTagHolder.displayText, isChecked = monthTagHolder.isSelected, diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryItemView.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryItemView.kt index 35f48210f0..3a42ea7db8 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryItemView.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/ui/OrderHistoryItemView.kt @@ -46,6 +46,7 @@ import com.navi.pay.tstore.list.util.getFormattedAmountColorForOrderHistoryList import com.navi.pay.tstore.list.util.getStatusImageForOrderHistoryList import com.navi.pay.tstore.list.util.getStatusTextColorForOrderHistoryList import com.navi.pay.tstore.list.util.getStatusTextIdForOrderHistoryList +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.RUPEE_SYMBOL import com.navi.pay.utils.clickableDebounce import com.navi.pay.utils.getDisplayableAmount @@ -181,7 +182,7 @@ fun RenderOrderHistoryItemView( Spacer(modifier = Modifier.width(8.dp)) - if (statusImageForTransactionHistoryListId != -1) { + if (statusImageForTransactionHistoryListId != RESOURCE_DEFAULT_ID) { Image( painter = painterResource(id = statusImageForTransactionHistoryListId), contentDescription = "", diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/viewmodel/OrderHistoryViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/viewmodel/OrderHistoryViewModel.kt index 2b1becf25c..fef90ade1c 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/viewmodel/OrderHistoryViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/tstore/list/viewmodel/OrderHistoryViewModel.kt @@ -44,6 +44,7 @@ import com.navi.pay.tstore.list.model.view.OrderHistorySearchHolder import com.navi.pay.tstore.list.repository.OrderRepository import com.navi.pay.tstore.list.usecase.SyncOrderHistoryUseCase import com.navi.pay.utils.DATE_TIME_FORMAT_MONTH_YEAR_WITH_COMMA_SEPARATOR +import com.navi.pay.utils.RESOURCE_DEFAULT_ID import com.navi.pay.utils.parallelMap import com.ramcosta.composedestinations.spec.Direction import dagger.hilt.android.lifecycle.HiltViewModel @@ -441,7 +442,8 @@ constructor( return tagHolders .filter { it.isActive } .map { - if (it.displayTextId != -1) resourceProvider.getString(resId = it.displayTextId) + if (it.displayTextId != RESOURCE_DEFAULT_ID) + resourceProvider.getString(resId = it.displayTextId) else it.displayText } }