From 078fa7cbeb94195f1bdb5c4597ad6cbc01375440 Mon Sep 17 00:00:00 2001 From: Katrina Scialdone Date: Sun, 3 Sep 2023 16:26:37 -0600 Subject: [PATCH 1/2] Make references add their own tags to the ref'd property on insert --- .../creatureProperties/methods/insertPropertyFromLibraryNode.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js b/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js index 469cd0fc..fd26e5bd 100644 --- a/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js +++ b/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js @@ -178,6 +178,7 @@ function reifyNodeReferences(nodes, visitedRefs = new Set(), depth = 0) { try { referencedNode = fetchDocByRef(node.ref); referencedNode.order = node.order; + referencedNode.tags = [...new Set(referencedNode.tags.concat(node.tags ?? []))]; // We are definitely replacing this node, so add it to the list visitedRefs.add(node._id); } catch (e) { From cbb83f2ef39e6dfe2398db42dcf2ab8390646987 Mon Sep 17 00:00:00 2001 From: Katrina Scialdone Date: Thu, 7 Sep 2023 04:47:40 -0600 Subject: [PATCH 2/2] Use lodash union instead of convert to Set and back --- .../methods/insertPropertyFromLibraryNode.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js b/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js index fd26e5bd..8f0eefa6 100644 --- a/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js +++ b/app/imports/api/creature/creatureProperties/methods/insertPropertyFromLibraryNode.js @@ -14,6 +14,7 @@ import { import { reorderDocs } from '/imports/api/parenting/order.js'; import { setDocToLastOrder } from '/imports/api/parenting/order.js'; import fetchDocByRef from '/imports/api/parenting/fetchDocByRef.js'; +import { union } from 'lodash'; const insertPropertyFromLibraryNode = new ValidatedMethod({ name: 'creatureProperties.insertPropertyFromLibraryNode', @@ -178,7 +179,7 @@ function reifyNodeReferences(nodes, visitedRefs = new Set(), depth = 0) { try { referencedNode = fetchDocByRef(node.ref); referencedNode.order = node.order; - referencedNode.tags = [...new Set(referencedNode.tags.concat(node.tags ?? []))]; + referencedNode.tags = union(node.tags, referencedNode.tags); // We are definitely replacing this node, so add it to the list visitedRefs.add(node._id); } catch (e) {