goog.provide('re_frame.registrar'); re_frame.registrar.kinds = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"sub","sub",-2093760025),null,new cljs.core.Keyword(null,"event","event",301435442),null,new cljs.core.Keyword(null,"cofx","cofx",2013202907),null,new cljs.core.Keyword(null,"fx","fx",-1237829572),null], null), null); re_frame.registrar.kind__GT_id__GT_handler = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY); re_frame.registrar.get_handler = (function re_frame$registrar$get_handler(var_args){ var G__52734 = arguments.length; switch (G__52734) { case 1: return re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; case 3: return re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$1 = (function (kind){ return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(re_frame.registrar.kind__GT_id__GT_handler),kind); })); (re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$2 = (function (kind,id){ return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(re_frame.registrar.kind__GT_id__GT_handler),kind),id); })); (re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$3 = (function (kind,id,required_QMARK_){ var handler = re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$2(kind,id); if(re_frame.interop.debug_enabled_QMARK_){ if(cljs.core.truth_((function (){var and__5023__auto__ = required_QMARK_; if(cljs.core.truth_(and__5023__auto__)){ return (handler == null); } else { return and__5023__auto__; } })())){ re_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,"error","error",-978969032),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["re-frame: no",cljs.core.str.cljs$core$IFn$_invoke$arity$1(kind),"handler registered for:",id], 0)); } else { } } else { } return handler; })); (re_frame.registrar.get_handler.cljs$lang$maxFixedArity = 3); re_frame.registrar.register_handler = (function re_frame$registrar$register_handler(kind,id,handler_fn){ if(re_frame.interop.debug_enabled_QMARK_){ if(cljs.core.truth_((function (){var and__5023__auto__ = cljs.core.not(re_frame.settings.loaded_QMARK_()); if(and__5023__auto__){ return re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$3(kind,id,false); } else { return and__5023__auto__; } })())){ re_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,"warn","warn",-436710552),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["re-frame: overwriting",cljs.core.str.cljs$core$IFn$_invoke$arity$1(kind),"handler for:",id], 0)); } else { } } else { } cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(re_frame.registrar.kind__GT_id__GT_handler,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [kind,id], null),handler_fn); return handler_fn; }); re_frame.registrar.clear_handlers = (function re_frame$registrar$clear_handlers(var_args){ var G__52738 = arguments.length; switch (G__52738) { case 0: return re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$0(); break; case 1: return re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$0 = (function (){ return cljs.core.reset_BANG_(re_frame.registrar.kind__GT_id__GT_handler,cljs.core.PersistentArrayMap.EMPTY); })); (re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$1 = (function (kind){ if(cljs.core.truth_((re_frame.registrar.kinds.cljs$core$IFn$_invoke$arity$1 ? re_frame.registrar.kinds.cljs$core$IFn$_invoke$arity$1(kind) : re_frame.registrar.kinds.call(null,kind)))){ } else { throw (new Error("Assert failed: (kinds kind)")); } return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(re_frame.registrar.kind__GT_id__GT_handler,cljs.core.dissoc,kind); })); (re_frame.registrar.clear_handlers.cljs$core$IFn$_invoke$arity$2 = (function (kind,id){ if(cljs.core.truth_((re_frame.registrar.kinds.cljs$core$IFn$_invoke$arity$1 ? re_frame.registrar.kinds.cljs$core$IFn$_invoke$arity$1(kind) : re_frame.registrar.kinds.call(null,kind)))){ } else { throw (new Error("Assert failed: (kinds kind)")); } if(cljs.core.truth_(re_frame.registrar.get_handler.cljs$core$IFn$_invoke$arity$2(kind,id))){ return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(re_frame.registrar.kind__GT_id__GT_handler,cljs.core.update_in,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [kind], null),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([id], 0)); } else { return re_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,"warn","warn",-436710552),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["re-frame: can't clear",cljs.core.str.cljs$core$IFn$_invoke$arity$1(kind),"handler for",[cljs.core.str.cljs$core$IFn$_invoke$arity$1(id),". Handler not found."].join('')], 0)); } })); (re_frame.registrar.clear_handlers.cljs$lang$maxFixedArity = 2); //# sourceMappingURL=re_frame.registrar.js.map