diff --git a/resources/day8/re_frame/trace/main.css b/resources/day8/re_frame/trace/main.css index 4d580a5..c2923cf 100644 --- a/resources/day8/re_frame/trace/main.css +++ b/resources/day8/re_frame/trace/main.css @@ -456,6 +456,9 @@ color: #8f8f8f; content: "}"; } +#--re-frame-trace-- .re-frame-trace--object { + display: block; +} #--re-frame-trace-- .re-frame-trace--object:before { color: #8f8f8f; content: "▶ "; diff --git a/resources/day8/re_frame/trace/main.less b/resources/day8/re_frame/trace/main.less index 19383a2..1460947 100644 --- a/resources/day8/re_frame/trace/main.less +++ b/resources/day8/re_frame/trace/main.less @@ -579,5 +579,6 @@ color: @text-color-muted; content: "▶ "; } + display: block; } } diff --git a/src/day8/re_frame/trace/app_state.cljs b/src/day8/re_frame/trace/app_state.cljs index f038fe4..b7d772e 100644 --- a/src/day8/re_frame/trace/app_state.cljs +++ b/src/day8/re_frame/trace/app_state.cljs @@ -30,14 +30,16 @@ [:div {:class (str (namespace-css "collection") " " (namespace-css (css-munge (type-string data))))}] [:span {:class (str (namespace-css "primative") " " (namespace-css (css-munge (type-string data))))} (str data)])) -(defn jsonml-style - [style-map] - {:style {:background "rgba(0,0,0,0.04)"}}) +(defn string->css [css-string] + (->> (map #(str/split % #":") (str/split (get css-string "style") #";")) + (reduce (fn [acc [property value]] + (assoc acc (keyword property) value)) {}))) (defn str->hiccup [string] (cond (= string "span") :span (= string "style") :style + (= string ", ") " " :else string)) (defn crawl @@ -55,7 +57,7 @@ (.-object (get jsonml 1)) (.-config (get jsonml 1))))] (mapv jsonml->hiccup jsonml)) - (object? jsonml) (jsonml-style jsonml) + (object? jsonml) {:style (string->css (js->clj jsonml))} :else (str->hiccup jsonml))) (defn tab [data]