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,
showPreview = true,
options = [],
roundNumber = false,
showHyperlink,
...rest
}) => {
@ -167,6 +168,18 @@ const ObjectProperty = ({
</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':
switch (value) {
case 'margin':
@ -235,10 +248,15 @@ const ObjectProperty = ({
</Text>
)
} else {
var roundedValue = value
if (roundNumber != false) {
roundedValue = value.toFixed(roundNumber)
}
return (
<Text {...textParams}>
{prefix}
{typeof value === 'number' ? value.toFixed(2) : value}
{typeof value === 'number' ? roundedValue : value}
{suffix}
</Text>
)