diff --git a/src/routes/api/note_map.js b/src/routes/api/note_map.js index a14922b1d..b0dc6d57e 100644 --- a/src/routes/api/note_map.js +++ b/src/routes/api/note_map.js @@ -42,6 +42,11 @@ function getNeighbors(note, depth) { } const targetNote = relation.getTargetNote(); + + if (targetNote.hasLabel('excludeFromNoteMap')) { + continue; + } + retNoteIds.push(targetNote.noteId); for (const noteId of getNeighbors(targetNote, depth - 1)) { @@ -56,6 +61,11 @@ function getNeighbors(note, depth) { } const sourceNote = relation.getNote(); + + if (sourceNote.hasLabel('excludeFromNoteMap')) { + continue; + } + retNoteIds.push(sourceNote.noteId); for (const noteId of getNeighbors(sourceNote, depth - 1)) { diff --git a/src/services/special_notes.js b/src/services/special_notes.js index 46627e0da..9c27f7f14 100644 --- a/src/services/special_notes.js +++ b/src/services/special_notes.js @@ -44,6 +44,7 @@ function getHiddenRoot() { // isInheritable: false means that this notePath is automatically not preffered but at the same time // the flag is not inherited to the children hidden.addLabel('archived', "", false); + hidden.addLabel('excludeFromNoteMap', "", true); } return hidden; @@ -206,6 +207,12 @@ function createMissingSpecialNotes() { getSinglesNoteRoot(); getSinglesNoteRoot(); getGlobalNoteMap(); + + const hidden = getHiddenRoot(); + + if (!hidden.hasOwnedLabel('excludeFromNoteMap')) { + hidden.addLabel('excludeFromNoteMap', "", true); + } } module.exports = {