diff --git a/navi-uitron/src/main/java/com/navi/uitron/model/ui/UiTronView.kt b/navi-uitron/src/main/java/com/navi/uitron/model/ui/UiTronView.kt index 47fdf5a..6b6a943 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/model/ui/UiTronView.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/model/ui/UiTronView.kt @@ -40,6 +40,7 @@ open class BaseProperty( var scaleData: ScaleData? = null, var backgroundColor: String? = null, var shape: UiTronShape? = null, + var clipShape: UiTronShape? = null, var statesMap: Map? = null, var parentConstraints: ParentConstraints? = null, @SerializedName("visible", alternate = ["isVisible"]) diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/AutoScrollViewRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/AutoScrollViewRenderer.kt index 3ba093b..da847a9 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/AutoScrollViewRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/AutoScrollViewRenderer.kt @@ -19,6 +19,7 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.AutoScrollViewProperty @@ -90,6 +91,7 @@ class AutoScrollViewRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/BoxRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/BoxRenderer.kt index 8bc0fbf..f8f9532 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/BoxRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/BoxRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.draw.shadow import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.dp +import clip import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData @@ -95,6 +96,7 @@ class BoxRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .setBorderStroke(property.borderStrokeData) .setShimmerEffect(property.isShimmerEnabled) diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/CardRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/CardRenderer.kt index af8dd06..609b9a0 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/CardRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/CardRenderer.kt @@ -18,6 +18,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.DefaultShadowColor import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.dp +import clip import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData @@ -82,7 +83,7 @@ class CardRenderer( .layoutId(property.layoutId.orEmpty()) .setWidth(property.width) .setHeight(property.height) - .setPadding(property.padding) + .setPadding(property.padding).clip(property.clipShape) .shadow( elevation = property.elevation?.dp ?: 0.dp, ambientColor = property.ambientColor?.hexToComposeColor diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/CheckBoxRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/CheckBoxRenderer.kt index 5b87b42..a77c67a 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/CheckBoxRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/CheckBoxRenderer.kt @@ -18,6 +18,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.model.data.CheckBoxData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.CheckBoxProperty @@ -90,6 +91,7 @@ class CheckBoxRenderer : .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .setWidth(property.width) .setHeight(property.height) diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/ColumnRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/ColumnRenderer.kt index bf01116..b6599bf 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/ColumnRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/ColumnRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.dp +import clip import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.ColumnData import com.navi.uitron.model.data.UiTronData @@ -100,6 +101,7 @@ class ColumnRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .padding( start = property.padding?.start?.dp ?: 0.dp, end = property.padding?.end?.dp ?: 0.dp, diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/ConstraintLayoutRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/ConstraintLayoutRenderer.kt index 4eb4974..e5266cf 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/ConstraintLayoutRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/ConstraintLayoutRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.draw.alpha import androidx.compose.ui.unit.dp import androidx.constraintlayout.compose.ConstraintLayout import androidx.constraintlayout.compose.layoutId +import clip import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData @@ -95,6 +96,7 @@ class ConstraintLayoutRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .padding( top = property.padding?.top?.dp ?: 0.dp, bottom = property.padding?.bottom?.dp ?: 0.dp, diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt index e134d81..689a97b 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/CustomTextFieldRenderer.kt @@ -31,6 +31,7 @@ import androidx.compose.ui.text.* import androidx.compose.ui.text.input.VisualTransformation import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.data.CustomTextFieldData import com.navi.uitron.model.data.TextData @@ -147,7 +148,7 @@ class CustomTextFieldRenderer( property.shape, property.backGroundBrushData ) - + .clip(property.clipShape) .alpha(property.alpha ?: 1.0f), verticalArrangement = Arrangement.setVerticalArrangement( property.arrangementData ?: ArrangementData( diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/DropdownRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/DropdownRenderer.kt index 864e197..79555e5 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/DropdownRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/DropdownRenderer.kt @@ -22,6 +22,7 @@ import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.dp import androidx.compose.ui.window.PopupProperties +import clip import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.DropdownProperty import com.navi.uitron.model.ui.UiTronView @@ -76,6 +77,7 @@ class DropdownRenderer( .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .alpha(property.alpha ?: 1.0f), onDismissRequest = { isExpanded.value = false diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/GridRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/GridRenderer.kt index be3c61f..77644c5 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/GridRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/GridRenderer.kt @@ -11,6 +11,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.unit.dp import androidx.constraintlayout.compose.layoutId +import clip import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.GridProperty @@ -61,6 +62,7 @@ class GridRenderer( .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/ImageRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/ImageRenderer.kt index f3136a0..a886866 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/ImageRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/ImageRenderer.kt @@ -15,6 +15,7 @@ import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource +import clip import coil.compose.AsyncImage import coil.request.ImageRequest import coil.size.Size @@ -90,6 +91,7 @@ class ImageRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/JackpotRendererV2.kt b/navi-uitron/src/main/java/com/navi/uitron/render/JackpotRendererV2.kt index df3d699..a2bc5f5 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/JackpotRendererV2.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/JackpotRendererV2.kt @@ -34,6 +34,7 @@ import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.data.CheckBoxData import com.navi.uitron.model.data.JackpotTextData @@ -90,6 +91,7 @@ class JackpotTextRendererV2 : Renderer { .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .alpha(property.alpha ?: 1.0f) ) { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/JackpotTextRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/JackpotTextRenderer.kt index 24484f5..a760c81 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/JackpotTextRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/JackpotTextRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.draw.alpha import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.data.TextData import com.navi.uitron.model.data.UiTronData @@ -68,6 +69,7 @@ class JackpotTextRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .alpha(property.alpha ?: 1.0f) ) { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/LazyColumnRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/LazyColumnRenderer.kt index 9f9dbdb..c4965a0 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/LazyColumnRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/LazyColumnRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.helpers.ScrollEventHandler import com.navi.uitron.model.data.LazyColumnData import com.navi.uitron.model.data.UiTronData @@ -79,6 +80,7 @@ class LazyColumnRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/LazyGridRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/LazyGridRenderer.kt index 3a94033..b4ddb56 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/LazyGridRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/LazyGridRenderer.kt @@ -13,6 +13,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.unit.dp import androidx.constraintlayout.compose.layoutId +import clip import com.navi.uitron.model.data.LazyGridData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.LazyGridProperty @@ -68,6 +69,7 @@ class LazyGridRenderer( .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/LazyRowRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/LazyRowRenderer.kt index 73a18cf..b40f609 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/LazyRowRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/LazyRowRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.helpers.ScrollEventHandler import com.navi.uitron.model.data.LazyRowData import com.navi.uitron.model.data.UiTronData @@ -82,6 +83,7 @@ class LazyRowRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/OtpBoxRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/OtpBoxRenderer.kt index 0db573d..befcdc5 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/OtpBoxRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/OtpBoxRenderer.kt @@ -44,6 +44,7 @@ import androidx.compose.ui.text.input.VisualTransformation import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.data.OtpBoxData import com.navi.uitron.model.data.TextData @@ -109,6 +110,7 @@ class OtpBoxRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .alpha(property.alpha ?: 1.0f), verticalArrangement = Arrangement.setVerticalArrangement(property.containerProperty?.arrangementData), horizontalAlignment = getHorizontalAlignment(horizontalAlignment = property.containerProperty?.horizontalAlignment), diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/PagerIndicatorRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/PagerIndicatorRenderer.kt index 82404dc..938a673 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/PagerIndicatorRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/PagerIndicatorRenderer.kt @@ -18,6 +18,7 @@ import androidx.compose.ui.draw.alpha import androidx.compose.ui.graphics.Color import androidx.compose.ui.unit.dp import androidx.constraintlayout.compose.layoutId +import clip import com.google.accompanist.pager.ExperimentalPagerApi import com.google.accompanist.pager.HorizontalPagerIndicator import com.google.accompanist.pager.VerticalPagerIndicator @@ -81,6 +82,7 @@ class PagerIndicatorRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .padding( start = property.padding?.start?.dp ?: 0.dp, end = property.padding?.end?.dp ?: 0.dp, @@ -117,6 +119,7 @@ class PagerIndicatorRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/PagerRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/PagerRenderer.kt index 5e36990..a9b21b2 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/PagerRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/PagerRenderer.kt @@ -19,6 +19,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.unit.dp import androidx.constraintlayout.compose.layoutId +import clip import com.google.accompanist.pager.ExperimentalPagerApi import com.google.accompanist.pager.HorizontalPager import com.google.accompanist.pager.PagerDefaults @@ -96,6 +97,7 @@ class PagerRenderer( property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .customClickable( { diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/RadioButtonRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/RadioButtonRenderer.kt index 605bf6c..2d9f372 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/RadioButtonRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/RadioButtonRenderer.kt @@ -15,6 +15,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.RadioButtonProperty @@ -69,6 +70,7 @@ class RadioButtonRenderer : .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .layoutId(property.layoutId.orEmpty()) .customClickable( diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/RowRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/RowRenderer.kt index 484b46a..fe9bd17 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/RowRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/RowRenderer.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId import androidx.compose.ui.unit.dp +import clip import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.RowData import com.navi.uitron.model.data.UiTronData @@ -91,6 +92,7 @@ class RowRenderer( top = property.margin?.top?.dp ?: 0.dp, bottom = property.margin?.bottom?.dp ?: 0.dp ) + .clip(property.clipShape) .setBackground( property.backgroundColor, property.shape, diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/SpacerRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/SpacerRenderer.kt index 7bd8479..ee28504 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/SpacerRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/SpacerRenderer.kt @@ -13,6 +13,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.ui.Modifier import androidx.compose.ui.draw.alpha import androidx.compose.ui.layout.layoutId +import clip import com.navi.uitron.model.data.EmptyData import com.navi.uitron.model.data.UiTronData import com.navi.uitron.model.ui.SpacerProperty @@ -61,6 +62,7 @@ class SpacerRenderer : Renderer { actions = updatedData?.onClick?.actions, property = property ) + .clip(property.clipShape) .alpha(property.alpha ?: 1.0f) .setPadding(property.margin) .setBackground( diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/SpannableTextRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/SpannableTextRenderer.kt index 7bc8f32..84b70a9 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/SpannableTextRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/SpannableTextRenderer.kt @@ -13,6 +13,7 @@ import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.withStyle import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.data.SpannableTextData import com.navi.uitron.model.data.UiTronData @@ -145,6 +146,7 @@ class SpannableTextRenderer : Renderer { .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .alpha(property.alpha ?: 1.0f), style = TextStyle( @@ -159,6 +161,7 @@ class SpannableTextRenderer : Renderer { .setBackground( property.backgroundColor, property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .alpha(property.alpha ?: 1.0f), style = TextStyle( diff --git a/navi-uitron/src/main/java/com/navi/uitron/render/TextRenderer.kt b/navi-uitron/src/main/java/com/navi/uitron/render/TextRenderer.kt index 63616cf..0a0c40a 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/render/TextRenderer.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/render/TextRenderer.kt @@ -20,6 +20,7 @@ import androidx.compose.ui.text.font.FontStyle import androidx.compose.ui.unit.TextUnit import androidx.compose.ui.unit.em import androidx.compose.ui.unit.sp +import clip import com.navi.uitron.UiTronSdkManager import com.navi.uitron.model.action.MvelAction import com.navi.uitron.model.data.TextData @@ -114,6 +115,7 @@ class TextRenderer : Renderer { property.shape, property.backGroundBrushData ) + .clip(property.clipShape) .setPadding(property.padding) .layoutId(property.layoutId.orEmpty()) .customClickable( diff --git a/navi-uitron/src/main/java/com/navi/uitron/utils/Ext.kt b/navi-uitron/src/main/java/com/navi/uitron/utils/Ext.kt index 0e7ebc7..301b5cf 100644 --- a/navi-uitron/src/main/java/com/navi/uitron/utils/Ext.kt +++ b/navi-uitron/src/main/java/com/navi/uitron/utils/Ext.kt @@ -371,6 +371,16 @@ fun transformInput( } ?: inputText } +fun Modifier.clip(uiTronShape: UiTronShape?): Modifier = composed { + uiTronShape?.let { + this.then( + clip( + shape = ShapeUtil.getShape(shape = uiTronShape) + ) + ) + } ?: this +} + fun Modifier.setBackground( backgroundColor: String?, uiTronShape: UiTronShape?,