NTP-54193 | Claims-UI-changes (#15808)

This commit is contained in:
Sandeep Kumar
2025-04-25 09:17:24 +05:30
committed by GitHub
parent dba9b37529
commit ace2916b12
50 changed files with 962 additions and 546 deletions

View File

@@ -25,6 +25,7 @@ import com.navi.base.utils.orFalse
import com.navi.common.network.models.ErrorMessage
import com.navi.design.R as DesignR
import com.navi.design.utils.hideCutCopyMenuPopUp
import com.navi.design.utils.underlinedText
import com.navi.insurance.R
import com.navi.insurance.analytics.InsuranceAnalyticsConstants
import com.navi.insurance.analytics.InsuranceAnalyticsHandler
@@ -213,11 +214,13 @@ class BankDetailsFormFragment : GiBaseFragment(), TextWatcher {
private fun setViewState(viewState: BankDetailsFormViewState) {
when (viewState) {
BankDetailsFormViewState.Loading -> {
binding.progressBar.isVisible = true
binding.shimmerViewContainer.isVisible = true
binding.shimmerViewContainer.startShimmer()
binding.content.isVisible = false
}
is BankDetailsFormViewState.Success -> {
binding.progressBar.isVisible = false
binding.shimmerViewContainer.isVisible = false
binding.shimmerViewContainer.stopShimmer()
binding.content.isVisible = true
handleSuccessState(viewState.response)
}
@@ -268,6 +271,9 @@ class BankDetailsFormFragment : GiBaseFragment(), TextWatcher {
binding.topHeaderTitle.setData(
(genericWidgetResponse.content?.getOrNull(0)?.widgetData as TextHeaderViewData).title
)
binding.topHeaderSubTitle.setData(
(genericWidgetResponse.content.getOrNull(0)?.widgetData as TextHeaderViewData).subTitle
)
isBankVerified = isAccountVerified(genericWidgetResponse.metadata)
if (isBankVerified) {
handleVerifiedState(genericWidgetResponse.metadata)
@@ -469,6 +475,7 @@ class BankDetailsFormFragment : GiBaseFragment(), TextWatcher {
if (!bankInfo.bankCode.isNullOrEmpty()) {
binding.bankField.tag = bankInfo.bankCode
binding.searchButton.isVisible = true
binding.searchButton.underlinedText()
} else {
binding.searchButton.isVisible = false
}

View File

@@ -147,8 +147,8 @@ class DocumentReviewFragment : GiBaseFragment() {
private fun setViewState(documentViewState: DocumentReviewState) {
when (documentViewState) {
is DocumentReviewState.Success -> {
binding.progressBar.isVisible = false
binding.shimmerViewContainer.isVisible = false
binding.shimmerViewContainer.stopShimmer()
binding.documentReviewLayout.isVisible = true
documentViewState.data?.header?.getOrNull(0)?.widgetData?.run {
@@ -170,7 +170,8 @@ class DocumentReviewFragment : GiBaseFragment() {
}
}
is DocumentReviewState.Loading -> {
binding.progressBar.isVisible = true
binding.shimmerViewContainer.isVisible = true
binding.shimmerViewContainer.startShimmer()
binding.documentReviewLayout.isVisible = false
}
}

View File

@@ -298,11 +298,13 @@ class DocumentUploadByCategoryFragment :
when (state) {
is SubmitCtaState.Idle -> {}
is SubmitCtaState.Loading -> {
binding.progressBar.isVisible = true
binding.shimmerViewContainer.isVisible = true
binding.shimmerViewContainer.startShimmer()
binding.uploadCardsContainer.isVisible = false
}
is SubmitCtaState.Success -> {
binding.progressBar.isVisible = false
binding.shimmerViewContainer.isVisible = false
binding.shimmerViewContainer.stopShimmer()
binding.uploadCardsContainer.isVisible = true
state.data?.let { ctaData ->
NaviInsuranceDeeplinkNavigator.navigate(
@@ -327,6 +329,7 @@ class DocumentUploadByCategoryFragment :
documentUploadStatus.selectedFileData?.documentReferenceId,
when (documentUploadStatus) {
is DocumentUploadStatus.Success -> {
setViewState(documentUploadVM.documentUploadByCategoryStateFlow.value)
documentUploadStatus.uploadedDocData
}
is DocumentUploadStatus.Failure -> {
@@ -424,12 +427,14 @@ class DocumentUploadByCategoryFragment :
)
}
}
setViewState(documentUploadVM.documentUploadByCategoryStateFlow.value)
}
private fun setViewState(documentViewState: DocumentUploadByCategoryState) {
when (documentViewState) {
is DocumentUploadByCategoryState.Success -> {
binding.progressBar.isVisible = false
binding.shimmerViewContainer.isVisible = false
binding.shimmerViewContainer.stopShimmer()
binding.uploadCardsContainer.isVisible = true
documentViewState.data?.header?.getOrNull(0)?.widgetData?.run {
@@ -439,6 +444,8 @@ class DocumentUploadByCategoryFragment :
}
documentViewState.data?.footer?.getOrNull(0)?.widgetData?.run {
val viewData = this as? FooterWithTitleAndActionViewData
viewData?.buttonState = binding.uploadCardsContainer.areWidgetsValid()
updateContainer(this, binding.footerContainer) { action ->
if (
shouldShowUploadInProgressBottomSheet().not() &&
@@ -455,7 +462,8 @@ class DocumentUploadByCategoryFragment :
}
}
DocumentUploadByCategoryState.Loading -> {
binding.progressBar.isVisible = true
binding.shimmerViewContainer.isVisible = true
binding.shimmerViewContainer.startShimmer()
binding.uploadCardsContainer.isVisible = false
}
}

View File

@@ -31,8 +31,11 @@ import com.navi.insurance.common.GiBaseVM
import com.navi.insurance.common.factory.InsuranceViewHolderRegistry
import com.navi.insurance.common.models.Action
import com.navi.insurance.common.models.ActionOwnerType
import com.navi.insurance.common.models.FooterWithTitleAndActionViewData
import com.navi.insurance.common.models.NaviWidget
import com.navi.insurance.common.models.NaviWidgetData
import com.navi.insurance.common.models.NaviWidgetType
import com.navi.insurance.common.models.UploadSummaryListWidgetData
import com.navi.insurance.common.util.ActionHandler
import com.navi.insurance.common.util.IdProvider
import com.navi.insurance.common.widgets.BaseNaviWidgetView
@@ -142,13 +145,15 @@ class DocumentUploadSummaryFragment : GiBaseFragment(), ActionHandler.ActionOwne
private fun setViewState(documentViewState: DocumentSummaryState) {
when (documentViewState) {
DocumentSummaryState.Loading -> {
binding.progressBar.isVisible = true
binding.shimmerViewContainer.isVisible = true
binding.shimmerViewContainer.startShimmer()
binding.documentSummaryLayout.isVisible = false
binding.headerContainer.isVisible = false
binding.footerContainer.isVisible = false
}
is DocumentSummaryState.Success -> {
binding.progressBar.isVisible = false
binding.shimmerViewContainer.isVisible = false
binding.shimmerViewContainer.stopShimmer()
binding.documentSummaryLayout.isVisible = true
binding.headerContainer.isVisible = true
binding.footerContainer.isVisible = true
@@ -164,10 +169,10 @@ class DocumentUploadSummaryFragment : GiBaseFragment(), ActionHandler.ActionOwne
}
documentViewState.data?.footer?.getOrNull(0)?.widgetData?.run {
val viewData = this as? FooterWithTitleAndActionViewData
viewData?.buttonState = isValidationSuccess()
updateContainer(this, binding.footerContainer) { action ->
if (isValidationSuccess()) {
documentUploadVM.performAction(action, getActionOwner(action))
}
documentUploadVM.performAction(action, getActionOwner(action))
}
}
}
@@ -175,7 +180,18 @@ class DocumentUploadSummaryFragment : GiBaseFragment(), ActionHandler.ActionOwne
}
private fun isValidationSuccess(): Boolean {
return documentAdapter?.isValidWidget().orTrue()
var isValid = true
documentAdapter?.list?.forEach { widget ->
if (widget.widgetName == NaviWidgetType.SUMMARY_LIST_WIDGET.value) {
val uploadSummaryListWidgetData = widget.widgetData as? UploadSummaryListWidgetData
uploadSummaryListWidgetData?.summaryItems?.forEachIndexed {
_,
uploadSummaryItemWidget ->
isValid = isValid && uploadSummaryItemWidget.widgetData?.validated.orTrue()
}
}
}
return isValid
}
private fun updateWidgetData(widgets: List<NaviWidget>) {

View File

@@ -134,8 +134,7 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
}
private fun hideLoaders() {
binding?.loaderText?.isVisible = false
binding?.loaderIcon?.isVisible = false
binding?.progressLottie?.isVisible = false
binding?.showMoreButtonLayout?.isVisible =
!currentPageNumber.isNull() &&
!totalPages.isNull() &&
@@ -146,8 +145,7 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
if (binding?.showMoreButtonLayout?.isVisible == true) {
binding?.showMoreButtonLayout?.isVisible = false
}
binding?.loaderText?.isVisible = true
binding?.loaderIcon?.isVisible = true
binding?.progressLottie?.isVisible = true
}
override fun onDetachedFromWindow() {

View File

@@ -130,7 +130,9 @@ class TabbedMediatorNestedScrollView(
)
(tab.customView as? TextView)?.apply {
setTextColor(ContextCompat.getColor(context, DesignR.color.blueberry))
setTextColor(
ContextCompat.getColor(context, DesignR.color.title_text_purple_color)
)
this.typeface = typeFace
}
insuranceAnalyticsHandler.sendEvent(tabDataList[position].analyticsEvent)

View File

@@ -15,6 +15,7 @@ data class FooterWithTitleAndActionViewData(
@SerializedName("button") val button: ButtonViewData? = null,
@SerializedName("showDivider") val showDivider: Boolean? = true,
@SerializedName("validation") val validation: List<ValidationData>? = null,
@SerializedName("buttonState") var buttonState: Boolean? = null,
override var widgetNameForBaseAdapter: String? =
NaviWidgetType.FOOTER_WITH_TITLE_AND_BUTTON.value,
) : NaviWidgetData()

View File

@@ -1,6 +1,6 @@
/*
*
* * Copyright © 2024 by Navi Technologies Limited
* * Copyright © 2024-2025 by Navi Technologies Limited
* * All rights reserved. Strictly confidential
*
*/
@@ -11,5 +11,6 @@ import com.google.gson.annotations.SerializedName
data class TextHeaderViewData(
@SerializedName("title") val title: TextViewData? = null,
@SerializedName("subTitle") val subTitle: TextViewData? = null,
override var widgetNameForBaseAdapter: String? = NaviWidgetType.TEXT_HEADER.value,
) : NaviWidgetData()

View File

@@ -24,6 +24,8 @@ class UploadCardWidgetData(
@SerializedName("intimationReferenceId") val intimationReferenceId: String? = null,
@SerializedName("validations") val validations: List<ValidationData>? = null,
@SerializedName("spanCount") val spanCount: Int? = null,
@SerializedName("infoTitle") val infoTitle: TextViewData? = null,
@SerializedName("bottomTagTitle") val bottomTagTitle: TextViewData? = null,
override var widgetNameForBaseAdapter: String? = NaviWidgetType.UPLOAD_CARD_WIDGET.value,
) : NaviWidgetData() {

View File

@@ -46,6 +46,7 @@ constructor(context: Context, attrs: AttributeSet? = null) : BaseNaviWidgetView(
insuranceAnalyticsHandler.interceptActionAndSendEvent(callback),
)
this.binding?.actionButton?.setButtonData(viewData?.button)
this.binding?.actionButton?.isEnabled = viewData?.buttonState.orTrue()
this.binding?.divider?.isVisible = viewData?.showDivider.orTrue()

View File

@@ -93,6 +93,7 @@ fun Button.setButtonData(
buttonViewData?.let {
setData(buttonViewData.title)
buttonViewData.action?.let { action -> setOnClickListener { callback?.invoke(action) } }
buttonViewData.cta?.let { ctaDataInfo ->
setOnClickListener { ctaDataCallback?.invoke(ctaDataInfo) }
}
@@ -132,6 +133,7 @@ fun TextView.setData(
textSize = it.toFloat()
}
}
textViewData.styledText
textViewData.font?.let { typeface = ResourcesCompat.getFont(context, getFontStyle(it)) }
View.VISIBLE
@@ -159,7 +161,6 @@ private fun TextView.setColorPalette(colorPalette: ColorPalette) {
?.takeIf { isValidHexColor(it) }
?.let { backgroundColor -> setBackgroundColor(Color.parseColor(backgroundColor)) }
colorPalette.text?.let { textColor -> setTextColor(Color.parseColor(textColor)) }
colorPalette.gradient?.let { gradient ->
if (
isValidHexColor(gradient.startGradientColor) &&
@@ -298,7 +299,7 @@ fun TabLayout.addTextTab(text: String?, isSelected: Boolean) {
if (isSelected) {
typeface =
ResourcesCompat.getFont(context, getFontStyle(FontWeightEnum.NAVI_HEADLINE_REGULAR))
setTextColor(ContextCompat.getColor(context, DesignR.color.blueberry))
setTextColor(ContextCompat.getColor(context, DesignR.color.title_text_purple_color))
} else {
typeface =
ResourcesCompat.getFont(context, getFontStyle(FontWeightEnum.NAVI_BODY_REGULAR))

View File

@@ -11,15 +11,12 @@ import android.content.Context
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
import android.view.animation.AnimationUtils
import android.widget.TextView
import androidx.core.content.res.ResourcesCompat
import androidx.core.view.isVisible
import androidx.databinding.DataBindingUtil
import androidx.databinding.ViewDataBinding
import com.navi.base.model.CtaData
import com.navi.base.utils.orFalse
import com.navi.base.utils.orTrue
import com.navi.design.R as DesignR
import com.navi.insurance.R
import com.navi.insurance.common.models.Action
import com.navi.insurance.common.models.NaviWidgetData
@@ -70,6 +67,7 @@ constructor(context: Context, attrs: AttributeSet? = null) : BaseNaviWidgetView(
itemViewBinding.title.setData(itemData?.title)
itemViewBinding.subtitle.setData(itemData?.subTitle)
itemViewBinding.titleIcon.isVisible = itemData?.validated.orFalse()
itemData?.rightIcon?.let { itemViewBinding.itemHeader.setImageFieldData(it) }
itemViewBinding.divider.isVisible = index != 0
@@ -90,31 +88,6 @@ constructor(context: Context, attrs: AttributeSet? = null) : BaseNaviWidgetView(
->
val isItemValid = uploadSummaryItemWidget.widgetData?.validated
isValid = isValid && isItemValid.orTrue()
if (!isItemValid.orTrue()) {
val itemView = binding?.listHolderLayout?.getChildAt(index)
itemView
?.findViewById<TextView>(R.id.title)
?.setTextColor(
ResourcesCompat.getColor(
context.resources,
DesignR.color.color_EF0000,
null,
)
)
itemView
?.findViewById<TextView>(R.id.subtitle)
?.setTextColor(
ResourcesCompat.getColor(
context.resources,
DesignR.color.color_EF0000,
null,
)
)
itemView?.startAnimation(
AnimationUtils.loadAnimation(context, R.anim.horizontal_shake)
)
}
}
return isValid
}

View File

@@ -20,6 +20,7 @@ import androidx.core.view.isVisible
import androidx.databinding.DataBindingUtil
import androidx.recyclerview.widget.GridLayoutManager
import com.navi.base.model.AnalyticsEvent
import com.navi.base.utils.isNotNullAndNotEmpty
import com.navi.base.utils.orFalse
import com.navi.base.utils.orTrue
import com.navi.base.utils.orZero
@@ -71,14 +72,12 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
documentsLoadingState: UploadCardsListViewState.DocumentsLoadingState?
) {
if (documentsLoadingState?.loaded.orTrue()) {
binding.loaderText.isVisible = false
binding.loaderIcon.isVisible = false
binding.progressLottie.isVisible = false
}
}
fun updateDocuments(documentsList: List<UploadedDocData>?, arePagesLoaded: Boolean?) {
adapter?.updateData(documentsList, arePagesLoaded)
updateToolTipAndSuggestionView()
val uploadedDocCount = getUploadedDocsCount()
toggleErrorState(false, getUploadedDocumentsText(uploadedDocCount), uploadedDocCount > 0)
}
@@ -128,8 +127,6 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
val uploadedDocCount = getUploadedDocsCount()
toggleErrorState(false, getUploadedDocumentsText(uploadedDocCount), uploadedDocCount > 0)
updateToolTipAndSuggestionView()
binding.uploadDocumentGrid.layoutManager = GridLayoutManager(context, spanCount)
binding.uploadDocumentGrid.adapter = adapter
binding.uploadDocumentGrid.isNestedScrollingEnabled = false
@@ -159,12 +156,18 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
widgetData?.header?.rightText,
insuranceAnalyticsHandler.interceptActionAndSendEvent(actionCallback),
)
binding.rightTextIcon.setData(
widgetData?.header?.rightText?.rightIcon,
insuranceAnalyticsHandler.interceptActionAndSendEvent(actionCallback),
)
updateUploadedDocuments(widgetData, actionCallback, callback, filePath)
toggleErrorState(false, widgetData?.description?.text)
updateToolTipAndSuggestionView()
updateInfoLayoutView(widgetData?.infoTitle)
updateBottomTagView(widgetData?.bottomTagTitle)
// set checkbox data
widgetData?.checkBox?.let { setCheckboxData(it) }
@@ -183,11 +186,30 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
return super.dispatchTouchEvent(ev)
}
private fun updateInfoLayoutView(infoTitle: TextViewData?) {
if (infoTitle?.text.isNotNullAndNotEmpty()) {
binding.infoLayout.visibility = View.VISIBLE
binding.infoText.setData(infoTitle)
binding.infoIcon.setData(infoTitle?.leftIcon)
} else {
binding.infoLayout.visibility = View.GONE
}
}
private fun updateBottomTagView(bottomTagTitle: TextViewData?) {
if (bottomTagTitle?.text.isNotNullAndNotEmpty()) {
binding.bottomTagLayout.visibility = View.VISIBLE
binding.bottomTagText.setData(bottomTagTitle)
} else {
binding.bottomTagLayout.visibility = View.GONE
}
}
private fun updateToolTipAndSuggestionView() {
if (adapter?.getData()?.size.orZero() > 0) {
binding.suggestionLayout.isVisible = false
binding.divider.isVisible = true
binding.tooltipButton.isVisible = true
binding.divider.isVisible = false
binding.tooltipButton.isVisible = false
widgetData?.toolTip?.let { setTooltipData(it) }
} else {
binding.tooltipButton.isVisible = false
@@ -206,9 +228,6 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
) {
val minUploadCheckValid = getUploadedDocsCount() >= widgetData?.minUpload.orZero()
isWidgetValid = isWidgetValid && minUploadCheckValid
if (!minUploadCheckValid) {
toggleErrorState(true, validationData?.errorText)
}
}
return isWidgetValid
@@ -239,7 +258,7 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
),
)
)
binding.documentUploadCountTv.isVisible = showCountText
binding.documentUploadCountTv.isVisible = false
if (showError) {
startAnimation(AnimationUtils.loadAnimation(context, R.anim.horizontal_shake))
postDelayed({ binding.listCardView.strokeColor = -1 }, 3000)
@@ -272,8 +291,8 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
}
private fun setSuggestionsData(tips: List<Tip>) {
binding.suggestionLayout.isVisible = tips.isNotEmpty()
binding.divider.isVisible = tips.isEmpty()
binding.suggestionLayout.isVisible = false
binding.divider.isVisible = false
if (tips.isNotEmpty()) {
binding.suggestionLayout.removeAllViews()

View File

@@ -96,7 +96,9 @@ constructor(context: Context, attrs: AttributeSet? = null) : LinearLayout(contex
fun areWidgetsValid(): Boolean {
var result = true
for (i in 0 until childCount) {
val count = childCount
if (count == 0) return false
for (i in 0 until count) {
val child = getChildAt(i) as? UploadCardWidgetView
result = result && child?.validateWidget().orTrue()
}

View File

@@ -9,18 +9,14 @@ package com.navi.insurance.chat.view
import android.content.Context
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Button
import androidx.databinding.ViewDataBinding
import androidx.recyclerview.widget.RecyclerView
import com.navi.insurance.common.models.Action
import com.navi.insurance.common.models.ButtonListData
import com.navi.insurance.common.models.ButtonViewData
import com.navi.insurance.common.models.ChatFooterInput
import com.navi.insurance.common.widgets.setData
import com.navi.insurance.databinding.FooterViewButtonListBinding
import com.navi.insurance.databinding.ItemButtonBinding
class ButtonListFooterView
@JvmOverloads
@@ -36,60 +32,49 @@ constructor(context: Context, attrs: AttributeSet? = null) : BaseChatFooterView(
this.binding = binding as? FooterViewButtonListBinding
val viewData = inputData.widgetData as? ButtonListData
this.binding?.header?.setData(viewData?.header?.title)
val buttons = viewData?.buttonList.orEmpty()
viewData
?.buttonList
?.takeIf { it.isNotEmpty() }
?.let { it ->
this.binding?.buttonList?.visibility = View.VISIBLE
this.binding?.buttonList?.adapter =
ButtonListAdapter(it) { action, buttonViewData ->
callback.invoke(
actionInterceptor.updateChatAction(
action,
chatAnswerConverter.convertStringAnswerToNextApiActionData(
buttonViewData?.id,
buttonViewData?.title?.text,
),
)
val primary = this.binding?.primaryButton
val secondary = this.binding?.secondaryButton
when (buttons.size) {
1 -> {
setButtonData(primary, buttons[0], callback)
}
2 -> {
setButtonData(primary, buttons[0], callback)
setButtonData(secondary, buttons[1], callback)
}
else -> {}
}
}
private fun setButtonData(
button: Button?,
buttonData: ButtonViewData,
callback: (action: Action) -> Unit,
) {
button?.apply {
setData(buttonData)
setOnClickListener {
buttonData.action?.let { action ->
callback.invoke(
actionInterceptor.updateChatAction(
action,
chatAnswerConverter.convertStringAnswerToNextApiActionData(
buttonData.id,
buttonData.title?.text,
),
)
sendEvent(action)
}
} ?: run { this.binding?.buttonList?.visibility = View.GONE }
)
sendEvent(action)
}
}
}
}
private fun sendEvent(action: Action) {
action.analyticsEvent?.let { insuranceAnalyticsHandler.sendEvent(it) }
}
}
class ButtonListAdapter(
private val buttonViewDataList: List<ButtonViewData>,
private val callback: (action: Action, buttonViewData: ButtonViewData?) -> Unit,
) : RecyclerView.Adapter<ButtonListViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ButtonListViewHolder {
val itemButtonBinding =
ItemButtonBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return ButtonListViewHolder(itemButtonBinding, callback)
}
override fun onBindViewHolder(holder: ButtonListViewHolder, position: Int) {
holder.setData(buttonViewDataList[position])
}
override fun getItemCount(): Int {
return buttonViewDataList.size
}
}
class ButtonListViewHolder(
private val binding: ItemButtonBinding,
private val callback: (action: Action, viewData: ButtonViewData?) -> Unit,
) : RecyclerView.ViewHolder(binding.root) {
fun setData(buttonViewData: ButtonViewData) {
binding.button.setData(buttonViewData, { action -> callback(action, buttonViewData) })
}
}

View File

@@ -4,10 +4,14 @@
<solid android:color="@color/white" />
<corners android:radius="@dimen/dp_20" />
<corners
android:topLeftRadius="@dimen/dp_20"
android:topRightRadius="@dimen/dp_20"
android:bottomRightRadius="@dimen/dp_4"
android:bottomLeftRadius="@dimen/dp_20"/>
<stroke
android:width="@dimen/dp_1"
android:color="@color/divider_color" />
android:color="@color/card_stroke" />
</shape>

View File

@@ -4,6 +4,9 @@
<solid android:color="@color/naviBorderLightGrey" />
<corners android:radius="@dimen/dp_20" />
<corners android:topLeftRadius="@dimen/dp_20"
android:topRightRadius="@dimen/dp_20"
android:bottomRightRadius="@dimen/dp_20"
android:bottomLeftRadius="@dimen/dp_4" />
</shape>

View File

@@ -16,7 +16,7 @@
android:shape="ring"
android:thicknessRatio="16"
android:useLevel="true">
<solid android:color="@color/blueberry" />
<solid android:color="@color/successColor" />
</shape>
</rotate>
</item>

View File

@@ -5,5 +5,5 @@
android:viewportHeight="40">
<path
android:pathData="M14.9997,3.333L11.6663,6.6663H6.6663C4.8304,6.6663 3.333,8.1637 3.333,9.9997V29.9997C3.333,31.8356 4.8304,33.333 6.6663,33.333H33.333C35.1689,33.333 36.6663,31.8356 36.6663,29.9997V9.9997C36.6663,8.1637 35.1689,6.6663 33.333,6.6663H28.333L24.9997,3.333H14.9997ZM19.9997,11.6663C24.6676,11.6663 28.333,15.3317 28.333,19.9997C28.333,24.6676 24.6676,28.333 19.9997,28.333C15.3317,28.333 11.6663,24.6676 11.6663,19.9997C11.6663,15.3317 15.3317,11.6663 19.9997,11.6663ZM19.9997,14.1663C16.777,14.1663 14.1663,16.777 14.1663,19.9997C14.1663,23.2223 16.777,25.833 19.9997,25.833C23.2223,25.833 25.833,23.2223 25.833,19.9997C25.833,16.777 23.2223,14.1663 19.9997,14.1663Z"
android:fillColor="@color/blueberry"/>
android:fillColor="@color/ctaPurplePrimaryColor"/>
</vector>

View File

@@ -5,5 +5,5 @@
android:viewportHeight="40">
<path
android:pathData="M33.333,10.0003H19.9997L16.6663,6.667H6.6663C4.833,6.667 3.333,8.167 3.333,10.0003V30.0003C3.333,31.8337 4.833,33.3337 6.6663,33.3337H33.333C35.1663,33.3337 36.6663,31.8337 36.6663,30.0003V13.3337C36.6663,11.5003 35.1663,10.0003 33.333,10.0003Z"
android:fillColor="@color/blueberry"/>
android:fillColor="@color/ctaPurplePrimaryColor"/>
</vector>

View File

@@ -5,5 +5,5 @@
android:viewportHeight="40">
<path
android:pathData="M5.0003,5C3.162,5 1.667,6.495 1.667,8.3333V25C1.667,26.8383 3.162,28.3333 5.0003,28.3333H26.667C28.5053,28.3333 30.0003,26.8383 30.0003,25V8.3333C30.0003,6.495 28.5053,5 26.667,5H5.0003ZM33.3337,11.6667V31.6667H8.3337V35H33.3337C35.1554,35 36.667,33.4884 36.667,31.6667V11.6667H33.3337ZM20.2412,14.9805L27.6143,25H4.0531L9.8929,17.5553L14.2516,22.8027L20.2412,14.9805Z"
android:fillColor="@color/blueberry"/>
android:fillColor="@color/ctaPurplePrimaryColor"/>
</vector>

View File

@@ -13,5 +13,5 @@
<solid android:color="#F5F5F5" />
<!-- The radius makes the corners rounded -->
<corners android:radius="15dp" />
<corners android:radius="4dp" />
</shape>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- View background color -->
<solid android:color="#F5F5F5" />
<!-- The radius makes the corners rounded -->
<corners android:radius="4dp" />
</shape>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/color_f5f5f5" />
<corners
android:topLeftRadius="@dimen/dp_0"
android:topRightRadius="@dimen/dp_0"
android:bottomLeftRadius="@dimen/dp_8"
android:bottomRightRadius="@dimen/dp_8" />
<stroke
android:width="1dp"
android:color="@color/border_grey_color" />
</shape>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#EAF2FF" />
<corners android:radius="4dp" />
</shape>

View File

@@ -0,0 +1,13 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M12,0C18.627,0 24,5.373 24,12C24,18.627 18.627,24 12,24C5.373,24 0,18.627 0,12C0,5.373 5.373,0 12,0Z"
android:fillColor="#1F002A" />
<path
android:pathData="M6.707,5.293L5.293,6.707L10.586,12L5.293,17.293L6.707,18.707L12,13.414L17.293,18.707L18.707,17.293L13.414,12L18.707,6.707L17.293,5.293L12,10.586L6.707,5.293Z"
android:fillColor="#FFFFFF"/>
</vector>

View File

@@ -8,16 +8,23 @@
android:padding="@dimen/dp_8"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/document_preview_image"
android:layout_width="@dimen/dp_0"
android:layout_height="@dimen/dp_0"
android:src="@drawable/add_document_ic"
<FrameLayout
android:id="@+id/square_box"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/dashed_grey_border"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="H,1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintEnd_toEndOf="parent">
<ImageView
android:id="@+id/document_preview_image"
android:layout_width="@dimen/dp_24"
android:layout_height="@dimen/dp_24"
android:src="@drawable/ic_plus_circle"
android:layout_gravity="center" />
</FrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

View File

@@ -23,7 +23,9 @@
android:id="@+id/text_view_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/navi_body_regular"
android:fontFamily="@font/navi_headline_regular"
android:textColor="@color/dim_grey"
android:textSize="@dimen/sp_20"
android:textAppearance="@style/TextAppearance.AppCompat.Large"
app:layout_constraintBottom_toBottomOf="@+id/progress_bar"
app:layout_constraintEnd_toEndOf="@+id/progress_bar"

View File

@@ -57,9 +57,13 @@
android:id="@+id/camera_picker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_30"
android:layout_marginStart="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_32"
android:layout_marginBottom="@dimen/dp_32"
android:layout_marginEnd="@dimen/dp_20"
android:background="@drawable/rounded_rectangle_8dp_dark_grey_stroke"
android:paddingHorizontal="@dimen/dp_24"
android:paddingVertical="@dimen/dp_12"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/gallery_picker"
@@ -81,7 +85,7 @@
android:layout_marginTop="@dimen/dp_4"
android:fontFamily="@font/navi_headline_regular"
android:text="@string/picker_camera"
android:textColor="@color/blueberry"
android:textColor="@color/title_text_purple_color"
android:textSize="@dimen/sp_14" />
</LinearLayout>
@@ -92,6 +96,10 @@
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_32"
android:layout_marginBottom="@dimen/dp_32"
android:layout_marginEnd="@dimen/dp_20"
android:background="@drawable/rounded_rectangle_8dp_dark_grey_stroke"
android:paddingHorizontal="@dimen/dp_24"
android:paddingVertical="@dimen/dp_12"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/file_picker"
@@ -111,7 +119,7 @@
android:layout_marginTop="@dimen/dp_4"
android:fontFamily="@font/navi_headline_regular"
android:text="@string/picker_gallery"
android:textColor="@color/blueberry"
android:textColor="@color/title_text_purple_color"
android:textSize="@dimen/sp_14" />
</LinearLayout>
@@ -121,8 +129,11 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_32"
android:layout_marginEnd="@dimen/dp_30"
android:layout_marginEnd="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_32"
android:background="@drawable/rounded_rectangle_8dp_dark_grey_stroke"
android:paddingHorizontal="@dimen/dp_24"
android:paddingVertical="@dimen/dp_12"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
@@ -142,7 +153,7 @@
android:layout_marginTop="@dimen/dp_4"
android:fontFamily="@font/navi_headline_regular"
android:text="@string/picker_file"
android:textColor="@color/blueberry"
android:textColor="@color/title_text_purple_color"
android:textSize="@dimen/sp_14" />
</LinearLayout>

View File

@@ -18,10 +18,8 @@
android:paddingTop="@dimen/dp_16"
android:paddingBottom="@dimen/dp_16"
android:src="@drawable/cross_black"
app:layout_constraintBottom_toBottomOf="@+id/preview_image_name"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/pdfLayout"/>
app:layout_constraintTop_toTopOf="parent" />
<com.navi.design.textview.NaviTextView

View File

@@ -5,7 +5,7 @@
<com.navi.insurance.chat.view.ButtonListFooterView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/naviBorderDarkGrey">
android:background="@color/backgroundPrimaryColor">
<com.navi.design.textview.NaviTextView
android:id="@+id/header"
@@ -23,19 +23,59 @@
app:layout_constraintTop_toTopOf="parent"
tools:text="tap to select" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/buttonList"
android:layout_width="0dp"
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/buttonContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_6"
android:layout_marginBottom="@dimen/dp_6"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
android:layout_marginHorizontal="@dimen/dp_8"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/header"
tools:itemCount="2"
tools:listitem="@layout/item_button" />
app:layout_constraintTop_toBottomOf="@+id/header">
<Button
android:id="@+id/secondaryButton"
android:layout_width="0dp"
android:layout_height="@dimen/dp_54"
android:layout_marginHorizontal="@dimen/dp_8"
android:layout_marginBottom="@dimen/dp_12"
android:elevation="@dimen/dp_0"
style="?android:attr/borderlessButtonStyle"
android:paddingHorizontal="@dimen/dp_30"
android:background="@drawable/rounded_rectangle_grey_4_radius"
android:text="@string/submit"
android:textColor="@color/poisonous_purple"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toStartOf="@+id/primaryButton"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:textAllCaps="false"
app:layout_constraintHorizontal_chainStyle="spread"
android:visibility="gone"/>
<Button
android:id="@+id/primaryButton"
android:layout_width="0dp"
android:layout_height="@dimen/dp_54"
android:layout_marginHorizontal="@dimen/dp_8"
android:layout_marginBottom="@dimen/dp_12"
android:elevation="@dimen/dp_0"
style="?android:attr/borderlessButtonStyle"
android:paddingHorizontal="@dimen/dp_30"
android:background="@drawable/rounded_purple_button"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/sp_14"
android:text="@string/submit"
android:textColor="@color/buttonTitleColor"
app:layout_constraintStart_toEndOf="@+id/secondaryButton"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:textAllCaps="false"
app:layout_constraintBottom_toBottomOf="parent"
android:visibility="gone"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.navi.insurance.chat.view.ButtonListFooterView>
</layout>

View File

@@ -5,7 +5,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/naviBorderDarkGrey">
android:background="@color/white">
<com.navi.insurance.chat.view.NaviRadioGroup
android:id="@+id/optionsRadioGroup"
@@ -28,7 +28,7 @@
android:layout_marginBottom="@dimen/dp_24"
style="@style/ButtonFontStylePurple"
android:textAllCaps="false"
android:fontFamily="@font/navi_body_regular"
android:fontFamily="@font/navi_body_demi_bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -59,10 +59,10 @@
<CheckBox
android:id="@+id/checkBox"
style="@style/NoRippleCheckbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingEnd="@dimen/dp_2"
android:buttonTint="@drawable/purple_radio_button_tint_selector"
app:layout_constraintBottom_toBottomOf="@+id/title"
app:layout_constraintStart_toStartOf="@id/leftGuide"
app:layout_constraintTop_toTopOf="@+id/title"

View File

@@ -7,6 +7,7 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/backgroundPrimaryColor"
android:clickable="true"
android:focusable="true"
android:orientation="vertical">
@@ -24,17 +25,24 @@
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_0"
android:layout_marginTop="@dimen/dp_16"
android:visibility="gone"
android:fillViewport="true"
app:layout_constraintBottom_toTopOf="@+id/footerContainer"
app:layout_constraintTop_toBottomOf="@+id/headerContainer"
tools:visibility="visible">
<LinearLayout
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/naviBorderLightGrey"
android:orientation="vertical">
android:background="@drawable/rounded_rect_light_grey_border_8dp_radius"
android:orientation="vertical"
android:layout_marginHorizontal="@dimen/_16dp">
<com.navi.design.textview.NaviTextView
@@ -42,12 +50,26 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:layout_marginVertical="@dimen/dp_24"
android:layout_marginTop="@dimen/dp_16"
android:layout_marginBottom="@dimen/dp_4"
android:fontFamily="@font/navi_headline_regular"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_20"
tools:text="Enter Pavan Kumar's Details" />
<com.navi.design.textview.NaviTextView
android:id="@+id/topHeaderSubTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_24"
android:fontFamily="@font/navi_headline_regular"
android:textColor="@color/font_light_gray"
android:textSize="@dimen/sp_14"
tools:text="Where the claim amount will be sent"
android:visibility="visible"/>
<com.navi.design.textview.NaviTextView
android:layout_width="match_parent"
@@ -86,7 +108,7 @@
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/dp_24"
android:src="@drawable/arrow_down_without_tail" />
android:src="@drawable/ic_search" />
</RelativeLayout>
<com.navi.design.textview.NaviTextView
@@ -103,52 +125,6 @@
tools:text="Please enter bank name"
tools:visibility="invisible" />
<com.navi.design.textview.NaviTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_8"
android:fontFamily="@font/navi_body_regular"
android:text="@string/account_number"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_14" />
<com.navi.insurance.common.widgets.ClickableEditTextContainer
android:id="@+id/accountNumberLayout"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_52"
android:layout_marginHorizontal="@dimen/dp_20">
<EditText
android:id="@+id/account_number"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/rounded_rectangle_grey_border_4dp_radius"
android:fontFamily="@font/navi_body_regular"
android:hint="@string/enter_as_per_bank_records"
android:inputType="number"
android:paddingStart="@dimen/dp_12"
android:paddingEnd="@dimen/dp_12"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_14"
tools:ignore="RtlSymmetry" />
</com.navi.insurance.common.widgets.ClickableEditTextContainer>
<com.navi.design.textview.NaviTextView
android:id="@+id/account_number_error"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:fontFamily="@font/navi_body_regular"
android:textColor="@color/red_brick"
android:layout_marginBottom="@dimen/dp_16"
android:textSize="@dimen/sp_12"
android:visibility="invisible"
tools:text="Incorrect account number"
tools:visibility="invisible" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -173,8 +149,8 @@
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:fontFamily="@font/navi_body_regular"
android:text="@string/search_for_ifsc_code"
android:textColor="@color/blueberry"
android:text="@string/find_ifsc"
android:textColor="@color/purple_button_color"
android:visibility="gone"
android:textSize="@dimen/sp_14" />
</RelativeLayout>
@@ -231,7 +207,56 @@
app:layout_constraintTop_toTopOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<com.navi.design.textview.NaviTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_8"
android:fontFamily="@font/navi_body_regular"
android:text="@string/account_number"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_14" />
<com.navi.insurance.common.widgets.ClickableEditTextContainer
android:id="@+id/accountNumberLayout"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_52"
android:layout_marginHorizontal="@dimen/dp_20">
<EditText
android:id="@+id/account_number"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/rounded_rectangle_grey_border_4dp_radius"
android:fontFamily="@font/navi_body_regular"
android:hint="@string/enter_as_per_bank_records"
android:inputType="number"
android:paddingStart="@dimen/dp_12"
android:paddingEnd="@dimen/dp_12"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_14"
tools:ignore="RtlSymmetry" />
</com.navi.insurance.common.widgets.ClickableEditTextContainer>
<com.navi.design.textview.NaviTextView
android:id="@+id/account_number_error"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_20"
android:fontFamily="@font/navi_body_regular"
android:textColor="@color/red_brick"
android:layout_marginBottom="@dimen/dp_8"
android:textSize="@dimen/sp_12"
android:visibility="invisible"
tools:text="Incorrect account number"
tools:visibility="invisible" />
</LinearLayout>
</FrameLayout>
</ScrollView>
<FrameLayout
@@ -241,21 +266,84 @@
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:layout_height="@dimen/dp_100" />
tools:layout_height="@dimen/dp_100"
android:elevation="@dimen/dp_28"
android:background="@color/backgroundPrimaryColor"/>
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progressBar"
android:layout_width="@dimen/dp_80"
android:layout_height="@dimen/dp_80"
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerViewContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/progress_loader_purple"
app:lottie_speed="1.0" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_80"
android:visibility="visible">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<View
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_gravity="start"
android:layout_marginEnd="@dimen/dp_200"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_gravity="start"
android:layout_marginTop="16dp"
android:layout_marginEnd="@dimen/dp_100"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_gravity="start"
android:layout_marginEnd="@dimen/dp_180"
android:layout_marginTop="24dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_gravity="start"
android:layout_marginTop="16dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_gravity="start"
android:layout_marginEnd="@dimen/dp_180"
android:layout_marginTop="24dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_gravity="start"
android:layout_marginTop="16dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_gravity="start"
android:layout_marginEnd="@dimen/dp_180"
android:layout_marginTop="24dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_gravity="start"
android:layout_marginTop="16dp"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
</LinearLayout>
</com.facebook.shimmer.ShimmerFrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -63,21 +63,26 @@
app:layout_constraintBottom_toBottomOf="parent"
tools:layout_height="80dp" />
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progressBar"
android:layout_width="@dimen/dp_80"
android:layout_height="@dimen/dp_80"
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerViewContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/progress_loader_purple"
app:lottie_speed="1.0"
tools:visibility="visible" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:visibility="visible">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include layout="@layout/upload_doc_screen_shimmer" />
<include layout="@layout/upload_doc_screen_shimmer" />
</LinearLayout>
</com.facebook.shimmer.ShimmerFrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

View File

@@ -21,7 +21,7 @@
android:id="@+id/document_summary_layout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@color/naviBorderLightGrey"
android:background="@color/backgroundPrimaryColor"
app:layout_constraintBottom_toTopOf="@id/footerContainer"
app:layout_constraintTop_toBottomOf="@id/headerContainer">
@@ -43,19 +43,54 @@
app:layout_constraintStart_toStartOf="parent"
tools:layout_height="80dp" />
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progressBar"
android:layout_width="@dimen/dp_80"
android:layout_height="@dimen/dp_80"
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerViewContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/progress_loader_purple"
app:lottie_speed="1.0" />
app:layout_constraintTop_toBottomOf="@+id/document_summary_layout"
app:layout_constraintStart_toStartOf="@+id/document_summary_layout"
app:layout_constraintEnd_toEndOf="@+id/document_summary_layout"
android:visibility="visible">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<View
android:layout_width="160dp"
android:layout_height="160dp"
android:layout_gravity="center"
android:background="@drawable/navi_common_bg_grey_8dp_radius"
android:layout_marginTop="@dimen/dp_100"/>
<View
android:layout_width="325dp"
android:layout_height="60dp"
android:layout_gravity="center"
android:background="@drawable/navi_common_bg_grey_8dp_radius"
android:layout_marginTop="@dimen/dp_50"/>
<View
android:layout_width="325dp"
android:layout_height="60dp"
android:layout_gravity="center"
android:background="@drawable/navi_common_bg_grey_8dp_radius"
android:layout_marginTop="@dimen/dp_16"/>
<View
android:layout_width="325dp"
android:layout_height="60dp"
android:layout_gravity="center"
android:background="@drawable/navi_common_bg_grey_8dp_radius"
android:layout_marginTop="@dimen/dp_16"/>
<View
android:layout_width="325dp"
android:layout_height="60dp"
android:layout_gravity="center"
android:background="@drawable/navi_common_bg_grey_8dp_radius"
android:layout_marginTop="@dimen/dp_16"/>
</LinearLayout>
</com.facebook.shimmer.ShimmerFrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

View File

@@ -25,7 +25,7 @@
android:fillViewport="true"
android:clipToPadding="false"
android:paddingVertical="@dimen/dp_10"
android:background="@color/naviBorderLightGrey"
android:background="@color/backgroundPrimaryColor"
app:layout_constraintBottom_toTopOf="@id/footerContainer"
app:layout_constraintTop_toBottomOf="@+id/headerContainer">
@@ -41,21 +41,31 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
tools:layout_height="80dp" />
tools:layout_height="80dp"
android:elevation="@dimen/dp_28"
android:background="@color/backgroundPrimaryColor"/>
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progressBar"
android:layout_width="@dimen/dp_80"
android:layout_height="@dimen/dp_80"
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerViewContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/progress_loader_purple"
app:lottie_speed="1.0" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:visibility="visible">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include layout="@layout/upload_doc_screen_shimmer" />
<include layout="@layout/upload_doc_screen_shimmer" />
</LinearLayout>
</com.facebook.shimmer.ShimmerFrameLayout>
<androidx.compose.ui.platform.ComposeView
android:id="@+id/snackbar_container"

View File

@@ -14,6 +14,8 @@
android:id="@+id/headerContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="@dimen/dp_28"
android:background="@color/backgroundPrimaryColor"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
@@ -50,6 +52,8 @@
android:id="@+id/footerContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/backgroundPrimaryColor"
android:elevation="@dimen/dp_28"
app:layout_constraintBottom_toTopOf="@+id/bannerContainer"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -81,7 +81,7 @@
android:layout_weight="1"
android:fontFamily="@font/navi_headline_regular"
android:gravity="end"
android:textColor="@color/blueberry"
android:textColor="@color/title_text_purple_color"
android:textSize="@dimen/font_small"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
@@ -112,6 +112,7 @@
android:id="@+id/show_more_title"
style="@style/MediumBoldBlueTextFontStyle"
android:textColor="@color/poisonous_purple"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/sp_14"
@@ -119,39 +120,27 @@
<ImageView
android:id="@+id/show_more_icon"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_8"
android:layout_marginStart="@dimen/dp_8"
android:src="@drawable/arrow_down_without_tail" />
android:layout_width="@dimen/dp_16"
android:layout_height="@dimen/dp_16"
android:layout_marginStart="@dimen/dp_4"
android:src="@drawable/arrow_down_without_tail"
tools:visibility="visible"/>
</LinearLayout>
<com.navi.design.textview.NaviTextView
android:id="@+id/loader_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progress_lottie"
android:layout_width="@dimen/dp_32"
android:layout_height="@dimen/dp_20"
android:layout_margin="@dimen/dp_16"
android:fontFamily="@font/navi_body_regular"
android:text="@string/upload_loader_text"
android:textColor="@color/blueberry"
android:textSize="@dimen/sp_14"
android:visibility="gone"
app:lottie_url="https://public-assets.prod.navi-gi.in/mas/lottie/purple_dots_loader.json"
app:lottie_loop="true"
app:lottie_autoPlay="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/document_review_grid"
tools:visibility="visible" />
<ProgressBar
android:id="@+id/loader_icon"
android:layout_width="@dimen/dp_16"
android:layout_height="@dimen/dp_16"
android:layout_marginStart="@dimen/dp_4"
android:indeterminateDrawable="@drawable/documents_loader_progressbar"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/loader_text"
app:layout_constraintStart_toEndOf="@+id/loader_text"
tools:visibility="visible" />
tools:visibility="visible"/>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -11,12 +11,12 @@
android:layout_marginBottom="@dimen/dp_12"
android:elevation="@dimen/dp_0"
style="?android:attr/borderlessButtonStyle"
android:background="@drawable/button_border_line"
android:fontFamily="@font/navi_body_regular"
android:paddingHorizontal="@dimen/dp_20"
android:textAlignment="viewStart"
android:background="@drawable/rounded_purple_button"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/sp_14"
android:paddingHorizontal="@dimen/dp_30"
android:textAllCaps="false"
android:textColor="@color/blueberry"
android:textColor="@color/buttonTitleColor"
tools:text="Select Hospital" />
</layout>

View File

@@ -13,6 +13,7 @@
android:layout_marginTop="@dimen/dp_10"
android:clickable="false"
android:focusable="false"
android:buttonTint="@color/purple_button_color"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:checked="true" />
@@ -59,7 +60,8 @@
android:layout_height="@dimen/dp_1"
android:layout_marginStart="@dimen/dp_8"
android:layout_marginTop="@dimen/dp_16"
android:background="@color/divider_color"
android:background="@color/zircon_grey"
android:layout_marginEnd="@dimen/dp_16"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/radioButton"
app:layout_constraintTop_toBottomOf="@+id/subTitle" />

View File

@@ -14,7 +14,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:strokeColor="@color/white"
app:strokeWidth="@dimen/dp_1"
app:strokeWidth="@dimen/dp_0"
card_view:cardCornerRadius="@dimen/dp_8"
android:outlineSpotShadowColor="@color/shadowColor"
tools:targetApi="p"
@@ -23,256 +23,336 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="@dimen/dp_14"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/checkbox_layout"
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
app:layout_constraintTop_toTopOf="parent"
tools:visibility="visible">
android:paddingVertical="@dimen/dp_14"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.AppCompatCheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:buttonTint="@drawable/purple_radio_button_tint_selector"
android:layout_marginStart="@dimen/dp_8"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:minWidth="@dimen/dp_0"
android:minHeight="@dimen/dp_0"
tools:ignore="RtlSymmetry" />
<com.navi.design.textview.NaviTextView
android:id="@+id/checkbox_title"
style="@style/MediumTextFontBoldStyle"
android:layout_width="@dimen/dp_0"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_2"
android:layout_marginEnd="@dimen/dp_8"
app:layout_constraintBottom_toBottomOf="@id/checkBox"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/checkBox"
app:layout_constraintTop_toTopOf="@id/checkBox"
tools:text="Looking to start new claim?" />
<View
android:id="@+id/checkbox_divider"
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/checkbox_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginTop="@dimen/dp_18"
android:layout_marginBottom="@dimen/dp_14"
android:background="@color/divider_color_gray"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_height="wrap_content"
android:visibility="gone"
app:layout_constraintTop_toTopOf="parent"
tools:visibility="visible">
<androidx.appcompat.widget.AppCompatCheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:buttonTint="@drawable/purple_radio_button_tint_selector"
android:background="?attr/selectableItemBackgroundBorderless"
android:layout_marginStart="@dimen/dp_8"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:minWidth="@dimen/dp_0"
android:minHeight="@dimen/dp_0"
tools:ignore="RtlSymmetry" />
<com.navi.design.textview.NaviTextView
android:id="@+id/checkbox_title"
style="@style/MediumTextFontBoldStyle"
android:layout_width="@dimen/dp_0"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_2"
android:layout_marginEnd="@dimen/dp_8"
app:layout_constraintBottom_toBottomOf="@id/checkBox"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/checkBox"
app:layout_constraintTop_toTopOf="@id/checkBox"
tools:text="Looking to start new claim?" />
<View
android:id="@+id/checkbox_divider"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginTop="@dimen/dp_18"
android:layout_marginBottom="@dimen/dp_14"
android:background="@color/divider_color_gray"
app:layout_constraintBottom_toBottomOf="parent"
tools:visibility="visible"
app:layout_constraintTop_toBottomOf="@id/checkbox_title" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/body_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/dp_6"
tools:visibility="visible"
app:layout_constraintTop_toBottomOf="@id/checkbox_title" />
app:layout_constraintTop_toBottomOf="@id/checkbox_layout">
<com.navi.design.textview.NaviTextView
android:id="@+id/left_text_view"
style="@style/MediumBoldBlackTextFontStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_marginTop="@dimen/dp_6"
android:layout_marginHorizontal="@dimen/dp_16"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/font_medium"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toStartOf="@+id/guideline"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Lorems Aadhaar card lorem aadhar card"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/tooltip_button"
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:layout_marginStart="@dimen/dp_4"
android:layout_marginTop="@dimen/dp_7"
android:padding="@dimen/dp_2"
android:visibility="gone"
app:layout_constraintStart_toEndOf="@+id/left_text_view"
app:layout_constraintTop_toTopOf="parent"
tools:src="@drawable/ic_upload_info"
tools:visibility="invisible" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/tooltip_triangle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp_4"
android:src="@drawable/tooltip_top_triangle"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="@+id/tooltip_button"
app:layout_constraintStart_toStartOf="@+id/tooltip_button"
app:layout_constraintTop_toBottomOf="@id/tooltip_button"
tools:visibility="visible" />
<LinearLayout
android:id="@+id/tooltip_data_layout"
android:layout_width="@dimen/dp_0"
android:layout_height="wrap_content"
android:background="@drawable/tooltip_background"
android:elevation="@dimen/dp_8"
android:orientation="vertical"
android:paddingVertical="@dimen/dp_6"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="@id/guideline_right"
app:layout_constraintStart_toStartOf="@id/guideline_left"
app:layout_constraintTop_toBottomOf="@+id/tooltip_triangle"
tools:visibility="visible"/>
<com.navi.design.textview.NaviTextView
android:id="@+id/left_text_view_subtitle"
style="@style/MediumBoldBlackTextFontStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_4"
android:layout_gravity="start"
android:alpha="0.5"
android:fontFamily="@font/navi_headline_regular"
android:textSize="@dimen/font_small"
app:layout_constraintStart_toStartOf="@+id/left_text_view"
app:layout_constraintTop_toBottomOf="@+id/left_text_view"
tools:text="(optional)"
tools:visibility="visible" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.6" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.1" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.8" />
<com.navi.design.textview.NaviTextView
android:id="@+id/right_text_view"
style="@style/MediumBoldBlueTextFontStyle"
android:textColor="@color/titleTertiaryColor"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_6"
android:layout_weight="1"
android:fontFamily="@font/navi_headline_regular"
android:gravity="end"
android:textSize="@dimen/sp_14"
app:layout_constraintEnd_toStartOf="@+id/right_text_icon"
app:layout_constraintTop_toTopOf="parent"
tools:text="See Sample"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/right_text_icon"
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_16"
tools:src="@drawable/arrow_forward_black_one"/>
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginVertical="@dimen/dp_16"
android:background="@color/divider_color_gray"
app:layout_constraintTop_toBottomOf="@id/left_text_view_subtitle"
android:visibility="gone"/>
<LinearLayout
android:id="@+id/suggestion_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginVertical="@dimen/dp_16"
android:background="@drawable/rounded_rectangle_grey_border_8dp_radius"
android:orientation="vertical"
android:paddingVertical="@dimen/dp_4"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@id/divider"
tools:visibility="visible">
</LinearLayout>
<com.navi.design.textview.NaviTextView
android:id="@+id/document_upload_count_tv"
style="@style/SmallTextSemiBoldGreyFontStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_16"
android:layout_marginBottom="@dimen/dp_4"
android:alpha="0.7"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@+id/suggestion_layout"
tools:text="2 documents uploaded"
tools:visibility="visible" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/upload_document_grid"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_8"
android:layout_marginTop="@dimen/dp_12"
android:paddingTop="@dimen/dp_8"
app:layout_constraintTop_toBottomOf="@+id/document_upload_count_tv">
</androidx.recyclerview.widget.RecyclerView>
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progress_lottie"
android:layout_width="@dimen/dp_32"
android:layout_height="@dimen/dp_20"
android:layout_marginStart="@dimen/dp_20"
android:visibility="visible"
app:lottie_url="https://public-assets.prod.navi-gi.in/mas/lottie/purple_dots_loader.json"
app:lottie_loop="true"
app:lottie_autoPlay="true"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/upload_document_grid" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/info_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/rounded_rectangle_light_blue_radius_4"
android:paddingVertical="@dimen/dp_8"
android:paddingHorizontal="@dimen/dp_12"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_16"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@id/progress_lottie"
app:layout_constraintBottom_toBottomOf="parent"
tools:visibility="visible" >
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/info_icon"
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginTop="@dimen/dp_2"
tools:src="@drawable/info_button"/>
<com.navi.design.textview.NaviTextView
android:id="@+id/info_text"
style="@style/MediumBoldBlackTextFontStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:fontFamily="@font/navi_headline_regular"
android:textSize="@dimen/sp_12"
app:layout_constrainedWidth="true"
app:layout_constraintStart_toEndOf="@id/info_icon"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginStart="@dimen/dp_8"
tools:text="Uploading this increase your claim approval chances significantly" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/body_layout"
android:id="@+id/bottom_tag_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/dp_6"
tools:visibility="visible"
app:layout_constraintTop_toBottomOf="@id/checkbox_layout">
android:background="@drawable/rounded_rectangle_grey_bg_radius_8dp_with_border"
android:paddingVertical="@dimen/dp_8"
android:paddingHorizontal="@dimen/dp_12"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@id/card_view"
app:layout_constraintBottom_toBottomOf="parent"
tools:visibility="visible" >
<com.navi.design.textview.NaviTextView
android:id="@+id/left_text_view"
style="@style/MediumBoldBlackTextFontStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_marginTop="@dimen/dp_6"
android:layout_marginHorizontal="@dimen/dp_16"
android:fontFamily="@font/navi_headline_regular"
android:textSize="@dimen/font_small"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toStartOf="@+id/guideline"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Lorems Aadhaar card lorem aadhar card"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/tooltip_button"
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:layout_marginStart="@dimen/dp_4"
android:layout_marginTop="@dimen/dp_7"
android:padding="@dimen/dp_2"
android:visibility="gone"
app:layout_constraintStart_toEndOf="@+id/left_text_view"
app:layout_constraintTop_toTopOf="parent"
tools:src="@drawable/ic_upload_info"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/tooltip_triangle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp_4"
android:src="@drawable/tooltip_top_triangle"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="@+id/tooltip_button"
app:layout_constraintStart_toStartOf="@+id/tooltip_button"
app:layout_constraintTop_toBottomOf="@id/tooltip_button"
tools:visibility="visible" />
<LinearLayout
android:id="@+id/tooltip_data_layout"
android:layout_width="@dimen/dp_0"
android:layout_height="wrap_content"
android:background="@drawable/tooltip_background"
android:elevation="@dimen/dp_8"
android:orientation="vertical"
android:paddingVertical="@dimen/dp_6"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="@id/guideline_right"
app:layout_constraintStart_toStartOf="@id/guideline_left"
app:layout_constraintTop_toBottomOf="@+id/tooltip_triangle"
tools:visibility="visible"/>
<com.navi.design.textview.NaviTextView
android:id="@+id/left_text_view_subtitle"
style="@style/MediumBoldBlackTextFontStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:alpha="0.5"
android:fontFamily="@font/navi_headline_regular"
android:textSize="@dimen/font_small"
app:layout_constraintStart_toStartOf="@+id/left_text_view"
app:layout_constraintTop_toBottomOf="@+id/left_text_view"
tools:text="(optional)"
tools:visibility="visible" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.6" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline_left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.1" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.8" />
<com.navi.design.textview.NaviTextView
android:id="@+id/right_text_view"
style="@style/MediumBoldBlueTextFontStyle"
android:textColor="@color/blueberry"
android:id="@+id/bottom_tag_text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_6"
android:layout_weight="1"
android:fontFamily="@font/navi_headline_regular"
android:gravity="end"
android:textSize="@dimen/font_small"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="See Sample"
tools:visibility="visible" />
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginVertical="@dimen/dp_16"
android:background="@color/divider_color_gray"
app:layout_constraintTop_toBottomOf="@id/left_text_view_subtitle" />
<LinearLayout
android:id="@+id/suggestion_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginVertical="@dimen/dp_16"
android:background="@drawable/rounded_rectangle_grey_border_8dp_radius"
android:orientation="vertical"
android:paddingVertical="@dimen/dp_4"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@id/divider"
tools:visibility="visible">
</LinearLayout>
<com.navi.design.textview.NaviTextView
android:id="@+id/document_upload_count_tv"
style="@style/SmallTextSemiBoldGreyFontStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_16"
android:layout_marginBottom="@dimen/dp_4"
android:alpha="0.7"
android:visibility="gone"
app:layout_constraintTop_toBottomOf="@+id/suggestion_layout"
tools:text="2 documents uploaded"
tools:visibility="visible" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/upload_document_grid"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_8"
android:layout_marginTop="@dimen/dp_12"
android:paddingTop="@dimen/dp_8"
app:layout_constraintTop_toBottomOf="@+id/document_upload_count_tv">
</androidx.recyclerview.widget.RecyclerView>
<com.navi.design.textview.NaviTextView
android:id="@+id/loader_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/dp_16"
android:fontFamily="@font/navi_body_regular"
android:text="@string/upload_loader_text"
android:textColor="@color/blueberry"
android:textSize="@dimen/sp_14"
app:layout_constraintEnd_toEndOf="parent"
android:textSize="@dimen/sp_12"
android:textColor="@color/text_secondary_color"
app:layout_constrainedWidth="true"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/upload_document_grid"
tools:visibility="visible" />
<ProgressBar
android:id="@+id/loader_icon"
android:layout_width="@dimen/dp_16"
android:layout_height="@dimen/dp_16"
android:layout_marginStart="@dimen/dp_4"
android:indeterminateDrawable="@drawable/documents_loader_progressbar"
android:visibility="visible"
app:layout_constraintBottom_toBottomOf="@id/loader_text"
app:layout_constraintStart_toEndOf="@+id/loader_text" />
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginStart="@dimen/dp_8"
tools:text="Max 10 documents of file size: 5MB each allowed" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.card.MaterialCardView>
</layout>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginVertical="@dimen/dp_32"
android:layout_marginHorizontal="@dimen/dp_16">
<View
android:id="@+id/left_topView"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_gravity="start"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
<View
android:id="@+id/right_view"
android:layout_width="match_parent"
android:layout_height="48dp"
app:layout_constraintTop_toBottomOf="@+id/left_topView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginTop="@dimen/dp_24"
android:background="@drawable/navi_common_bg_grey_8dp_radius" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -14,19 +14,21 @@
android:id="@+id/document_preview_card"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_0"
app:cardCornerRadius="@dimen/dp_8"
app:cardCornerRadius="@dimen/dp_4"
app:cardElevation="@dimen/dp_1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_height="match_parent"
android:background="@drawable/purple_border_bg_rounded_4">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/document_preview_image"
android:layout_width="@dimen/dp_0"
android:layout_height="@dimen/dp_0"
android:layout_margin="@dimen/dp_1"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
@@ -45,19 +47,19 @@
app:layout_constraintTop_toTopOf="parent"
tools:visibility="visible" />
<ProgressBar
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/progress_bar"
android:layout_width="@dimen/dp_40"
android:layout_height="@dimen/dp_40"
android:indeterminate="true"
android:theme="@style/UploadProgressBar"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/progress_loader_purple"
app:layout_constraintTop_toTopOf="parent"
tools:progress="25"
tools:visibility="visible" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
tools:visibility="invisible" />
<com.navi.design.textview.NaviTextView
@@ -88,7 +90,7 @@
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:elevation="@dimen/dp_8"
android:src="@drawable/ic_round_dark_grey_cross"
android:src="@drawable/white_cross_icon_with_purple_background"
android:translationX="@dimen/dp_8"
android:translationY="@dimen/dp_12"
app:layout_constraintBottom_toTopOf="parent"

View File

@@ -6,29 +6,42 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/title_lottie"
android:layout_width="@dimen/dp_24"
android:layout_height="@dimen/dp_24"
android:layout_marginStart="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_16"
app:lottie_rawRes="@raw/progress_loader_purple"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.navi.design.textview.NaviTextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_16"
android:fontFamily="@font/navi_headline_regular"
android:layout_marginTop="@dimen/dp_8"
android:fontFamily="@font/navi_body_demi_bold"
android:text="@string/upload_in_progress"
android:textColor="@color/naviBlackText"
android:textSize="@dimen/sp_20"
android:textSize="@dimen/sp_16"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintTop_toBottomOf="@id/title_lottie" />
<com.navi.design.textview.NaviTextView
android:id="@+id/description"
style="@style/MediumTextFontStyle"
android:layout_width="@dimen/dp_0"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_8"
android:layout_marginEnd="@dimen/dp_20"
android:lineSpacingMultiplier="1.2"
android:textColor="@color/dim_grey"
android:text="@string/upload_in_progress_description"
android:textSize="@dimen/sp_14"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/title" />
@@ -42,7 +55,9 @@
android:layout_marginBottom="@dimen/dp_32"
android:text="@string/cancel_upload"
style="@style/ButtonFontStyleGreyBlack"
android:textSize="@dimen/sp_16"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/sp_14"
android:textColor="@color/ctaPurplePrimaryColor"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/wait_to_upload"
app:layout_constraintStart_toStartOf="parent"
@@ -58,7 +73,8 @@
android:text="@string/wait_to_upload"
android:textAllCaps="false"
style="@style/ButtonFontStylePurple"
android:textSize="@dimen/sp_16"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/sp_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/cancel_upload"

View File

@@ -17,26 +17,39 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/dp_16">
android:paddingHorizontal="@dimen/_16dp"
android:paddingVertical="@dimen/dp_20">
<com.navi.design.textview.NaviTextView
android:id="@+id/title"
style="@style/TitleBoldBlackStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/sp_16"
android:fontFamily="@font/navi_body_demi_bold"
android:textSize="@dimen/sp_14"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:textColor="@color/eerie_black"
tools:text="KYC" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/titleIcon"
android:layout_width="@dimen/dp_16"
android:layout_height="@dimen/dp_16"
android:layout_marginEnd="@dimen/dp_4"
android:layout_marginStart="@dimen/dp_12"
android:layout_marginTop="@dimen/dp_2"
android:src="@drawable/ic_check_green_48"
app:layout_constraintStart_toEndOf="@+id/title"
app:layout_constraintTop_toTopOf="parent"/>
<com.navi.design.textview.NaviTextView
android:id="@+id/subtitle"
style="@style/SmallTextSemiBoldGreyFontStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_4"
android:layout_marginTop="@dimen/dp_2"
android:textSize="@dimen/sp_12"
app:layout_constraintStart_toStartOf="@+id/title"
app:layout_constraintTop_toBottomOf="@+id/title"
@@ -47,7 +60,7 @@
android:layout_width="@dimen/dp_24"
android:layout_height="@dimen/dp_24"
android:layout_marginEnd="@dimen/dp_4"
android:src="@drawable/arrow_orange_forward_right"
android:src="@drawable/chevron_icon_black_gray_bg"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />

View File

@@ -18,9 +18,9 @@
android:theme="@style/Theme.MaterialComponents.Light"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
card_view:cardCornerRadius="@dimen/dp_8"
app:cardElevation="@dimen/dp_8"
android:outlineSpotShadowColor="@color/shadowColor"
card_view:cardCornerRadius="@dimen/dp_4"
app:strokeColor="@color/border_grey_color"
app:strokeWidth="@dimen/dp_1"
tools:targetApi="p">
<LinearLayout

View File

@@ -82,6 +82,8 @@
<color name="azureish_white">#DEE6F5</color> //Digital Claims
<color name="alice_blue">#EEF5FF</color> //Digital Claims
<color name="pastel_alice_blue_79">#4FF0F6FF</color> //Digital Claims
<color name="font_light_gray">#6B6B6B</color>
<color name="calender_theme_purple">#3C0050</color>
//Payu color scheme
<color name="one_payu_colorPrimary">#3C0050</color>

View File

@@ -314,6 +314,7 @@ I highly recommend Navi Health policy because of its comprehensive benefits with
<string name="ifsc_code">IFSC Code</string>
<string name="enter_ifsc_code_here">Enter IFSC Code here</string>
<string name="search_for_ifsc_code">Search for IFSC Code</string>
<string name="find_ifsc">Find IFSC</string>
<string name="details_cannot_be_changed">Details cannot be changed</string>
<string name="nominee_details">Nominee Details</string>
<string name="downloading_file">Downloading…</string>

View File

@@ -116,12 +116,15 @@
<item name="android:fontFamily">@font/navi_body_regular</item>
</style>
<style name="CalendarDatePickerDialog">
<style name="CalendarDatePickerDialog" parent="Theme.MaterialComponents.Light.Dialog">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/white</item>
<item name="android:backgroundDimEnabled">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:fontFamily">@font/navi_body_regular</item>
<item name="colorPrimary">@color/calender_theme_purple</item>
<item name="colorPrimaryVariant">@color/calender_theme_purple</item>
<item name="colorAccent">@color/calender_theme_purple</item>
</style>
<style name="NumberPickerStyle" parent="GiAppTheme">
@@ -403,13 +406,19 @@
<item name="tabIndicator">@drawable/navi_widgets_tab_indicator</item>
<item name="tabIndicatorFullWidth">false</item>
<item name="tabIndicatorHeight">@dimen/dp_4</item>
<item name="tabIndicatorColor">@color/poisonous_purple</item>
<item name="tabRippleColor">@null</item>
<item name="tabMode">scrollable</item>
<item name="tabGravity">start</item>
<item name="tabSelectedTextColor">@color/blueberry</item>
<item name="tabSelectedTextColor">@color/poisonous_purple</item>
<item name="tabTextAppearance">@style/ClaimsTabTextAppearance</item>
</style>
<style name="NoRippleCheckbox" parent="Widget.AppCompat.CompoundButton.CheckBox">
<item name="android:background">@null</item>
<item name="android:buttonTint">@drawable/purple_radio_button_tint_selector</item>
</style>
<style name="NaviSubTextStyle">
<item name="android:fontFamily">@font/navi_body_regular</item>
<item name="android:textSize">@dimen/sp_12</item>