NTP-67794 | Crash Fix (#16513)

This commit is contained in:
Prajjaval Verma
2025-06-10 01:42:48 +05:30
committed by GitHub
parent bb6c76047d
commit 499be11cfe
3 changed files with 26 additions and 4 deletions

View File

@@ -93,7 +93,9 @@ fun TextEditTextCalendarItemComposable(
horizontalArrangement = Arrangement.SpaceBetween,
) {
item.title?.let { title -> NaviTextWidgetized(textFieldData = title) }
item.rightTitle?.let { rightTitle -> NaviTextWidgetized(textFieldData = rightTitle) }
item.rightTitle?.let { rightTitle ->
NaviTextWidgetized(textFieldData = rightTitle, widgetCallback = widgetCallback)
}
}
Spacer(modifier = Modifier.height(8.dp))
@@ -152,7 +154,7 @@ fun TextEditTextCalendarItemComposable(
.border(1.dp, colorBorderAlt, RoundedCornerShape(4.dp))
.background(whiteColor, RoundedCornerShape(4.dp))
.clickable {
if (item.disabledCta != null) {
if (item.disabledCta != null || item.disableEditing.orFalse()) {
item.disabledCta?.let { widgetCallback?.onClick(it) }
} else {
val c = Calendar.getInstance()

View File

@@ -50,6 +50,20 @@ fun TextEditTextCalendarWidgetComposable(
val memberNameMap = remember { HashMap<String, String>() }
val memberDobMap = remember { HashMap<String, String>() }
LaunchedEffect(Unit) {
itemList?.forEach { item ->
item.id?.let { id ->
val nameText = item.editTextData?.title?.text.orEmpty()
val dobText = item.calendar?.editTextData?.title?.text.orEmpty()
if (nameText.isNotEmpty()) {
memberNameMap[id] = nameText
}
if (dobText.isNotEmpty()) {
memberDobMap[id] = dobText
}
}
}
val isValid = validateAllItems(itemList, memberNameMap, memberDobMap)
isValidWidget(
isValid,

View File

@@ -8,6 +8,7 @@
package com.navi.naviwidgets.utils
import com.navi.base.utils.MILLISECONDS_PER_SECOND
import com.navi.base.utils.log
import com.navi.naviwidgets.adapters.STYLE_SPINNER
import java.text.SimpleDateFormat
import java.util.Calendar
@@ -47,6 +48,11 @@ fun getFormattedDateInEnglish(year: Int, month: Int, day: Int): String {
fun getFormattedDateInEnglishToDDMMYYYY(input: String): String {
val inFmt = SimpleDateFormat("d MMM yyyy", Locale.ENGLISH)
val outFmt = SimpleDateFormat("ddMMyyyy", Locale.ENGLISH)
val date = inFmt.parse(input) ?: return ""
return outFmt.format(date)
return try {
val date = inFmt.parse(input) ?: return ""
outFmt.format(date)
} catch (e: Exception) {
e.log()
""
}
}