fix(pdf): incorrect highlight value

pull/11483/head
charlie 2024-08-15 18:27:06 +08:00
parent b755369a0b
commit 837a32f03d
2 changed files with 11 additions and 5 deletions

View File

@ -66,7 +66,7 @@
:id :background-color :heading :collapsed :id :background-color :heading :collapsed
:created-at :updated-at :last-modified-at :created-at :updated-at :last-modified-at
:query-table :query-properties :query-sort-by :query-sort-desc :ls-type :query-table :query-properties :query-sort-by :query-sort-desc :ls-type
:hl-type :hl-page :hl-stamp :hl-color :hl-type :hl-page :hl-stamp :hl-color :hl-value
:logseq.order-list-type :logseq.tldraw.page :logseq.tldraw.shape :logseq.order-list-type :logseq.tldraw.page :logseq.tldraw.shape
; task markers ; task markers
:todo :doing :now :later :done} :todo :doing :now :later :done}

View File

@ -113,12 +113,16 @@
(pu/get-pid :logseq.property/hl-type) :area (pu/get-pid :logseq.property/hl-type) :area
(pu/get-pid :logseq.property.pdf/hl-stamp) stamp) (pu/get-pid :logseq.property.pdf/hl-stamp) stamp)
%) %)
db-base? (config/db-based-graph? (state/get-current-repo))
props (cond-> props (cond->
{(pu/get-pid :logseq.property/ls-type) :annotation {(pu/get-pid :logseq.property/ls-type) :annotation
(pu/get-pid :logseq.property.pdf/hl-page) page (pu/get-pid :logseq.property.pdf/hl-page) page
(pu/get-pid :logseq.property/hl-color) (:color properties) (pu/get-pid :logseq.property/hl-color) (:color properties)}
(pu/get-pid :logseq.property.pdf/hl-value) hl}
(not (config/db-based-graph? (state/get-current-repo))) db-base?
(assoc (pu/get-pid :logseq.property.pdf/hl-value) hl)
(not db-base?)
;; force custom uuid ;; force custom uuid
(assoc :id (if (string? id) (uuid id) id))) (assoc :id (if (string? id) (uuid id) id)))
properties (wrap-props props)] properties (wrap-props props)]
@ -256,6 +260,7 @@
page-name (:block/title page) page-name (:block/title page)
file-path (pu/get-block-property-value block :logseq.property.pdf/file-path) file-path (pu/get-block-property-value block :logseq.property.pdf/file-path)
hl-page (pu/get-block-property-value block :logseq.property.pdf/hl-page) hl-page (pu/get-block-property-value block :logseq.property.pdf/hl-page)
hl-value (pu/get-block-property-value block :logseq.property.pdf/hl-value)
db-base? (config/db-based-graph? (state/get-current-repo))] db-base? (config/db-based-graph? (state/get-current-repo))]
(when-let [target-key (and page-name (subs page-name 5))] (when-let [target-key (and page-name (subs page-name 5))]
(p/let [hls (resolve-hls-data-by-key$ target-key) (p/let [hls (resolve-hls-data-by-key$ target-key)
@ -263,7 +268,8 @@
file-path (or file-path (str "../assets/" target-key ".pdf")) file-path (or file-path (str "../assets/" target-key ".pdf"))
href (and db-base? (assets-handler/make-asset-url file-path))] href (and db-base? (assets-handler/make-asset-url file-path))]
(if-let [matched (or (and hls (medley/find-first #(= id (:id %)) hls)) (if-let [matched (or (and hls (medley/find-first #(= id (:id %)) hls))
(and hl-page {:page hl-page}))] (if hl-page {:page hl-page}
(when-let [page (some-> hl-value :page)] {:page page})))]
(do (do
(state/set-state! :pdf/ref-highlight matched) (state/set-state! :pdf/ref-highlight matched)
;; open pdf viewer ;; open pdf viewer