lodah-w-xor

pull/1109/head
Vincent 5 years ago
parent 400e1ee0a8
commit 477e9b6ef0

@ -180,6 +180,7 @@
return this; return this;
}, },
async onSubmit(newMembers) { async onSubmit(newMembers) {
const _ = window.Lodash;
const ourPK = textsecure.storage.user.getNumber(); const ourPK = textsecure.storage.user.getNumber();
const allMembers = window.Lodash.concat(newMembers, [ourPK]); const allMembers = window.Lodash.concat(newMembers, [ourPK]);
@ -198,7 +199,7 @@
const promises = notPresentInNew.map(member => const promises = notPresentInNew.map(member =>
libloki.storage.getPairedDevicesFor(member) libloki.storage.getPairedDevicesFor(member)
); );
const devices = window.Lodash.flatten(await Promise.all(promises)); const devices = _.flatten(await Promise.all(promises));
return devices; return devices;
}; };
@ -208,11 +209,10 @@
// If any extra devices of removed exist in newMembers, ensure that you filter them // If any extra devices of removed exist in newMembers, ensure that you filter them
const filteredMemberes = allMembers.filter( const filteredMemberes = allMembers.filter(
member => !window.Lodash.includes(allDevicesOfMembersToRemove, member) member => !_.includes(allDevicesOfMembersToRemove, member)
); );
// Would be easer with _.xor but for some reason we do not have it const xor = _.xor(notPresentInNew, notPresentInOld);
const xor = notPresentInNew.concat(notPresentInOld);
if (xor.length === 0) { if (xor.length === 0) {
window.console.log( window.console.log(
'skipping group update: no detected changes in group member list' 'skipping group update: no detected changes in group member list'

Loading…
Cancel
Save