Hotfix to development (#8186)
This commit is contained in:
committed by
GitHub
parent
ac7894960d
commit
23d3ae5bb4
@@ -88,7 +88,7 @@ moengage-android-sdk = "12.6.02"
|
||||
moengage-inapp = "6.5.0"
|
||||
moengage-push-amp-plus = "6.2.1"
|
||||
moengage-rich-notification = "4.3.2"
|
||||
navi-uitron = "1.0.28-20231004.104806-1"
|
||||
navi-uitron = "1.0.30"
|
||||
navigation = "2.5.3"
|
||||
okhttp-bom = "4.11.0"
|
||||
otaliastudios-cameraview = "2.7.2"
|
||||
|
||||
@@ -22,7 +22,6 @@ import androidx.compose.runtime.MutableState
|
||||
import androidx.compose.runtime.State
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.snapshotFlow
|
||||
import androidx.compose.ui.ExperimentalComposeUiApi
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
@@ -58,6 +57,8 @@ fun BottomSheetRenderer(
|
||||
val modalBottomSheetState = rememberModalBottomSheetState(
|
||||
initialValue = ModalBottomSheetValue.Hidden,
|
||||
confirmValueChange = {
|
||||
if (sheetData.value.isCancellable.orFalse() && it == ModalBottomSheetValue.Hidden)
|
||||
bottomSheetVisibility.value = false
|
||||
sheetData.value.isCancellable.orFalse()
|
||||
},
|
||||
skipHalfExpanded = true
|
||||
@@ -65,11 +66,6 @@ fun BottomSheetRenderer(
|
||||
val keyboardController = LocalSoftwareKeyboardController.current
|
||||
val localContext = LocalContext.current
|
||||
val localView = LocalView.current
|
||||
LaunchedEffect(modalBottomSheetState) {
|
||||
snapshotFlow { modalBottomSheetState.isVisible }.collect { isVisible ->
|
||||
bottomSheetVisibility.value = isVisible
|
||||
}
|
||||
}
|
||||
LaunchedEffect(bottomSheetVisibility.value) {
|
||||
bottomSheetVisibility.value?.let {
|
||||
if (it) {
|
||||
|
||||
@@ -31,6 +31,7 @@ import com.navi.ap.utils.constants.APP_ACTION
|
||||
import com.navi.ap.utils.constants.APP_CONFIG_VERSION
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_APPLICATION_ID
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_APPLICATION_TYPE
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_BACK_SCREEN_ID
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_SCREEN_HASH
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_SCREEN_ID
|
||||
import com.navi.ap.utils.constants.APP_PLATFORM_VERTICAL_TYPE
|
||||
@@ -82,7 +83,6 @@ fun InitScreenComponent(
|
||||
if (renderScaffoldState) {
|
||||
viewModel.getScreenStructureSuccessState()?.let {
|
||||
ScreenRenderer(screenDefinitionStructure = it, viewModel = viewModel)
|
||||
activity.updateLoaderState(false)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -179,7 +179,7 @@ private fun submitScreenHash(viewModel: LambdaVM, action: String? = null) {
|
||||
hashKey = viewModel.getMetaData(APP_PLATFORM_SCREEN_HASH).orEmpty(),
|
||||
applicationId = viewModel.getQueryMap()[APP_PLATFORM_APPLICATION_ID],
|
||||
action = action ?: viewModel.getQueryMap()[APP_ACTION],
|
||||
fromScreen = viewModel.getQueryMap()[APP_PLATFORM_SCREEN_ID],
|
||||
fromScreen = viewModel.getQueryMap()[APP_PLATFORM_BACK_SCREEN_ID],
|
||||
configVersion = viewModel.getQueryMap()[APP_CONFIG_VERSION]
|
||||
)
|
||||
)
|
||||
|
||||
@@ -16,14 +16,12 @@ import com.navi.ap.common.models.ApScreenDefinitionState
|
||||
import com.navi.ap.common.models.ApScreenDefinitionStructure
|
||||
import com.navi.ap.common.models.ApplicationIdState
|
||||
import com.navi.ap.common.models.GetCtaState
|
||||
import com.navi.ap.common.models.ScreenType
|
||||
import com.navi.ap.common.models.WidgetModelDefinition
|
||||
import com.navi.ap.common.repository.ApplicationPlatformRepository
|
||||
import com.navi.ap.network.model.ApplicationHashRequestBody
|
||||
import com.navi.ap.network.model.ApplicationRequestBody
|
||||
import com.navi.ap.network.model.FillApplicationRequestBody
|
||||
import com.navi.ap.network.model.getBottomSheetStructure
|
||||
import com.navi.ap.network.model.getHideBottomSheetAction
|
||||
import com.navi.ap.utils.PeriodicTaskScheduler
|
||||
import com.navi.ap.utils.bundleToMap
|
||||
import com.navi.ap.utils.constants.APP_ACTION
|
||||
@@ -43,17 +41,16 @@ import com.navi.ap.utils.constants.CURRENT_SCREEN_ID
|
||||
import com.navi.ap.utils.constants.DEFAULT_SOURCE_SCREEN
|
||||
import com.navi.ap.utils.constants.NEXT_SCREEN_CTA
|
||||
import com.navi.ap.utils.constants.REASON
|
||||
import com.navi.ap.utils.constants.SCREEN_TYPE
|
||||
import com.navi.ap.utils.constants.SUBMIT_EVENT_HASH_EVENT
|
||||
import com.navi.ap.utils.helper.BottomSheetHelper
|
||||
import com.navi.ap.utils.toMap
|
||||
import com.navi.ap.utils.toMutableMap
|
||||
import com.navi.base.model.CtaData
|
||||
import com.navi.base.utils.isNotNull
|
||||
import com.navi.base.utils.orFalse
|
||||
import com.navi.common.CommonLibManager
|
||||
import com.navi.common.R
|
||||
import com.navi.common.constants.API_SUCCESS_CODE
|
||||
import com.navi.common.network.ApiConstants
|
||||
import com.navi.common.network.models.GenericErrorBottomSheetFields
|
||||
import com.navi.common.uitron.model.action.AnalyticsActionV2
|
||||
import com.navi.common.uitron.model.action.AnalyticsActionV2.PredefinedEventProperty
|
||||
import com.navi.common.utils.Constants.LOGOUT
|
||||
@@ -521,19 +518,9 @@ constructor(private val repository: ApplicationPlatformRepository) : BaseVM() {
|
||||
initialDelaySeconds = initialDelay.toLong(),
|
||||
onTimeout = {
|
||||
stopApiPolling()
|
||||
val errorBottomSheetFields =
|
||||
GenericErrorBottomSheetFields(
|
||||
title =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.something_went_wrong
|
||||
),
|
||||
description =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.error_description_time_out
|
||||
),
|
||||
ctaTitle = CommonLibManager.application.getString(R.string.okay),
|
||||
ctaAction = getHideBottomSheetAction()
|
||||
)
|
||||
val errorBottomSheetFields = BottomSheetHelper.getGenericErrorBottomSheet(
|
||||
response?.currentScreenCta?.screenMetaData?.get(SCREEN_TYPE)
|
||||
)
|
||||
_ctaResponseState.value =
|
||||
GetCtaState.Error(
|
||||
API_SUCCESS_CODE,
|
||||
|
||||
@@ -19,9 +19,9 @@ import com.navi.common.network.models.GenericErrorBottomSheetFields
|
||||
import com.navi.common.uitron.model.action.CtaAction
|
||||
import com.navi.common.uitron.model.action.UpdateStateHandleActionV2
|
||||
import com.navi.uitron.model.data.UiTronAction
|
||||
import java.nio.charset.StandardCharsets
|
||||
import org.json.JSONArray
|
||||
import org.json.JSONObject
|
||||
import java.nio.charset.StandardCharsets
|
||||
|
||||
private fun getJsonObject(key: String): String {
|
||||
val inputStream =
|
||||
@@ -46,6 +46,7 @@ fun getBottomSheetStructure(
|
||||
.replace("\${cta_title}", bottomSheetFieldResponse.ctaTitle.orEmpty())
|
||||
|
||||
val parsedResult = JSONObject(parsedString)
|
||||
parsedResult.put("isCancellable", bottomSheetFieldResponse.isCancellable)
|
||||
parsedResult
|
||||
.getJSONObject("content")
|
||||
.getJSONArray("widgets")
|
||||
|
||||
@@ -8,7 +8,9 @@
|
||||
package com.navi.ap.screens.genericscreen.ui
|
||||
|
||||
import android.os.Bundle
|
||||
import androidx.compose.runtime.*
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import com.navi.ap.common.handler.handleCtaResponse
|
||||
import com.navi.ap.common.handler.lambdaSuccessHandler
|
||||
@@ -19,7 +21,6 @@ import com.navi.ap.common.models.GetCtaState
|
||||
import com.navi.ap.common.models.LambdaState
|
||||
import com.navi.ap.common.ui.ApplicationPlatformActivity
|
||||
import com.navi.ap.common.ui.InitScreenComponent
|
||||
import com.navi.ap.common.ui.renderer.ScaffoldRenderer
|
||||
import com.navi.ap.common.viewmodel.LambdaVM
|
||||
import com.navi.ap.network.utils.handleGlobalErrorEvent
|
||||
import com.navi.ap.screens.genericscreen.vm.ApGenericScreenVM
|
||||
@@ -118,7 +119,9 @@ private fun handleScreenDefinitionState(
|
||||
activity.updateLoaderState(true)
|
||||
}
|
||||
|
||||
is ApScreenDefinitionState.Success -> {}
|
||||
is ApScreenDefinitionState.Success -> {
|
||||
activity.updateLoaderState(false)
|
||||
}
|
||||
is ApScreenDefinitionState.Error -> {
|
||||
activity.updateLoaderState(false)
|
||||
screenDefinitionState.errorBottomSheetStructure?.let {
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.navi.ap.utils.helper
|
||||
|
||||
import com.navi.ap.common.models.ScreenType
|
||||
import com.navi.ap.network.model.getHideBottomSheetAction
|
||||
import com.navi.ap.network.model.getHideBottomSheetAndRetryGetNextScreen
|
||||
import com.navi.common.CommonLibManager
|
||||
import com.navi.common.R
|
||||
import com.navi.common.network.models.GenericErrorBottomSheetFields
|
||||
|
||||
object BottomSheetHelper {
|
||||
|
||||
fun getGenericErrorBottomSheet(screenType: String?) = when (screenType) {
|
||||
ScreenType.LOADER_SCREEN.name -> GenericErrorBottomSheetFields(
|
||||
title =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.taking_longer_time_title
|
||||
),
|
||||
description =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.taking_longer_time_desc
|
||||
),
|
||||
ctaTitle = CommonLibManager.application.getString(R.string.continue_text),
|
||||
ctaAction = getHideBottomSheetAndRetryGetNextScreen(),
|
||||
isCancellable = false
|
||||
)
|
||||
|
||||
else -> GenericErrorBottomSheetFields(
|
||||
title =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.something_went_wrong
|
||||
),
|
||||
description =
|
||||
CommonLibManager.application.getString(
|
||||
R.string.error_description_time_out
|
||||
),
|
||||
ctaTitle = CommonLibManager.application.getString(R.string.okay),
|
||||
ctaAction = getHideBottomSheetAction()
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -15,7 +15,8 @@ data class GenericErrorBottomSheetFields(
|
||||
val description: String? = null,
|
||||
val ctaTitle: String? = null,
|
||||
val ctaAction: List<UiTronAction>? = null,
|
||||
val errorCode: String? = null
|
||||
val errorCode: String? = null,
|
||||
val isCancellable: Boolean = true,
|
||||
) {
|
||||
fun toGenericErrorResponse() =
|
||||
GenericErrorResponse(
|
||||
|
||||
@@ -192,4 +192,6 @@
|
||||
<string name="verifying_bank_statement">Verifying bank statement…</string>
|
||||
<string name="bank_detail_fetch_failed_try_again">We were not able to get the bank details. Please try again</string>
|
||||
<string name="could_not_fetch_bank_details">Couldn\'t fetch bank details</string>
|
||||
<string name="taking_longer_time_title">It is taking longer than expected</string>
|
||||
<string name="taking_longer_time_desc">We\'re experiencing some delays in processing your request, but we\'re working hard to get it done as soon as possible. Thank you for your patience.</string>
|
||||
</resources>
|
||||
|
||||
Reference in New Issue
Block a user