Changes after design feedback (#8814)
Co-authored-by: Himanshu Tanwar <himanshu.tanwar@navi.com>
This commit is contained in:
@@ -701,4 +701,6 @@ object InsuranceAnalyticsConstants {
|
||||
const val JOURNEY_START_COMPLETED = "journey_start_completed"
|
||||
const val PRE_DIABETES_QUESTION_LAND = "hi_diabetes_test_journey_page_land"
|
||||
const val PRE_DIABETES_QUESTION_RESPONSE = "hi_diabetes_test_journey_reponse"
|
||||
const val H1BAC_BS_GO_BACK = "hi_H1bac_bs_go_back"
|
||||
const val H1BAC_BACK_BOTTOMSHEET = "hi_diabetes_back_bottomsheet"
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import androidx.databinding.DataBindingUtil
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import com.google.gson.Gson
|
||||
import com.google.gson.reflect.TypeToken
|
||||
import com.navi.base.model.AnalyticsEvent
|
||||
import com.navi.base.model.CtaData
|
||||
import com.navi.base.model.CtaType
|
||||
import com.navi.base.utils.orFalse
|
||||
@@ -45,9 +46,18 @@ class TitleIconDescBottomSheet : GiBaseBottomSheet(), WidgetCallback {
|
||||
data?.let {
|
||||
val bottomSheetData = getJsonObject(it)
|
||||
bottomSheetData?.let { bottomSheetData -> initUI(bottomSheetData, binding) }
|
||||
sendInitEvent()
|
||||
}
|
||||
}
|
||||
|
||||
fun sendInitEvent() {
|
||||
analyticsHandler.sendEvent(
|
||||
AnalyticsEvent(
|
||||
name = InsuranceAnalyticsConstants.H1BAC_BACK_BOTTOMSHEET
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private fun initUI(
|
||||
bottomSheetData: TitleIconDescBottomSheetData,
|
||||
binding: TitleIconDescBottomsheetLayoutBinding
|
||||
|
||||
@@ -40,10 +40,13 @@ import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.text.style.TextDecoration
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import com.navi.base.model.AnalyticsEvent
|
||||
import com.navi.base.model.CtaData
|
||||
import com.navi.base.model.LineItem
|
||||
import com.navi.design.font.FontWeightEnum
|
||||
import com.navi.design.theme.getFontFamily
|
||||
import com.navi.insurance.analytics.InsuranceAnalyticsConstants
|
||||
import com.navi.insurance.analytics.InsuranceAnalyticsHandler
|
||||
import com.navi.naviwidgets.R
|
||||
import com.navi.naviwidgets.extensions.NaviText
|
||||
import com.navi.naviwidgets.models.response.StyleString
|
||||
@@ -53,6 +56,7 @@ import com.navi.insurance.engagement.pre_diabetes_check.models.H1bacBottomSheetW
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
fun H1bacBottomSheetComposable(
|
||||
analyticsHandler: InsuranceAnalyticsHandler,
|
||||
content: H1bacBottomSheetWidgetData,
|
||||
handleCta: (CtaData) -> Unit,
|
||||
modalBottomSheetState: SheetState,
|
||||
@@ -228,7 +232,7 @@ fun H1bacBottomSheetComposable(
|
||||
)
|
||||
)
|
||||
}
|
||||
Row(verticalAlignment = Alignment.Bottom) {
|
||||
Row(verticalAlignment = Alignment.CenterVertically) {
|
||||
NaviText(
|
||||
textFieldData = content.firstBullet ?: TextFieldData(
|
||||
font = "TT_REGULAR", // Replace with the actual font key
|
||||
@@ -369,6 +373,17 @@ fun H1bacBottomSheetComposable(
|
||||
)
|
||||
.clickable {
|
||||
onDismiss.invoke()
|
||||
AnalyticsEvent(
|
||||
name = InsuranceAnalyticsConstants.H1BAC_BS_GO_BACK,
|
||||
properties = mutableMapOf(
|
||||
"screen_name" to InsuranceAnalyticsConstants.PRE_DIABETES_RESULT_SCREEN
|
||||
)
|
||||
).let {
|
||||
analyticsHandler.sendEventToClickStream(
|
||||
eventName = it.name.orEmpty(),
|
||||
eventProperties = it.properties
|
||||
)
|
||||
}
|
||||
},
|
||||
contentAlignment = Alignment.Center
|
||||
) {
|
||||
@@ -403,6 +418,7 @@ fun H1bacBottomSheetComposable(
|
||||
)
|
||||
.clickable {
|
||||
handleCta.invoke(
|
||||
content.firstButtonCta ?:
|
||||
CtaData(
|
||||
url = "gi/intro",
|
||||
parameters = listOf(
|
||||
|
||||
@@ -137,6 +137,7 @@ fun PdScoreScreenComposable(
|
||||
val modalBottomSheetState = rememberModalBottomSheetState(skipPartiallyExpanded = true)
|
||||
if(isH1BacBottomSheetVisible.value) {
|
||||
H1BacBottomSheet(
|
||||
analyticsHandler,
|
||||
onDismiss = { isH1BacBottomSheetVisible.value = false },
|
||||
handleCta = handleCta,
|
||||
modalBottomSheetState,
|
||||
@@ -573,6 +574,7 @@ fun PdScoreHeader(
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
fun H1BacBottomSheet(
|
||||
analyticsHandler: InsuranceAnalyticsHandler,
|
||||
onDismiss: () -> Unit,
|
||||
handleCta: (CtaData) -> Unit,
|
||||
modalBottomSheetState: SheetState,
|
||||
@@ -585,7 +587,7 @@ fun H1BacBottomSheet(
|
||||
shape = BottomSheetDefaults.HiddenShape,
|
||||
containerColor = Color.Transparent
|
||||
) {
|
||||
h1BacBottomSheetData.value?.let { H1bacBottomSheetComposable(it,handleCta, modalBottomSheetState, onDismiss) }
|
||||
h1BacBottomSheetData.value?.let { H1bacBottomSheetComposable(analyticsHandler, it,handleCta, modalBottomSheetState, onDismiss) }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.navi.insurance.engagement.pre_diabetes_check.models
|
||||
|
||||
import com.google.gson.annotations.SerializedName
|
||||
import com.navi.base.model.CtaData
|
||||
import com.navi.naviwidgets.models.response.TextFieldData
|
||||
|
||||
data class H1bacBottomSheetWidgetData(
|
||||
@@ -19,5 +20,9 @@ data class H1bacBottomSheetWidgetData(
|
||||
@SerializedName("secondBullet")
|
||||
val secondBullet: TextFieldData? = null,
|
||||
@SerializedName("thirdBullet")
|
||||
val thirdBullet: TextFieldData? = null
|
||||
val thirdBullet: TextFieldData? = null,
|
||||
@SerializedName("firstButtonCta")
|
||||
val firstButtonCta: CtaData? = null,
|
||||
@SerializedName("secondButtonCta")
|
||||
val secondButtonCta: CtaData? = null,
|
||||
)
|
||||
Reference in New Issue
Block a user