// Copyright 2020 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only export function diffArraysAsSets( starting: Array, current: Array ): { added: Array; removed: Array } { const startingSet = new Set(starting); const currentSet = new Set(current); const removed = []; for (const item of startingSet) { if (!currentSet.has(item)) { removed.push(item); } } const added = []; for (const item of currentSet) { if (!startingSet.has(item)) { added.push(item); } } return { added, removed }; }