Skip to content

Commit

Permalink
Support passing :sync-state to wrapped value in present
Browse files Browse the repository at this point in the history
  • Loading branch information
mk committed Oct 2, 2024
1 parent 922f2e7 commit ff0cc0b
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions src/nextjournal/clerk/viewer.cljc
Original file line number Diff line number Diff line change
Expand Up @@ -914,11 +914,11 @@
(defn ->opts [wrapped-value]
(select-keys wrapped-value [:nextjournal/budget :nextjournal/css-class :nextjournal/width :nextjournal/render-opts
:nextjournal/render-evaluator
:!budget :store!-wrapped-value :present-elision-fn :path :offset]))
:!budget :store!-wrapped-value :sync-state :present-elision-fn :path :offset]))

(defn inherit-opts [{:as wrapped-value :nextjournal/keys [viewers]} value path-segment]
(-> (ensure-wrapped-with-viewers viewers value)
(merge (select-keys wrapped-value [:!budget :store!-wrapped-value :present-elision-fn :nextjournal/budget :path :sync-state]))
(merge (select-keys wrapped-value [:!budget :store!-wrapped-value :sync-state :present-elision-fn :nextjournal/budget :path]))
(update :path (fnil conj []) path-segment)))

(defn present-ex-data [parent throwable-map]
Expand Down Expand Up @@ -1772,7 +1772,8 @@
(merge {:store!-wrapped-value (fn [{:as wrapped-value :keys [path]}]
(swap! !path->wrapped-value assoc path wrapped-value))
:present-elision-fn (partial present-elision* !path->wrapped-value)
:path (:path opts [])}
:path (:path opts [])
:sync-state @!sync-state}
(make-!budget-opts opts)
opts)
present*
Expand Down

0 comments on commit ff0cc0b

Please sign in to comment.