fix: Prevent duplicate documents in collection structure
This commit is contained in:
@@ -111,6 +111,10 @@ describe("#addDocumentToStructure", () => {
|
|||||||
await collection.addDocumentToStructure(newDocument);
|
await collection.addDocumentToStructure(newDocument);
|
||||||
expect(collection.documentStructure!.length).toBe(1);
|
expect(collection.documentStructure!.length).toBe(1);
|
||||||
expect(collection.documentStructure![0].id).toBe(id);
|
expect(collection.documentStructure![0].id).toBe(id);
|
||||||
|
|
||||||
|
// should not append multiple times
|
||||||
|
await collection.addDocumentToStructure(newDocument);
|
||||||
|
expect(collection.documentStructure!.length).toBe(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
test("should add with an index", async () => {
|
test("should add with an index", async () => {
|
||||||
|
|||||||
@@ -647,6 +647,10 @@ class Collection extends ParanoidModel {
|
|||||||
this.documentStructure = [];
|
this.documentStructure = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (this.getDocumentTree(document.id)) {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
// If moving existing document with children, use existing structure
|
// If moving existing document with children, use existing structure
|
||||||
const documentJson = {
|
const documentJson = {
|
||||||
...(await document.toNavigationNode(options)),
|
...(await document.toNavigationNode(options)),
|
||||||
|
|||||||
Reference in New Issue
Block a user