Fix crash when many-type related column value is non-array

This commit is contained in:
Andrew Kingston 2024-10-14 12:20:53 +01:00
parent 963b3ae35c
commit 37e601254c
No known key found for this signature in database
1 changed files with 6 additions and 10 deletions

View File

@ -24,9 +24,9 @@ const columnTypeManyParser = {
return parsed
}
return value?.map(v => parseDate(v))
return value.map(v => parseDate(v))
},
[FieldType.BOOLEAN]: value => value?.map(v => !!v),
[FieldType.BOOLEAN]: value => value.map(v => !!v),
[FieldType.BB_REFERENCE_SINGLE]: value => [
...new Map(value.map(i => [i._id, i])).values(),
],
@ -80,14 +80,10 @@ export function getRelatedTableValues(row, field, fromField) {
result = row[field.related.field]?.[0]?.[field.related.subField]
} else {
const parser = columnTypeManyParser[field.type] || (value => value)
result = parser(
row[field.related.field]
?.flatMap(r => r[field.related.subField])
?.filter(i => i !== undefined && i !== null),
field
)
const value = row[field.related.field]
?.flatMap(r => r[field.related.subField])
?.filter(i => i !== undefined && i !== null)
result = parser(value || [], field)
if (
[
FieldType.STRING,