From 090537879203be058cb3742d5abc3ceecae9ea40 Mon Sep 17 00:00:00 2001 From: Sean Fong Date: Tue, 27 Aug 2024 11:12:10 +0930 Subject: [PATCH] Fix - add removeDuplicateCodings implementation --- packages/smart-forms-renderer/src/utils/choice.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/smart-forms-renderer/src/utils/choice.ts b/packages/smart-forms-renderer/src/utils/choice.ts index 520cf040..0eb454f9 100644 --- a/packages/smart-forms-renderer/src/utils/choice.ts +++ b/packages/smart-forms-renderer/src/utils/choice.ts @@ -97,6 +97,21 @@ export function findInAnswerOptions( return; } +/** + * Remove duplicate codings based on coding.code + */ +export function removeDuplicateCodings(codings: Coding[]): Coding[] { + const seenCodes = new Set(); + return codings.filter((coding) => { + if (seenCodes.has(coding.code)) { + return false; + } else { + seenCodes.add(coding.code); + return true; + } + }); +} + /** * Compare answer option value with selected value via valueString, valueInteger, or valueCoding.code *