mirror of https://github.com/logseq/logseq
chore: rename property node/type to node/display-type
node can be a block or page and type is a general enough word that it could refer to one of those. Use a more specific name so we don't confuse ourselves or our usersenhance/code-type-block
parent
41554646de
commit
476e641c1a
|
@ -38,11 +38,11 @@
|
|||
:cardinality :many
|
||||
:public? true
|
||||
:classes #{:logseq.class/Root}}}
|
||||
:logseq.property.node/type {:title "Node type"
|
||||
:schema {:type :keyword
|
||||
:public? false
|
||||
:hide? true
|
||||
:view-context :block}}
|
||||
:logseq.property.node/display-type {:title "Node Display Type"
|
||||
:schema {:type :keyword
|
||||
:public? false
|
||||
:hide? true
|
||||
:view-context :block}}
|
||||
:logseq.property.code/mode {:title "Code mode"
|
||||
:schema {:type :string
|
||||
:public? false
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"Main datascript schemas for the Logseq app"
|
||||
(:require [clojure.set :as set]))
|
||||
|
||||
(def version 27)
|
||||
(def version 28)
|
||||
;; A page is a special block, a page can corresponds to multiple files with the same ":block/name".
|
||||
(def ^:large-vars/data-var schema
|
||||
{:db/ident {:db/unique :db.unique/identity}
|
||||
|
|
|
@ -187,14 +187,14 @@
|
|||
[[:editor/input "" {:last-pattern command-trigger}]
|
||||
[:editor/set-property :block/tags :logseq.class/Query]
|
||||
[:editor/set-property :logseq.property/query ""]
|
||||
[:editor/set-property-on-block-property :logseq.property/query :logseq.property.node/type :code]
|
||||
[:editor/set-property-on-block-property :logseq.property/query :logseq.property.node/display-type :code]
|
||||
[:editor/set-property-on-block-property :logseq.property/query :logseq.property.code/mode "clojure"]]
|
||||
(->block "query")))
|
||||
|
||||
(defn db-based-code-block
|
||||
[]
|
||||
[[:editor/input "" {:last-pattern command-trigger}]
|
||||
[:editor/set-property :logseq.property.node/type :code]
|
||||
[:editor/set-property :logseq.property.node/display-type :code]
|
||||
[:codemirror/focus]])
|
||||
|
||||
(defn file-based-code-block
|
||||
|
@ -214,14 +214,14 @@
|
|||
[]
|
||||
(if (config/db-based-graph? (state/get-current-repo))
|
||||
[[:editor/input "" {:last-pattern command-trigger}]
|
||||
[:editor/set-property :logseq.property.node/type :quote]]
|
||||
[:editor/set-property :logseq.property.node/display-type :quote]]
|
||||
(->block "quote")))
|
||||
|
||||
(defn math-block-steps
|
||||
[]
|
||||
(if (config/db-based-graph? (state/get-current-repo))
|
||||
[[:editor/input "" {:last-pattern command-trigger}]
|
||||
[:editor/set-property :logseq.property.node/type :math]]
|
||||
[:editor/set-property :logseq.property.node/display-type :math]]
|
||||
(->block "export" "latex")))
|
||||
|
||||
(defn get-statuses
|
||||
|
|
|
@ -2138,7 +2138,7 @@
|
|||
|
||||
(defn build-block-title
|
||||
[config block]
|
||||
(let [node-type (:logseq.property.node/type block)]
|
||||
(let [node-type (:logseq.property.node/display-type block)]
|
||||
(case node-type
|
||||
:code
|
||||
[:div.flex.flex-1.w-full
|
||||
|
@ -2411,7 +2411,7 @@
|
|||
:block-content-slotted
|
||||
(-> block (dissoc :block/children :block/page)))]
|
||||
|
||||
(when-not (contains? #{:code :math} (:logseq.property.node/type block))
|
||||
(when-not (contains? #{:code :math} (:logseq.property.node/display-type block))
|
||||
(let [title-collapse-enabled? (:outliner/block-title-collapse-enabled? (state/get-config))]
|
||||
(when (and (not block-ref-with-title?)
|
||||
(seq body)
|
||||
|
@ -2725,7 +2725,7 @@
|
|||
table? (:table? config)]
|
||||
[:div.block-content-or-editor-wrap
|
||||
{:class (when (:page-title? config) "ls-page-title-container")
|
||||
:data-node-type (some-> (:logseq.property.node/type block) name)}
|
||||
:data-node-type (some-> (:logseq.property.node/display-type block) name)}
|
||||
(when (and db-based? (not table?)) (block-positioned-properties config block :block-left))
|
||||
[:div.block-content-or-editor-inner
|
||||
[:div.flex.flex-1.flex-row.gap-1.items-center
|
||||
|
|
|
@ -750,7 +750,7 @@
|
|||
(ui-outliner-tx/transact!
|
||||
{:outliner-op :save-block}
|
||||
(db-property-handler/set-block-properties! (:db/id block)
|
||||
{:logseq.property.node/type :code
|
||||
{:logseq.property.node/display-type :code
|
||||
:logseq.property.code/mode "clojure"})
|
||||
(outliner-op/save-block! {:db/id (:db/id block) :block/title ""}))
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
;; update default value for the editor initial state
|
||||
(set! ds -v value)
|
||||
(cond
|
||||
(= :code (:logseq.property.node/type block))
|
||||
(= :code (:logseq.property.node/display-type block))
|
||||
(editor-handler/save-block-if-changed! block value)
|
||||
|
||||
;; save block content
|
||||
|
|
|
@ -845,7 +845,7 @@
|
|||
db-based? (config/db-based-graph? repo)
|
||||
delete-prev-block? (and db-based?
|
||||
(empty? (:block/tags block))
|
||||
(not (:logseq.property.node/type block))
|
||||
(not (:logseq.property.node/display-type block))
|
||||
(seq (:block/properties block))
|
||||
(empty? (:block/properties prev-block))
|
||||
(not (:logseq.property/created-from-property block)))]
|
||||
|
@ -3360,7 +3360,6 @@
|
|||
(and (seq (:block/tags block))
|
||||
(some (fn [t]
|
||||
(let [properties (map :db/ident (:logseq.property.class/properties t))]
|
||||
(prn :tags (:block/title t) properties)
|
||||
(and (seq properties)
|
||||
(not (db-pu/all-hidden-properties? properties))))) (:block/tags block))))))
|
||||
|
||||
|
|
|
@ -9,7 +9,8 @@
|
|||
[frontend.worker.search :as search]
|
||||
[cljs-bean.core :as bean]
|
||||
[logseq.db.sqlite.util :as sqlite-util]
|
||||
[logseq.common.config :as common-config]))
|
||||
[logseq.common.config :as common-config]
|
||||
[logseq.common.util :as common-util]))
|
||||
|
||||
;; TODO: fixes/rollback
|
||||
|
||||
|
@ -96,6 +97,28 @@
|
|||
[:db/add id new prop-value]]))))
|
||||
old-new-props)))
|
||||
|
||||
(defn- rename-properties
|
||||
[props-to-rename]
|
||||
(fn [conn _search-db]
|
||||
(when (ldb/db-based-graph? @conn)
|
||||
(let [props-tx (mapv (fn [[old new]]
|
||||
(merge {:db/id (:db/id (d/entity @conn old))
|
||||
:db/ident new}
|
||||
(when-let [new-title (get-in db-property/built-in-properties [new :title])]
|
||||
{:block/title new-title
|
||||
:block/name (common-util/page-name-sanity-lc new-title)})))
|
||||
props-to-rename)]
|
||||
;; Property changes need to be in their own tx for subsequent uses of properties to take effect
|
||||
(ldb/transact! conn props-tx {:db-migrate? true})
|
||||
|
||||
(mapcat (fn [[old new]]
|
||||
;; can't use datoms b/c user properties aren't indexed
|
||||
(->> (d/q '[:find ?b ?prop-v :in $ ?prop :where [?b ?prop ?prop-v]] @conn old)
|
||||
(mapcat (fn [[id prop-value]]
|
||||
[[:db/retract id old]
|
||||
[:db/add id new prop-value]]))))
|
||||
props-to-rename)))))
|
||||
|
||||
(defn- update-block-type-many->one
|
||||
[conn _search-db]
|
||||
(let [db @conn
|
||||
|
@ -276,7 +299,8 @@
|
|||
[25 {:properties [:logseq.property/query]
|
||||
:fix add-query-property-to-query-tag}]
|
||||
[26 {:properties [:logseq.property.node/type]}]
|
||||
[27 {:properties [:logseq.property.code/mode]}]])
|
||||
[27 {:properties [:logseq.property.code/mode]}]
|
||||
[28 {:fix (rename-properties {:logseq.property.node/type :logseq.property.node/display-type})}]])
|
||||
|
||||
(let [max-schema-version (apply max (map first schema-version->updates))]
|
||||
(assert (<= db-schema/version max-schema-version))
|
||||
|
|
Loading…
Reference in New Issue