29 lines
902 B
JavaScript
29 lines
902 B
JavaScript
export const mergeWithExistingFilesList = (buildAppealFilesArray, values) => {
|
|
return Object.prototype.hasOwnProperty.call(values, "filesList")
|
|
? (buildAppealFilesArray.concat(values.filesList),
|
|
buildAppealFilesArray.filter(function (item, idx) {
|
|
return item.name;
|
|
}))
|
|
: buildAppealFilesArray;
|
|
};
|
|
|
|
export const removeDuplicatesByKey = (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
|
|
}
|
|
});
|
|
};
|
|
|
|
export const dedupeFilesListByName = (filesList) => {
|
|
return filesList.filter(
|
|
(value, index, self) =>
|
|
index === self.findIndex((t) => t.name === value.name)
|
|
);
|
|
};
|