From eafbecafbd9c4cb87dc6398e85351359deaba253 Mon Sep 17 00:00:00 2001 From: moon <56061215+MgKyawLay@users.noreply.github.com> Date: Tue, 15 Sep 2026 21:31:59 +0630 Subject: [PATCH] mask card number in UI --- .../mob/utsmyanmar/ui/print_receipt/PrintReceiptScreen.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/mob/utsmyanmar/ui/print_receipt/PrintReceiptScreen.kt b/app/src/main/java/com/mob/utsmyanmar/ui/print_receipt/PrintReceiptScreen.kt index edab944..52491a7 100644 --- a/app/src/main/java/com/mob/utsmyanmar/ui/print_receipt/PrintReceiptScreen.kt +++ b/app/src/main/java/com/mob/utsmyanmar/ui/print_receipt/PrintReceiptScreen.kt @@ -305,7 +305,7 @@ fun ReceiptPreview( if (prefix.isEmpty() && (state.payDetail?.transactionType ?: 0) == TransactionsType.CASH_OUT.value) "-$amt" else "$prefix$amt" }) ReceiptRow("Card Type", state.payDetail?.accountType.toString()) - ReceiptRow("Card No", state.payDetail?.cardNo.toString()) + ReceiptRow("Card No", maskCardNumber(state.payDetail?.cardNo.orEmpty())) ReceiptRow("Status", if (isPreview) "SUCCESS" else state.payDetail?.let(::displayTransactionStatus).orEmpty()) ReceiptDivider() Spacer(modifier = Modifier.height(8.dp)) @@ -327,6 +327,11 @@ fun ReceiptPreview( } } +private fun maskCardNumber(cardNumber: String): String { + if (cardNumber.length <= 10) return cardNumber + return cardNumber.take(6) + "*".repeat(cardNumber.length - 10) + cardNumber.takeLast(4) +} + @Composable fun ReceiptRow( label: String,