From 009ba0b6542fb17c46d282c4b453e49be4b82df2 Mon Sep 17 00:00:00 2001 From: Tienson Qin Date: Fri, 23 Aug 2024 15:17:38 +0800 Subject: [PATCH] fix: undo text still shows up in search results fixes https://github.com/logseq/db-test/issues/26 --- src/main/frontend/worker/search.cljs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/frontend/worker/search.cljs b/src/main/frontend/worker/search.cljs index 238a0c896..1b561743c 100644 --- a/src/main/frontend/worker/search.cljs +++ b/src/main/frontend/worker/search.cljs @@ -9,7 +9,8 @@ [frontend.common.search-fuzzy :as fuzzy] [logseq.db.sqlite.util :as sqlite-util] [logseq.common.util :as common-util] - [logseq.db :as ldb])) + [logseq.db :as ldb] + [clojure.set :as set])) ;; TODO: use sqlite for fuzzy search ;; maybe https://github.com/nalgeon/sqlean/blob/main/docs/fuzzy.md? @@ -412,7 +413,12 @@ DROP TRIGGER IF EXISTS blocks_au; ;; update block indice (when (or (seq blocks-to-add) (seq blocks-to-remove)) - (let [blocks-to-add (keep block->index blocks-to-add) - blocks-to-remove (set (map (comp str :block/uuid) blocks-to-remove))] + (let [blocks-to-add' (keep block->index blocks-to-add) + blocks-to-remove (set (concat (map (comp str :block/uuid) blocks-to-remove) + (->> + (set/difference + (set (map :block/uuid blocks-to-add)) + (set (map :block/uuid blocks-to-add'))) + (map str))))] {:blocks-to-remove-set blocks-to-remove - :blocks-to-add blocks-to-add})))) + :blocks-to-add blocks-to-add'}))))