[TLC-674] Hide empty duplicate section UNLESS config overrides

A new config property allows the user to force the duplicate
section to be displayed even if there are no duplicates
as sometimes this is useful information to a reviewer or
submitter
This commit is contained in:
Kim Shepherd
2024-02-19 17:03:31 +13:00
parent 68dd35095c
commit 911cf8905c
9 changed files with 78 additions and 9 deletions

View File

@@ -5,7 +5,7 @@ import isEqual from 'lodash/isEqual';
import uniqWith from 'lodash/uniqWith';
import {
ChangeSubmissionCollectionAction,
ChangeSubmissionCollectionAction, CleanDuplicateDetectionAction,
CompleteInitSubmissionFormAction,
DeleteSectionErrorsAction,
DeleteUploadedFileAction,
@@ -229,6 +229,10 @@ export function submissionObjectReducer(state = initialState, action: Submission
return removeSectionErrors(state, action as RemoveSectionErrorsAction);
}
case SubmissionObjectActionTypes.CLEAN_DUPLICATE_DETECTION: {
return cleanDuplicateDetectionSection(state, action as CleanDuplicateDetectionAction);
}
default: {
return state;
}
@@ -856,3 +860,20 @@ function deleteFile(state: SubmissionObjectState, action: DeleteUploadedFileActi
}
return state;
}
function cleanDuplicateDetectionSection(state: SubmissionObjectState, action: CleanDuplicateDetectionAction): SubmissionObjectState {
if (isNotEmpty(state[ action.payload.submissionId ])) {
return Object.assign({}, state, {
[ action.payload.submissionId ]: Object.assign({}, state[ action.payload.submissionId ], {
sections: Object.assign({}, state[ action.payload.submissionId ].sections, {
[ 'duplicates' ]: Object.assign({}, state[ action.payload.submissionId ].sections.duplicates, {
enabled: false,
data: { potentialDuplicates: [] }
})
})
})
});
} else {
return state;
}
}