|
@@ -415,8 +415,8 @@
|
|
|
(vec
|
|
|
(mapcat
|
|
|
(fn [{:keys [page blocks]}]
|
|
|
- (let [ignore-page-tx? (and build-existing-tx? (not (::new-page? (meta page))) (not (:build/keep-uuid? page)))
|
|
|
- page' (if ignore-page-tx?
|
|
|
+ (let [build-existing-tx?' (and build-existing-tx? (not (::new-page? (meta page))) (not (:build/keep-uuid? page)))
|
|
|
+ page' (if build-existing-tx?'
|
|
|
page
|
|
|
(merge
|
|
|
;; TODO: Use sqlite-util/build-new-page
|
|
@@ -430,8 +430,8 @@
|
|
|
page-id-fn)]
|
|
|
(into
|
|
|
;; page tx
|
|
|
- (if ignore-page-tx?
|
|
|
- []
|
|
|
+ (if build-existing-tx?'
|
|
|
+ [(select-keys page [:block/uuid :block/created-at :block/updated-at])]
|
|
|
(build-page-tx page' all-idents page-uuids properties))
|
|
|
;; blocks tx
|
|
|
(reduce (fn [acc m]
|
|
@@ -707,8 +707,8 @@
|
|
|
See auto-create-ontology for more details
|
|
|
* :build-existing-tx? - When set to true, blocks, pages, properties and classes with :block/uuid are treated as
|
|
|
existing in DB and are skipped for creation. This is useful for building tx on existing DBs e.g. for importing.
|
|
|
- Blocks are updated with any attributes passed to it while all other node types are ignored for update unless
|
|
|
- :build/keep-uuid? is set.
|
|
|
+ Blocks and pages are updated with any attributes passed to it while all other node types are ignored for update
|
|
|
+ unless :build/keep-uuid? is set.
|
|
|
* :page-id-fn - custom fn that returns ent lookup id for page refs e.g. `[:block/uuid X]`
|
|
|
Default is :db/id
|
|
|
|