TP-00000 | Added Mvel Action in ImageRenderer (#193)

This commit is contained in:
Sanjay P
2023-09-26 18:16:44 +05:30
committed by GitHub
parent e9707c060c
commit 68af5b00fd

View File

@@ -19,9 +19,13 @@ import coil.compose.AsyncImage
import coil.request.ImageRequest
import coil.size.Size
import com.navi.uitron.UiTronSdkManager
import com.navi.uitron.model.action.MvelAction
import com.navi.uitron.model.data.ImageData
import com.navi.uitron.model.data.UiTronData
import com.navi.uitron.model.ui.ImageProperty
import com.navi.uitron.utils.KEY_MVEL_ACTION
import com.navi.uitron.utils.KEY_PROPERTY
import com.navi.uitron.utils.KEY_UI_TRON_DATA
import com.navi.uitron.viewmodel.UiTronViewModel
import customClickable
import getContentScale
@@ -58,6 +62,18 @@ class ImageRenderer : Renderer<ImageProperty> {
).collectAsState()
uiTronImageData = updatedDataState.value ?: uiTronImageData
}
val extrasState = uiTronViewModel.handle.getStateFlow<Map<String, Any?>?>(
property.getExtrasId(),
null
).collectAsState()
handleMvelExtra(
property.layoutId, extrasState.value, mapOf(
Pair(KEY_PROPERTY, property),
Pair(KEY_UI_TRON_DATA, uiTronImageData),
Pair(KEY_MVEL_ACTION, extrasState.value?.get(MvelAction.KEY_MVEL) as? MvelAction)
)
)
if (property.visible.orTrue()) {
UiTronSdkManager.getDependencyProvider().getIconResourceId(uiTronImageData?.iconUrl)?.let { iconCode ->
Image(