refactor(newappeal): extract file merge and dedupe helpers (Slice 2b)

This commit is contained in:
2026-04-13 10:07:58 +01:00
parent ddbf2116f5
commit 7c4ce131bf
4 changed files with 45 additions and 30 deletions
+10 -22
View File
@@ -21,6 +21,10 @@ import {
updateLinks,
getDocLink
} from "../utils";
import {
dedupeFilesListByName,
removeDuplicatesByKey
} from "../../lib/newappeal/fileListHelpers";
let BuildCheckSection = (props) => {
useEffect(() => {
@@ -97,20 +101,10 @@ let BuildCheckSection = (props) => {
});
//console.log(buildAppealFilesArray);
function removeDuplicates(arr, key) {
const seen = new Set();
return arr.filter((item) => {
const value = item[key];
if (seen.has(value)) {
return false; // Duplicate found
} else {
seen.add(value); // Add value to the set
return true; // Keep the item
}
});
}
buildAppealFilesArray = removeDuplicates(buildAppealFilesArray, "name");
buildAppealFilesArray = removeDuplicatesByKey(
buildAppealFilesArray,
"name"
);
let pdfObj = props.props.form.appealForm.values;
@@ -152,10 +146,7 @@ let BuildCheckSection = (props) => {
const finaliseAppeal = async () => {
//console.log("finalising appeal:", pdfObj);
const uniqueArray = pdfObj.filesList.filter(
(value, index, self) =>
index === self.findIndex((t) => t.name === value.name)
);
const uniqueArray = dedupeFilesListByName(pdfObj.filesList);
pdfObj.filesList = uniqueArray;
pdfObj.locale = locale;
@@ -197,10 +188,7 @@ let BuildCheckSection = (props) => {
try {
setDownloadInProgress(true);
const uniqueArray = pdfObj.filesList.filter(
(value, index, self) =>
index === self.findIndex((t) => t.name === value.name)
);
const uniqueArray = dedupeFilesListByName(pdfObj.filesList);
pdfObj.filesList = uniqueArray;
pdfObj.locale = locale;