mirror of
https://github.com/status-im/re-frame.git
synced 2025-02-22 06:48:08 +00:00
Remove use of specific loggers. Everything now goes through re-frame.loggers/console.
This commit is contained in:
parent
72397eb6e7
commit
cbef1ec268
@ -1,7 +1,7 @@
|
||||
(ns re-frame.handlers
|
||||
(:require [re-frame.db :refer [app-db]]
|
||||
[re-frame.utils :refer [first-in-vector]]
|
||||
[re-frame.loggers :refer [warn error]]))
|
||||
[re-frame.loggers :refer [console]]))
|
||||
|
||||
|
||||
;; -- composing middleware -----------------------------------------------------------------------
|
||||
@ -17,7 +17,7 @@
|
||||
[v]
|
||||
(remove nil? (map name-of-factory v)))]
|
||||
(doseq [name (factory-names-in v)]
|
||||
(error "re-frame: \"" name "\" is a factory. It must be called like this \"(" name " ...)\", whereas you just used \"" name "\"."))))
|
||||
(console :error "re-frame: \"" name "\" is a factory. It must be called like this \"(" name " ...)\", whereas you just used \"" name "\"."))))
|
||||
|
||||
|
||||
(defn comp-middleware
|
||||
@ -28,11 +28,11 @@
|
||||
(comp-middleware [pure (when debug? debug)]) ;; that 'when' might leave a nil"
|
||||
[v]
|
||||
(cond
|
||||
(fn? v) v ;; assumed to be existing middleware
|
||||
(coll? v) (let [v (remove nil? (flatten v))]
|
||||
(report-middleware-factories v)
|
||||
(apply comp v))
|
||||
:else (warn "re-frame: comp-middleware expects a vector, got: " v)))
|
||||
(fn? v) v ;; assumed to be existing middleware
|
||||
(coll? v) (let [v (remove nil? (flatten v))]
|
||||
(report-middleware-factories v)
|
||||
(apply comp v))
|
||||
:else (console :warn "re-frame: comp-middleware expects a vector, got: " v)))
|
||||
|
||||
|
||||
;; -- the register of event handlers --------------------------------------------------------------
|
||||
@ -57,7 +57,7 @@
|
||||
generally be used."
|
||||
([event-id handler-fn]
|
||||
(when (contains? @id->fn event-id)
|
||||
(warn "re-frame: overwriting an event-handler for: " event-id)) ;; allow it, but warn.
|
||||
(console :warn "re-frame: overwriting an event-handler for: " event-id)) ;; allow it, but warn.
|
||||
(swap! id->fn assoc event-id handler-fn))
|
||||
|
||||
([event-id middleware handler-fn]
|
||||
@ -85,9 +85,9 @@
|
||||
(let [event-id (first-in-vector event-v)
|
||||
handler-fn (lookup-handler event-id)]
|
||||
(if (nil? handler-fn)
|
||||
(error "re-frame: no event handler registered for: \"" event-id "\". Ignoring.")
|
||||
(console :error "re-frame: no event handler registered for: \"" event-id "\". Ignoring.")
|
||||
(if *handling*
|
||||
(error "re-frame: while handling \"" *handling* "\" dispatch-sync was called for \"" event-v "\". You can't call dispatch-sync in an event handler.")
|
||||
(console :error "re-frame: while handling \"" *handling* "\" dispatch-sync was called for \"" event-v "\". You can't call dispatch-sync in an event handler.")
|
||||
(binding [*handling* event-v]
|
||||
(handler-fn app-db event-v))))))
|
||||
|
||||
|
@ -6,19 +6,17 @@
|
||||
;; By default, re-frame uses the functions provided by js/console.
|
||||
;; Use set-loggers! to change these defaults.
|
||||
|
||||
(def loggers
|
||||
(def ^:private loggers
|
||||
(atom {:log (js/console.log.bind js/console)
|
||||
:warn (js/console.warn.bind js/console)
|
||||
:error (js/console.error.bind js/console)
|
||||
:group (if (.-group js/console) (js/console.group.bind js/console) default-log) ;; console.group does not exist < IE 11
|
||||
:group (if (.-group js/console) (js/console.group.bind js/console) (js/console.log.bind js/console)) ;; console.group does not exist < IE 11
|
||||
:groupEnd (if (.-groupEnd js/console) (js/console.groupEnd.bind js/console) #())})) ;; console.groupEnd does not exist < IE 11
|
||||
|
||||
|
||||
(defn log [& args] (apply (:log @loggers) args))
|
||||
(defn warn [& args] (apply (:warn @loggers) args))
|
||||
(defn group [& args] (apply (:group @loggers) args))
|
||||
(defn groupEnd [& args] (apply (:groupEnd @loggers) args))
|
||||
(defn error [& args] (apply (:error @loggers) args))
|
||||
(defn console
|
||||
[level & args]
|
||||
(assert (contains? @loggers level) (str "re-frame: log called with unknown level: " level))
|
||||
(apply (level @loggers) args))
|
||||
|
||||
|
||||
(defn set-loggers!
|
||||
|
@ -1,7 +1,7 @@
|
||||
(ns re-frame.middleware
|
||||
(:require
|
||||
[reagent.ratom :refer [IReactiveAtom]]
|
||||
[re-frame.loggers :refer [warn log group groupEnd error]]
|
||||
[re-frame.loggers :refer [console]]
|
||||
[clojure.data :as data]))
|
||||
|
||||
|
||||
@ -25,13 +25,13 @@
|
||||
(if-not (satisfies? IReactiveAtom app-db)
|
||||
(do
|
||||
(if (map? app-db)
|
||||
(warn "re-frame: Looks like \"pure\" is in the middleware pipeline twice. Ignoring.")
|
||||
(warn "re-frame: \"pure\" middleware not given a Ratom. Got: " app-db))
|
||||
(console :warn "re-frame: Looks like \"pure\" is in the middleware pipeline twice. Ignoring.")
|
||||
(console :warn "re-frame: \"pure\" middleware not given a Ratom. Got: " app-db))
|
||||
handler) ;; turn this into a noop handler
|
||||
(let [db @app-db
|
||||
new-db (handler db event-vec)]
|
||||
(if (nil? new-db)
|
||||
(error "re-frame: your pure handler returned nil. It should return the new db state.")
|
||||
(console :error "re-frame: your pure handler returned nil. It should return the new db state.")
|
||||
(if-not (identical? db new-db)
|
||||
(reset! app-db new-db)))))))
|
||||
|
||||
@ -46,16 +46,16 @@
|
||||
[handler]
|
||||
(fn debug-handler
|
||||
[db v]
|
||||
(log "Handling re-frame event: " v)
|
||||
(console :log "Handling re-frame event: " v)
|
||||
(let [new-db (handler db v)
|
||||
[before after] (data/diff db new-db)
|
||||
db-changed? (or (some? before) (some? after))]
|
||||
(if db-changed?
|
||||
(do (group "clojure.data/diff for: " v)
|
||||
(log "only before: " before)
|
||||
(log "only after : " after)
|
||||
(groupEnd))
|
||||
(log "clojure.data/diff no changes for: " v))
|
||||
(do (console :group "clojure.data/diff for: " v)
|
||||
(console :log "only before: " before)
|
||||
(console :log "only after : " after)
|
||||
(console :groupEnd))
|
||||
(console :log "clojure.data/diff no changes for: " v))
|
||||
new-db)))
|
||||
|
||||
|
||||
@ -92,7 +92,7 @@
|
||||
[& args]
|
||||
(let [path (flatten args)]
|
||||
(when (empty? path)
|
||||
(error "re-frame: \"path\" middleware given no params."))
|
||||
(console :error "re-frame: \"path\" middleware given no params."))
|
||||
(fn path-middleware
|
||||
[handler]
|
||||
(fn path-handler
|
||||
|
@ -1,7 +1,6 @@
|
||||
(ns re-frame.router
|
||||
(:require [reagent.core]
|
||||
[re-frame.handlers :refer [handle]]
|
||||
[re-frame.loggers :refer [warn error]]
|
||||
[goog.async.nextTick]))
|
||||
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
[cljs.spec :as s]
|
||||
[reagent.ratom :as ratom :refer [make-reaction] :refer-macros [reaction]]
|
||||
[re-frame.db :refer [app-db]]
|
||||
[re-frame.loggers :refer [warn error]]
|
||||
[re-frame.loggers :refer [console]]
|
||||
[re-frame.utils :refer [first-in-vector]]))
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
"Registers a subscription handler function for an query id"
|
||||
[query-id handler-fn]
|
||||
(if (contains? @qid->fn query-id)
|
||||
(warn "re-frame: overwriting subscription handler for: " query-id)) ;; allow it, but warn. Happens on figwheel reloads.
|
||||
(console :warn "re-frame: overwriting subscription handler for: " query-id)) ;; allow it, but warn. Happens on figwheel reloads.
|
||||
(swap! qid->fn assoc query-id handler-fn))
|
||||
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
(let [cache-key [query-v dynv]]
|
||||
;; when this reaction is nolonger being used, remove it from the cache
|
||||
(ratom/add-on-dispose! r #(do (swap! query->reaction dissoc cache-key)
|
||||
(warn "Removing subscription: " cache-key)))
|
||||
(console :warn "Removing subscription: " cache-key)))
|
||||
|
||||
(.log js/console "Dispatch site: ")
|
||||
(.log js/console (:dispatch-site (meta query-v)))
|
||||
@ -63,31 +63,31 @@
|
||||
"Returns a Reagent/reaction which contains a computation"
|
||||
([query-v]
|
||||
(if-let [cached (cache-lookup query-v)]
|
||||
(do (warn "Using cached subscription: " query-v)
|
||||
(do (console :warn "Using cached subscription: " query-v)
|
||||
cached)
|
||||
(let [query-id (first-in-vector query-v)
|
||||
handler-fn (get @qid->fn query-id)]
|
||||
(warn "Subscription crerated: " query-v)
|
||||
(console :warn "Subscription crerated: " query-v)
|
||||
(if-not handler-fn
|
||||
(error "re-frame: no subscription handler registered for: \"" query-id "\". Returning a nil subscription."))
|
||||
(console :error "re-frame: no subscription handler registered for: \"" query-id "\". Returning a nil subscription."))
|
||||
(cache-and-return query-v [] (handler-fn app-db query-v)))))
|
||||
|
||||
([v dynv]
|
||||
(if-let [cached (cache-lookup v dynv)]
|
||||
(do (warn "Using cached subscription: " v " and " dynv)
|
||||
(do (console :warn "Using cached subscription: " v " and " dynv)
|
||||
cached)
|
||||
(let [query-id (first-in-vector v)
|
||||
handler-fn (get @qid->fn query-id)]
|
||||
(when ^boolean js/goog.DEBUG
|
||||
(when-let [not-reactive (remove #(implements? reagent.ratom/IReactiveAtom %) dynv)]
|
||||
(warn "re-frame: your subscription's dynamic parameters that don't implement IReactiveAtom: " not-reactive)))
|
||||
(console :warn "re-frame: your subscription's dynamic parameters that don't implement IReactiveAtom: " not-reactive)))
|
||||
(if (nil? handler-fn)
|
||||
(error "re-frame: no subscription handler registered for: \"" query-id "\". Returning a nil subscription.")
|
||||
(console :error "re-frame: no subscription handler registered for: \"" query-id "\". Returning a nil subscription.")
|
||||
(let [dyn-vals (reaction (mapv deref dynv))
|
||||
sub (reaction (handler-fn app-db v @dyn-vals))]
|
||||
;; handler-fn returns a reaction which is then wrapped in the sub reaction
|
||||
;; need to double deref it to get to the actual value.
|
||||
(warn "Subscription created: " v dynv)
|
||||
(console :warn "Subscription created: " v dynv)
|
||||
(cache-and-return v dynv (reaction @@sub))))))))
|
||||
|
||||
;; -- Helper code for register-pure -------------------
|
||||
|
@ -2,7 +2,7 @@
|
||||
(:require-macros [reagent.ratom :refer [reaction]])
|
||||
(:require
|
||||
[reagent.core :as reagent]
|
||||
[re-frame.loggers :refer [warn error]]
|
||||
[re-frame.loggers :refer [console]]
|
||||
[re-frame.db :refer [app-db]]
|
||||
[re-frame.handlers :as handlers]
|
||||
[re-frame.subs :as subs]))
|
||||
@ -20,7 +20,7 @@
|
||||
(defn undo-config!
|
||||
[new-config]
|
||||
(if-let [unknown-keys (seq (clojure.set/difference (-> new-config keys set) (-> @config keys set)))]
|
||||
(warn "re-frame: you called undo-config! within unknown keys: " unknown-keys)
|
||||
(console :warn "re-frame: you called undo-config! within unknown keys: " unknown-keys)
|
||||
(swap! config merge new-config)))
|
||||
|
||||
|
||||
@ -150,7 +150,7 @@
|
||||
(fn handler
|
||||
[_ [_ n]]
|
||||
(if-not (undos?)
|
||||
(warn "re-frame: you did a (dispatch [:undo]), but there is nothing to undo.")
|
||||
(console :warn "re-frame: you did a (dispatch [:undo]), but there is nothing to undo.")
|
||||
(undo-n (or n 1)))))
|
||||
|
||||
|
||||
@ -175,7 +175,7 @@
|
||||
(fn handler ;; if n absent, defaults to 1
|
||||
[_ [_ n]]
|
||||
(if-not (redos?)
|
||||
(warn "re-frame: you did a (dispatch [:redo]), but there is nothing to redo.")
|
||||
(console :warn "re-frame: you did a (dispatch [:redo]), but there is nothing to redo.")
|
||||
(redo-n (or n 1)))))
|
||||
|
||||
(handlers/register-base ;; not a pure handler
|
||||
@ -183,7 +183,7 @@
|
||||
(fn handler
|
||||
[_ _]
|
||||
(if-not (redos?)
|
||||
(warn "re-frame: you did a (dispatch [:purge-redos]), but there is nothing to redo.")
|
||||
(console :warn "re-frame: you did a (dispatch [:purge-redos]), but there is nothing to redo.")
|
||||
(clear-redos!))))
|
||||
|
||||
|
||||
@ -205,7 +205,7 @@
|
||||
(fn? explanation) (explanation db event-vec)
|
||||
(string? explanation) explanation
|
||||
(nil? explanation) ""
|
||||
:else (error "re-frame: \"undoable\" middleware given a bad parameter. Got: " explanation))]
|
||||
:else (console :error "re-frame: \"undoable\" middleware given a bad parameter. Got: " explanation))]
|
||||
(store-now! explanation)
|
||||
(handler db event-vec)))))
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
(ns re-frame.utils
|
||||
(:require
|
||||
[re-frame.loggers :refer [error]]))
|
||||
[re-frame.loggers :refer [console]]))
|
||||
|
||||
|
||||
(defn first-in-vector
|
||||
[v]
|
||||
(if (vector? v)
|
||||
(first v)
|
||||
(error "re-frame: expected a vector, but got: " v)))
|
||||
(console :error "re-frame: expected a vector, but got: " v)))
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user