mirror of
https://github.com/docmost/docmost.git
synced 2026-07-25 17:54:43 +10:00
fix tree merge
This commit is contained in:
@@ -203,7 +203,14 @@ export function mergeRootTrees(
|
|||||||
prevRoots: SpaceTreeNode[],
|
prevRoots: SpaceTreeNode[],
|
||||||
incomingRoots: SpaceTreeNode[],
|
incomingRoots: SpaceTreeNode[],
|
||||||
): SpaceTreeNode[] {
|
): SpaceTreeNode[] {
|
||||||
const seen = new Set(prevRoots.map((r) => r.id));
|
const seen = new Set<string>();
|
||||||
|
const collect = (nodes: SpaceTreeNode[]) => {
|
||||||
|
for (const node of nodes) {
|
||||||
|
seen.add(node.id);
|
||||||
|
if (node.children?.length) collect(node.children);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
collect(prevRoots);
|
||||||
|
|
||||||
// add new roots that were not present before
|
// add new roots that were not present before
|
||||||
const merged = [...prevRoots];
|
const merged = [...prevRoots];
|
||||||
|
|||||||
Reference in New Issue
Block a user