Add roundNumber prop to ObjectProperty component for configurable number rounding and enhance select case handling for better value display

This commit is contained in:
Tom Butcher 2025-11-24 03:31:58 +00:00
parent e788eaba91
commit 8f67d7daae

View File

@ -82,6 +82,7 @@ const ObjectProperty = ({
previewOpen = false, previewOpen = false,
showPreview = true, showPreview = true,
options = [], options = [],
roundNumber = false,
showHyperlink, showHyperlink,
...rest ...rest
}) => { }) => {
@ -167,6 +168,18 @@ const ObjectProperty = ({
</Text> </Text>
) )
} }
case 'select': {
const selectValue = options.find((option) => option.value === value)
if (selectValue) {
return <Text {...textParams}>{selectValue.label}</Text>
} else {
return (
<Text type='secondary' {...textParams}>
n/a
</Text>
)
}
}
case 'priceMode': case 'priceMode':
switch (value) { switch (value) {
case 'margin': case 'margin':
@ -235,10 +248,15 @@ const ObjectProperty = ({
</Text> </Text>
) )
} else { } else {
var roundedValue = value
if (roundNumber != false) {
roundedValue = value.toFixed(roundNumber)
}
return ( return (
<Text {...textParams}> <Text {...textParams}>
{prefix} {prefix}
{typeof value === 'number' ? value.toFixed(2) : value} {typeof value === 'number' ? roundedValue : value}
{suffix} {suffix}
</Text> </Text>
) )