Skip to content

Commit a304df4

Browse files
committed
Resolve circular dep and avoid requring-resolve
1 parent 66ae6a5 commit a304df4

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

src/nextjournal/clerk.clj

+5-4
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
[nextjournal.clerk.eval :as eval]
1313
[nextjournal.clerk.parser :as parser]
1414
[nextjournal.clerk.viewer :as v]
15-
[nextjournal.clerk.webserver :as webserver]))
15+
[nextjournal.clerk.webserver :as webserver]
16+
[nextjournal.clerk.window :as window]))
1617

1718
(defonce ^:private !show-filter-fn (atom nil))
1819
(defonce ^:private !last-file (atom nil))
@@ -78,9 +79,9 @@
7879
#_(show! "https://raw.githubusercontent.com/nextjournal/clerk-demo/main/notebooks/rule_30.clj")
7980
#_(show! (java.io.StringReader. ";; # In Memory Notebook 👋\n(+ 41 1)"))
8081

81-
(defn window! "todo" [& args] (apply (requiring-resolve 'nextjournal.clerk.window/open!) args))
82-
(defn close-window! "todo" [id] ((requiring-resolve 'nextjournal.clerk.window/close!) id))
83-
(defn close-all-windows! "todo" [] ((requiring-resolve 'nextjournal.clerk.window/close-all!)))
82+
(defn window! [& args] (apply window/open! args))
83+
(defn close-window! [id] (window/close! id))
84+
(defn close-all-windows! [] (window/close-all!))
8485

8586
(defn recompute!
8687
"Recomputes the currently visible doc, without parsing it."

src/nextjournal/clerk/tap.clj

+16-17
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
;; # 🚰 Tap Inspector
22
(ns nextjournal.clerk.tap
33
{:nextjournal.clerk/visibility {:code :hide :result :hide}}
4-
(:require [nextjournal.clerk :as clerk]
5-
[nextjournal.clerk.viewer :as v])
4+
(:require [nextjournal.clerk.viewer :as v])
65
(:import (java.time Instant LocalTime ZoneId)))
76

87
(defn inst->local-time-str [inst] (str (LocalTime/ofInstant inst (ZoneId/systemDefault))))
@@ -24,18 +23,18 @@
2423
[:button.text-xs.rounded-full.px-3.py-1.border-2.font-sans.hover:bg-slate-100.cursor-pointer
2524
{:on-click #(nextjournal.clerk.render/clerk-eval `(reset-taps!))} "Clear"]]))))
2625

27-
^{::clerk/sync true ::clerk/viewer switch-view ::clerk/visibility {:result :show}}
26+
^{:nextjournal.clerk/sync true :nextjournal.clerk/viewer switch-view :nextjournal.clerk/visibility {:result :show}}
2827
(defonce !view (atom :stream))
2928

3029
(defonce !taps (atom ()))
3130

3231
(defn reset-taps! []
3332
(reset! !taps ())
34-
(clerk/recompute!))
33+
((resolve 'nextjournal.clerk/recompute!)))
3534

3635
(defn tapped [x]
3736
(swap! !taps conj (record-tap x))
38-
(clerk/recompute!))
37+
((resolve 'nextjournal.clerk/recompute!)))
3938

4039
(defonce tap-setup
4140
(add-tap (fn [x] ((resolve `tapped) x))))
@@ -57,25 +56,25 @@
5756
(update-in [:nextjournal/value ::tapped-at] inst->local-time-str)))})
5857

5958

60-
^{::clerk/visibility {:result :show}
61-
::clerk/viewers (v/add-viewers [tap-viewer])}
62-
(clerk/fragment (cond->> @!taps
63-
(= :latest @!view) (take 1)))
59+
^{:nextjournal.clerk/visibility {:result :show}
60+
:nextjournal.clerk/viewers (v/add-viewers [tap-viewer])}
61+
(v/fragment (cond->> @!taps
62+
(= :latest @!view) (take 1)))
6463

6564
(comment
6665
(last @!taps)
6766
(dotimes [_i 5]
6867
(tap> (rand-int 1000)))
6968
(tap> (shuffle (range (+ 20 (rand-int 200)))))
70-
(tap> (clerk/md "> The purpose of visualization is **insight**, not pictures."))
69+
(tap> (v/md "> The purpose of visualization is **insight**, not pictures."))
7170
(tap> (v/plotly {:data [{:z [[1 2 3] [3 2 1]] :type "surface"}]}))
72-
(tap> (clerk/html {::clerk/width :full} [:h1.w-full.border-2.border-amber-500.bg-amber-500.h-10]))
73-
(tap> (clerk/table {::clerk/width :full} [[1 2] [3 4]]))
74-
(tap> (clerk/plotly {::clerk/width :full} {:data [{:y [3 1 2]}]}))
75-
(tap> (clerk/image "trees.png"))
71+
(tap> (v/html {:nextjournal.clerk/width :full} [:h1.w-full.border-2.border-amber-500.bg-amber-500.h-10]))
72+
(tap> (v/table {:nextjournal.clerk/width :full} [[1 2] [3 4]]))
73+
(tap> (v/plotly {:nextjournal.clerk/width :full} {:data [{:y [3 1 2]}]}))
74+
(tap> (v/image "trees.png"))
7675
(do (require 'rule-30)
77-
(tap> (clerk/with-viewers (clerk/add-viewers rule-30/viewers) rule-30/rule-30)))
78-
(tap> (clerk/with-viewers (clerk/add-viewers rule-30/viewers) rule-30/board))
79-
(tap> (clerk/html [:h1 "Fin. 👋"]))
76+
(tap> (v/with-viewers (v/add-viewers rule-30/viewers) rule-30/rule-30)))
77+
(tap> (v/with-viewers (v/add-viewers rule-30/viewers) rule-30/board))
78+
(tap> (v/html [:h1 "Fin. 👋"]))
8079
(tap> (reduce (fn [acc _] (vector acc)) :fin (range 200)))
8180
(reset-taps!))

0 commit comments

Comments
 (0)