From 8a4ff666ca06b1493b5babbc70a4722c6a5cb56f Mon Sep 17 00:00:00 2001 From: Miro Yovchev <2827783+myovchev@users.noreply.github.com> Date: Thu, 4 Dec 2025 11:24:34 +0200 Subject: [PATCH] Fix admin UI crashes --- .../doc-type/ui/apos/components/AposDocEditor.vue | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/apostrophe/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue b/packages/apostrophe/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue index 1f1fae851c..ea92b3ca7c 100644 --- a/packages/apostrophe/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue +++ b/packages/apostrophe/modules/@apostrophecms/doc-type/ui/apos/components/AposDocEditor.vue @@ -567,6 +567,7 @@ export default { } if (field.type === 'select' || field.type === 'radio') { + // WARNING: field choices might be a string (dynamic choices) const validChoices = field.choices.map(choice => choice.value); if (!validChoices.includes(object[field.name])) { @@ -579,12 +580,13 @@ export default { } if (field.type === 'checkboxes') { + // WARNING: field choices might be a string (dynamic choices) const validChoices = field.choices.map(choice => choice.value); const filteredValues = object[field.name] - .filter(value => validChoices.includes(value)); + ?.filter(value => validChoices.includes(value)); - if (filteredValues.length) { + if (filteredValues?.length) { object[field.name] = filteredValues; continue; }