|
1 | 1 | (ns nextjournal.clerk.render |
2 | 2 | (:refer-clojure :exclude [atom]) |
3 | | - (:require #?@(:cljs |
4 | | - [["framer-motion" :refer [motion]] |
5 | | - ["react" :as react] |
6 | | - ["react-dom/client" :as react-client] |
7 | | - [applied-science.js-interop :as j] |
8 | | - [cljs.reader] |
9 | | - [goog.events :as gevents] |
10 | | - [goog.object] |
11 | | - [goog.string :as gstring] |
12 | | - |
13 | | - [nextjournal.clerk.render.code :as code] |
14 | | - [nextjournal.clerk.render.context :as view-context] |
15 | | - [nextjournal.clerk.render.hooks :as hooks] |
16 | | - [nextjournal.clerk.render.navbar :as navbar] |
17 | | - [nextjournal.clerk.render.panel :as panel] |
18 | | - [reagent.core :as r] |
19 | | - [reagent.ratom :as ratom] |
20 | | - [sci.core :as sci] |
21 | | - [sci.ctx-store] |
22 | | - [shadow.cljs.modern :refer [defclass]]]) |
23 | | - [clojure.core :as core] |
24 | | - [clojure.set :as set] |
25 | | - [clojure.string :as str] |
26 | | - [editscript.core :as editscript] |
27 | | - [nextjournal.clerk.viewer :as viewer] |
28 | | - [nextjournal.clerk.walk :as w])) |
| 3 | + (:require |
| 4 | + [clojure.string :as str] |
| 5 | + [nextjournal.clerk.viewer :as viewer] |
| 6 | + #?@(:cljs |
| 7 | + [["framer-motion" :refer [motion]] |
| 8 | + ["react" :as react] |
| 9 | + ["react-dom/client" :as react-client] |
| 10 | + [applied-science.js-interop :as j] |
| 11 | + [cljs.reader] |
| 12 | + [clojure.set :as set] |
| 13 | + [editscript.core :as editscript] |
| 14 | + [goog.events :as gevents] |
| 15 | + [goog.object] |
| 16 | + [goog.string :as gstring] |
| 17 | + [nextjournal.clerk.render.code :as code] |
| 18 | + [nextjournal.clerk.render.context :as view-context] |
| 19 | + [nextjournal.clerk.render.hooks :as hooks] |
| 20 | + [nextjournal.clerk.render.navbar :as navbar] |
| 21 | + [nextjournal.clerk.render.panel :as panel] |
| 22 | + [nextjournal.clerk.walk :as w] |
| 23 | + [reagent.core :as r] |
| 24 | + [reagent.ratom :as ratom] |
| 25 | + [sci.core :as sci] |
| 26 | + [sci.ctx-store] |
| 27 | + [shadow.cljs.modern :refer [defclass]]] |
| 28 | + :clj |
| 29 | + [[clojure.core :as core]]))) |
29 | 30 |
|
30 | 31 | #?(:cljs (r/set-default-compiler! (r/create-compiler {:function-components true}))) |
31 | 32 |
|
|
60 | 61 | (defonce !panels (cursor !state [:panels])) |
61 | 62 | (defonce !render-errors (cursor !state [:render-errors])) |
62 | 63 |
|
63 | | -#_(defn reagent-atom? [x] |
64 | | - (satisfies? ratom/IReactiveAtom x)) |
| 64 | +#?(:cljs (defn reagent-atom? [x] |
| 65 | + (satisfies? ratom/IReactiveAtom x))) |
65 | 66 |
|
66 | 67 | (defn dark-mode-toggle [] |
67 | 68 | #?(:cljs |
|
665 | 666 |
|
666 | 667 | (declare mount) |
667 | 668 |
|
668 | | -(defonce ^:private ^:dynamic *sync* true) |
| 669 | +#?(:cljs (defonce ^:private ^:dynamic *sync* true)) |
669 | 670 |
|
670 | 671 | #?(:cljs (defn ws-send! [msg] |
671 | 672 | (if (exists? js/ws_send) |
|
0 commit comments