diff --git a/navi-insurance/src/main/java/com/navi/insurance/claim/document/ui/DocumentPreviewFragment.kt b/navi-insurance/src/main/java/com/navi/insurance/claim/document/ui/DocumentPreviewFragment.kt
index 48f1b3b06c..6d9dbb9e82 100644
--- a/navi-insurance/src/main/java/com/navi/insurance/claim/document/ui/DocumentPreviewFragment.kt
+++ b/navi-insurance/src/main/java/com/navi/insurance/claim/document/ui/DocumentPreviewFragment.kt
@@ -52,6 +52,8 @@ import com.navi.insurance.navigator.NaviInsuranceDeeplinkNavigator
import com.navi.insurance.util.EMPTY
import com.navi.insurance.util.launchHelpCenter
import com.navi.naviwidgets.callbacks.WidgetCallback
+import com.navi.naviwidgets.extensions.setImageFieldData
+import com.navi.naviwidgets.extensions.setTextFieldData
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
import kotlinx.coroutines.launch
@@ -87,10 +89,10 @@ class DocumentPreviewFragment : GiBaseFragment(), WidgetCallback {
PermissionBottomSheet.getInstance(
PermissionData(
permissionType =
- listOf(
- Manifest.permission.READ_EXTERNAL_STORAGE,
- Manifest.permission.WRITE_EXTERNAL_STORAGE
- ),
+ listOf(
+ Manifest.permission.READ_EXTERNAL_STORAGE,
+ Manifest.permission.WRITE_EXTERNAL_STORAGE
+ ),
title = getString(R.string.read_permission_title),
description = getString(R.string.read_permission_description),
primaryBtnText = getString(R.string.permission_go_to_settings_text),
@@ -207,10 +209,10 @@ class DocumentPreviewFragment : GiBaseFragment(), WidgetCallback {
binding.progressBar.visibility = View.GONE
Timber.e(error)
Toast.makeText(
- context,
- getString(R.string.something_went_wrong),
- Toast.LENGTH_SHORT
- )
+ context,
+ getString(R.string.something_went_wrong),
+ Toast.LENGTH_SHORT
+ )
.show()
}
@@ -281,20 +283,29 @@ class DocumentPreviewFragment : GiBaseFragment(), WidgetCallback {
when (documentViewState) {
is DocumentPreviewState.Failure -> {
Toast.makeText(
- context,
- getString(R.string.something_went_wrong),
- Toast.LENGTH_SHORT
- )
+ context,
+ getString(R.string.something_went_wrong),
+ Toast.LENGTH_SHORT
+ )
.show()
}
is DocumentPreviewState.Success -> {
binding.previewImageName.text = documentViewState.data?.name ?: EMPTY
binding.previewImageName.isVisible = true
- if(showWebView) {
+ if (showWebView) {
binding.pdfView.isVisible = false
binding.progressBar.isVisible = false
- binding.webView.isVisible = true
- binding.webView.loadUrl(documentViewState.data?.htmlUrl.orEmpty())
+ documentViewState.data?.htmlUrl?.let {
+ binding.pageLayout.isVisible = false
+ binding.webView.isVisible = true
+ binding.webView.loadUrl(documentViewState.data.htmlUrl)
+ } ?: run {
+ binding.webView.isVisible = false
+ binding.titleImage.setImageFieldData(documentViewState.data?.pageData?.iconData)
+ binding.titleTv.setTextFieldData(documentViewState.data?.pageData?.title)
+ binding.subtitleTv.setTextFieldData(documentViewState.data?.pageData?.subTitle)
+ binding.pageLayout.isVisible = true
+ }
} else {
binding.webView.isVisible = false
binding.pdfView.isVisible = true
@@ -329,10 +340,10 @@ class DocumentPreviewFragment : GiBaseFragment(), WidgetCallback {
when (signCisDocumentState) {
is SignCisDocumentState.Failure -> {
Toast.makeText(
- context,
- getString(R.string.something_went_wrong),
- Toast.LENGTH_SHORT
- )
+ context,
+ getString(R.string.something_went_wrong),
+ Toast.LENGTH_SHORT
+ )
.show()
}
is SignCisDocumentState.Success -> {
@@ -402,4 +413,4 @@ class DocumentPreviewFragment : GiBaseFragment(), WidgetCallback {
companion object {
const val DOCUMENT_PREVIEW_FRAGMENT_TAG = "DocumentPreviewFragment"
}
-}
+}
\ No newline at end of file
diff --git a/navi-insurance/src/main/java/com/navi/insurance/common/models/DocumentPreviewResponse.kt b/navi-insurance/src/main/java/com/navi/insurance/common/models/DocumentPreviewResponse.kt
index 3133187371..f12be4d2ef 100644
--- a/navi-insurance/src/main/java/com/navi/insurance/common/models/DocumentPreviewResponse.kt
+++ b/navi-insurance/src/main/java/com/navi/insurance/common/models/DocumentPreviewResponse.kt
@@ -1,8 +1,7 @@
package com.navi.insurance.common.models
-
import com.google.gson.annotations.SerializedName
-
-
+import com.navi.naviwidgets.models.response.ImageFieldData
+import com.navi.naviwidgets.models.response.TextFieldData
data class DocumentPreviewResponse(
@SerializedName("header")
val header: NaviWidget? = null,
@@ -16,4 +15,14 @@ data class DocumentPreviewResponse(
val mimeType: String?,
@SerializedName("footer")
val footer: NaviWidget? = null,
+ @SerializedName("pageData")
+ val pageData: PageData? = null,
+)
+data class PageData(
+ @SerializedName("iconData")
+ val iconData: ImageFieldData? = null,
+ @SerializedName("title")
+ val title: TextFieldData?,
+ @SerializedName("subTitle")
+ val subTitle: TextFieldData? = null,
)
\ No newline at end of file
diff --git a/navi-insurance/src/main/res/layout/document_image_preview_fragment.xml b/navi-insurance/src/main/res/layout/document_image_preview_fragment.xml
index 22a88b7b9f..64d49b7278 100644
--- a/navi-insurance/src/main/res/layout/document_image_preview_fragment.xml
+++ b/navi-insurance/src/main/res/layout/document_image_preview_fragment.xml
@@ -24,7 +24,7 @@
app:layout_constraintBottom_toTopOf="@id/pdfLayout"/>
-
+
+
+
+
+
+
+
+
+
+
+
+