findDupsById method
Implementation
TwoLists<ContactWeebi> findDupsById({required List<ContactWeebi> newList}) {
if (isEmpty) {
return TwoLists(noDups: newList, dups: <ContactWeebi>[]);
}
final oldListIds = map((e) => e.id);
final newListIds = newList.map((e) => e.id);
final noDups = <ContactWeebi>[];
final dups = <ContactWeebi>[];
for (final newId in newListIds) {
if (oldListIds.contains(newId) == false) {
noDups.add(newList.firstWhere((e) => e.id == newId));
} else {
dups.add(newList.firstWhere((e) => e.id == newId));
}
}
return TwoLists(noDups: noDups, dups: dups);
}