From 26bcfe516098ec80e637a04fd407d1a917a78e22 Mon Sep 17 00:00:00 2001 From: zadam Date: Sat, 4 Dec 2021 13:45:15 +0100 Subject: [PATCH] fix hidden notes appearing in note map, closes #2403 --- src/routes/api/note_map.js | 10 ++++++++++ src/services/special_notes.js | 7 +++++++ 2 files changed, 17 insertions(+) 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 = {