Gi/amc gateway UI fix (#5589)

* amc gateway ui fix and analytics event fixes
This commit is contained in:
Himanshu Tanwar
2023-03-07 02:05:24 +05:30
committed by GitHub Enterprise
parent 50188cf8b5
commit 9beb2a920c
5 changed files with 78 additions and 61 deletions

View File

@@ -305,6 +305,10 @@ class ProductFragment : BaseFragment(), WidgetCallback, DashboardPolicyBenefitBo
PRODUCT to (dashboardTab?.name ?: NaviAmcDeeplinkNavigator.INVESTMENT)
)
}
widgetNaviAnalyticsEventTracker.onWidgetClickEvent(
naviClickAction,
screenName
)
if (toOpenBottomsheet(naviClickAction.url)) {
toShowBottomSheet(naviClickAction)
return

View File

@@ -103,7 +103,7 @@ class AutoPaySuccessFragment : AmcBaseFragment(), HeaderInteractionListener {
}
private fun setCrossSellData(crossSellData: AutoPaySuccessContent.CrossSellContentData) {
binding.crossSellContainer.background = getNaviDrawable(
binding.crossSellSv.background = getNaviDrawable(
radii = CornerRadius(leftTop = dpToPx(16), rightTop = dpToPx(16)),
backgroundColor = crossSellData.bgColor.parseColorSafe()
)
@@ -139,7 +139,7 @@ class AutoPaySuccessFragment : AmcBaseFragment(), HeaderInteractionListener {
delay(1000)
binding.confettiAnimation.playAnimation()
binding.contentLayout.animate().translationY(-dpToPx(62))
slideInBottom(binding.crossSellContainer)
slideInBottom(binding.crossSellSv)
}
}

View File

@@ -127,70 +127,77 @@
app:layout_constraintStart_toStartOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cross_sell_container"
<ScrollView
android:id="@+id/cross_sell_sv"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_0"
android:layout_marginTop="-50dp"
app:layout_constraintTop_toBottomOf="@id/content_layout"
app:layout_constraintBottom_toBottomOf="parent"
android:visibility="gone"
tools:visibility="visible"
app:layout_constraintTop_toBottomOf="@id/content_layout">
<ImageView
android:id="@+id/cross_sell_top_left_icon"
android:layout_width="@dimen/dp_128"
android:layout_height="wrap_content"
tools:src="@drawable/amc_reward"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_56"
android:gravity="center"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/cross_sell_lottie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/cross_sell_title"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginTop="@dimen/dp_10"
app:lottie_loop="true"
app:lottie_speed="1.0" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_18"
android:gravity="center"
android:lineSpacingExtra="@dimen/sp_8"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/cross_sell_lottie" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_cta"
style="@style/TextV6Style"
android:fontFamily="@font/tt_bold"
android:layout_marginTop="-50dp">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cross_sell_container"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_48"
tools:text="@string/ok_got_it"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginBottom="@dimen/dp_32"
android:background="@drawable/bg_cta_primary_amc"
android:gravity="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
android:layout_height="wrap_content">
<ImageView
android:id="@+id/cross_sell_top_left_icon"
android:layout_width="@dimen/dp_128"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:src="@drawable/amc_reward" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_56"
android:gravity="center"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="@string/ok_got_it" />
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/cross_sell_lottie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/cross_sell_title"
app:lottie_loop="true"
app:lottie_speed="1.0" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_18"
android:gravity="center"
android:lineSpacingExtra="@dimen/sp_8"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/cross_sell_lottie"
tools:text="@string/ok_got_it" />
<com.navi.design.textview.NaviTextView
android:id="@+id/cross_sell_cta"
style="@style/TextV6Style"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_48"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_40"
android:background="@drawable/bg_cta_primary_amc"
android:fontFamily="@font/tt_bold"
android:gravity="center"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/cross_sell_description"
tools:text="@string/ok_got_it" />
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/confetti_animation"

View File

@@ -34,6 +34,9 @@ class IncentiviseAutopayActivity : GiBaseActivity() {
if (data?.getBooleanExtra(RESULT_FAILED, true) == false) {
intent.removeExtra(OVERRIDE_BACK_PRESS)
viewModel.postPaymentCta.value?.let { ctaData ->
ctaData.analyticsEventProperties?.let { analyticsEvent ->
NaviInsuranceAnalytics.postAnalyticsEvent(analyticsEvent.name.orEmpty(), analyticsEvent.properties)
}
NaviInsuranceDeeplinkNavigator.navigate(this, ctaData, finish = true)
} ?: kotlin.run {
NaviInsuranceDeeplinkNavigator.navigate(

View File

@@ -14,11 +14,11 @@ import com.navi.design.utils.CornerRadius
import com.navi.design.utils.dpToPx
import com.navi.design.utils.getNaviDrawable
import com.navi.insurance.R
import com.navi.insurance.analytics.NaviInsuranceAnalytics
import com.navi.insurance.databinding.BottomsheetHeaderAndTextLinesBinding
import com.navi.insurance.health.activity.BaseActivity
import com.navi.insurance.navigator.NaviInsuranceDeeplinkNavigator
import com.navi.insurance.util.CONTENT_DATA_JSON_STRING
import com.navi.insurance.util.Constants
import com.navi.insurance.util.log
import com.navi.naviwidgets.databinding.LayoutLeftRightTextBinding
import com.navi.naviwidgets.extensions.addOnMultipleClicksHandler
@@ -107,6 +107,9 @@ class HeaderLineTextBottomSheet : BaseBottomSheet() {
}
}
}
it.analyticsEventProperties?.name?.let { analyticsEventName ->
NaviInsuranceAnalytics.postAnalyticsEvent(eventName = analyticsEventName, eventProperties = it.analyticsEventProperties?.properties)
}
safelyDismissDialog()
}
}