mirror of https://github.com/logseq/logseq
fix: fs e2e tests and page rename
parent
d2b6f17af3
commit
819c8614d3
|
@ -12,7 +12,8 @@
|
|||
[logseq.common.config :as common-config]
|
||||
[logseq.db.frontend.content :as db-content]
|
||||
[medley.core :as medley]
|
||||
[logseq.db.frontend.schema :as db-schema]))
|
||||
[logseq.db.frontend.schema :as db-schema]
|
||||
[frontend.handler.db-based.recent :as db-based]))
|
||||
|
||||
(defn properties-block
|
||||
[repo conn config date-formatter properties format page]
|
||||
|
@ -221,8 +222,9 @@
|
|||
;; if other page alias this pagename,
|
||||
;; then just remove some attrs of this entity instead of retractEntity
|
||||
delete-page-tx (cond
|
||||
(not (:block/_namespace page))
|
||||
(if (ldb/get-alias-source-page @conn page-name)
|
||||
(or (and db-based? (not (:block/_namespace page)))
|
||||
(not db-based?))
|
||||
(if (and db-based? (ldb/get-alias-source-page @conn page-name))
|
||||
(when-let [id (:db/id (d/entity @conn [:block/name page-name]))]
|
||||
(mapv (fn [attribute]
|
||||
[:db/retract id attribute])
|
||||
|
|
|
@ -171,12 +171,14 @@
|
|||
{:keys [old-path new-path tx-data]} (update-file-tx db old-page-name new-name)
|
||||
txs (concat page-txs
|
||||
(when-not db-based?
|
||||
(->> [;; update page refes in block content when ref name changes
|
||||
(page-rename/replace-page-ref db config old-name new-name)
|
||||
(->>
|
||||
(concat
|
||||
;; update page refes in block content when ref name changes
|
||||
(page-rename/replace-page-ref db config old-name new-name)
|
||||
;; update file path
|
||||
tx-data)
|
||||
|
||||
;; update file path
|
||||
tx-data]
|
||||
(remove nil?))))]
|
||||
(remove nil?))))]
|
||||
|
||||
(ldb/transact! conn txs {:outliner-op :rename-page
|
||||
:data (cond->
|
||||
|
|
|
@ -109,7 +109,9 @@
|
|||
tx-report)
|
||||
fix-tx-data (validate-and-fix-db! repo conn tx-report context)
|
||||
full-tx-data (concat (:tx-data tx-report) fix-tx-data (:tx-data tx-report'))
|
||||
final-tx-report (assoc tx-report' :tx-data full-tx-data)
|
||||
final-tx-report (assoc tx-report'
|
||||
:tx-data full-tx-data
|
||||
:db-before (:db-before tx-report))
|
||||
affected-query-keys (when-not (:importing? context)
|
||||
(worker-react/get-affected-queries-keys final-tx-report))]
|
||||
{:tx-report final-tx-report
|
||||
|
|
|
@ -296,8 +296,9 @@
|
|||
(defn original-page-name->index
|
||||
[p]
|
||||
(when p
|
||||
{:name (util/search-normalize p true)
|
||||
:original-name p}))
|
||||
{:id (str (:block/uuid p))
|
||||
:name (:block/name p)
|
||||
:original-name (:block/original-name p)}))
|
||||
|
||||
(defn- safe-subs
|
||||
([s start]
|
||||
|
@ -317,14 +318,9 @@
|
|||
|
||||
(defn get-all-pages
|
||||
[db]
|
||||
(->>
|
||||
(d/q
|
||||
'[:find [?page-original-name ...]
|
||||
:where
|
||||
[?page :block/name ?page-name]
|
||||
[(get-else $ ?page :block/original-name ?page-name) ?page-original-name]]
|
||||
db)
|
||||
(remove hidden-page?)))
|
||||
(let [page-datoms (d/datoms db :avet :block/name)
|
||||
pages (map (fn [d] (d/entity db (:e d))) page-datoms)]
|
||||
(remove (fn [p] (hidden-page? (:block/name p))) pages)))
|
||||
|
||||
(defn build-page-indice
|
||||
"Build a page title indice from scratch.
|
||||
|
@ -333,7 +329,6 @@
|
|||
From now on, page indice is talking about page content search."
|
||||
[repo db]
|
||||
(let [pages (->> (get-all-pages db)
|
||||
(remove string/blank?)
|
||||
(map original-page-name->index)
|
||||
(bean/->js))
|
||||
indice (fuse. pages
|
||||
|
@ -391,14 +386,10 @@
|
|||
(fn [indice]
|
||||
(when indice
|
||||
(doseq [page-entity pages-to-remove]
|
||||
(.remove indice
|
||||
(fn [page]
|
||||
(= (:block/name page-entity)
|
||||
(common-util/safe-page-name-sanity-lc (gobj/get page "original-name"))))))
|
||||
(.remove indice (fn [page] (= (:block/name page-entity) (gobj/get page "name")))))
|
||||
(doseq [page pages-to-add]
|
||||
(.add indice (bean/->js (original-page-name->index
|
||||
(or (:block/original-name page)
|
||||
(:block/name page))))))
|
||||
(.remove indice (fn [p] (= (str (:block/uuid page)) (gobj/get p "id"))))
|
||||
(.add indice (bean/->js (original-page-name->index page))))
|
||||
indice)))))
|
||||
|
||||
;; update block indice
|
||||
|
|
Loading…
Reference in New Issue