Explorar o código

fix: add class property

Tienson Qin hai 1 ano
pai
achega
04b00322a3

+ 5 - 4
deps/db/src/logseq/db/frontend/schema.cljs

@@ -91,10 +91,6 @@
    ;; page's original name
    ;; page's original name
    :block/original-name {:db/unique :db.unique/identity}
    :block/original-name {:db/unique :db.unique/identity}
 
 
-   ;; class properties
-   :class/schema.properties {:db/valueType :db.type/ref
-                             :db/cardinality :db.cardinality/many}
-
    ;; whether page's is a journal
    ;; whether page's is a journal
    :block/journal? {}
    :block/journal? {}
    :block/journal-day {}
    :block/journal-day {}
@@ -123,8 +119,13 @@
            :block/properties :block/properties-text-values :block/pre-block? :recent/pages :file/handle :block/file
            :block/properties :block/properties-text-values :block/pre-block? :recent/pages :file/handle :block/file
            :block/properties-order)
            :block/properties-order)
    {:block/name {:db/index true}        ; remove db/unique for :block/name
    {:block/name {:db/index true}        ; remove db/unique for :block/name
+    ;; class properties
     :class/parent {:db/valueType :db.type/ref
     :class/parent {:db/valueType :db.type/ref
                    :db/index true}
                    :db/index true}
+    :class/schema.properties {:db/valueType :db.type/ref
+                              :db/cardinality :db.cardinality/many
+                              :db/index true}
+
     :file/last-modified-at {}
     :file/last-modified-at {}
     :asset/uuid {:db/unique :db.unique/identity}
     :asset/uuid {:db/unique :db.unique/identity}
     :asset/meta {}}))
     :asset/meta {}}))

+ 7 - 4
src/main/frontend/components/property.cljs

@@ -716,10 +716,13 @@
                           (map #(vector % %)))
                           (map #(vector % %)))
                      (sort-by first block-properties))
                      (sort-by first block-properties))
         remove-built-in-properties (fn [properties]
         remove-built-in-properties (fn [properties]
-                                     (remove (fn [[id _]]
-                                               (when-let [ent (db/entity id)]
-                                                 (and (not (get-in ent [:block/schema :public?]))
-                                                      (ldb/built-in? ent))))
+                                     (remove (fn [property]
+                                               (let [id (if (vector? property) (first property) property)]
+                                                 (or
+                                                 (= id :block/tags)
+                                                 (when-let [ent (db/entity id)]
+                                                   (and (not (get-in ent [:block/schema :public?]))
+                                                        (ldb/built-in? ent))))))
                                              properties))
                                              properties))
         {:keys [classes all-classes classes-properties]} (db-property-handler/get-block-classes-properties (:db/id block))
         {:keys [classes all-classes classes-properties]} (db-property-handler/get-block-classes-properties (:db/id block))
         one-class? (= 1 (count classes))
         one-class? (= 1 (count classes))