From 7305637b8cbb28e7bbb72ae39dd24c16a506819e Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Thu, 30 Apr 2026 10:32:51 +0300 Subject: [PATCH] sort appears on --- app/javascript/submission_form/appears_on.vue | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/app/javascript/submission_form/appears_on.vue b/app/javascript/submission_form/appears_on.vue index 48bdb028..219ef193 100644 --- a/app/javascript/submission_form/appears_on.vue +++ b/app/javascript/submission_form/appears_on.vue @@ -42,10 +42,25 @@ export default { const areas = {} this.field.areas?.forEach((area) => { - areas[area.attachment_uuid + area.page] ||= area + areas[area.attachment_uuid] ||= [] + areas[area.attachment_uuid].push(area) }) - return Object.values(areas).slice(0, 6) + const sortedAreas = Object.values(areas).reduce((acc, group) => { + const seen = {} + const sortedGroup = [...group].sort((a, b) => a.page - b.page) + + sortedGroup.forEach((area) => { + if (!seen[area.page]) { + seen[area.page] = true + acc.push(area) + } + }) + + return acc + }, []) + + return sortedAreas.slice(0, 6) } } }