Files
logseq/src/main/frontend/db.cljs
Gabriel Horner 9b1a565dd0 Chore: Remove slides (#11854)
* chore: remove slide feature and reveal mentions

Will remove reveal js dep in later commit

* chore: remove built-in property that was only for slides
2025-05-12 13:32:24 -04:00

74 lines
2.3 KiB
Clojure

(ns frontend.db
"Main entry ns for db related fns"
(:require [frontend.config :as config]
[frontend.db.conn :as conn]
[frontend.db.model]
[frontend.db.utils]
[frontend.modules.outliner.op :as outliner-op]
[frontend.modules.outliner.ui :as ui-outliner-tx]
[frontend.namespaces :refer [import-vars]]
[frontend.state :as state]
[logseq.db :as ldb]
[logseq.outliner.op]))
(import-vars
[frontend.db.conn
;; TODO: remove later
get-repo-path
get-repo-name
get-short-repo-name
get-db
remove-conn!]
[frontend.db.utils
entity pull pull-many]
[frontend.db.model
delete-files get-block-and-children get-block-by-uuid get-block-children sort-by-order
get-block-parent get-block-parents parents-collapsed?
get-block-immediate-children get-block-page
get-file file-exists? get-files-full
get-latest-journals get-page get-case-page get-page-alias-names
get-page-format journal-page? page? sub-block
page-empty? page-exists? get-alias-source-page
has-children? whiteboard-page?])
(defn start-db-conn!
([repo]
(start-db-conn! repo {}))
([repo option]
(conn/start! repo option)))
(def new-block-id ldb/new-block-id)
(defn transact!
([tx-data]
(transact! (state/get-current-repo) tx-data nil))
([repo tx-data]
(transact! repo tx-data nil))
([repo tx-data tx-meta]
(if config/publishing?
;; :save-block is for query-table actions like sorting and choosing columns
(when (or (#{:collapse-expand-blocks :save-block} (:outliner-op tx-meta))
(:init-db? tx-meta))
(conn/transact! repo tx-data tx-meta))
(ui-outliner-tx/transact! tx-meta
(outliner-op/transact! tx-data tx-meta)))))
(defn set-file-last-modified-at!
"Refresh file timestamps to DB"
[repo path last-modified-at]
(when (and repo (not (config/db-based-graph? repo)) path last-modified-at)
(transact! repo
[{:file/path path
:file/last-modified-at last-modified-at}] {})))
(defn set-file-content!
([repo path content]
(set-file-content! repo path content {}))
([repo path content opts]
(when (and repo path)
(let [tx-data {:file/path path
:file/content content}]
(transact! repo [tx-data] opts)))))