create-expo-cljs-app
Version:
Create a react native application with Expo and Shadow-CLJS!
1 lines • 79.4 kB
JSON
["^ ","~:output",["^ ","~:js","goog.provide('re_frame.std_interceptors');\nre_frame.std_interceptors.debug = re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"debug\",\"debug\",-1608172596),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$debug_before(context){\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"log\",\"log\",-1595516004),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Handling re-frame event:\",re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442))], 0));\n\nreturn context;\n}),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function re_frame$std_interceptors$debug_after(context){\nvar event = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nvar orig_db = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nvar new_db = re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$3(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),new cljs.core.Keyword(\"re-frame.std-interceptors\",\"not-found\",\"re-frame.std-interceptors/not-found\",-1614827865));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new_db,new cljs.core.Keyword(\"re-frame.std-interceptors\",\"not-found\",\"re-frame.std-interceptors/not-found\",-1614827865))){\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"log\",\"log\",-1595516004),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"No app-db changes in:\",event], 0));\n} else {\nvar vec__47524_47696 = clojure.data.diff(orig_db,new_db);\nvar only_before_47697 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47524_47696,(0),null);\nvar only_after_47698 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47524_47696,(1),null);\nvar db_changed_QMARK__47699 = (((!((only_before_47697 == null)))) || ((!((only_after_47698 == null)))));\nif(db_changed_QMARK__47699){\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"group\",\"group\",582596132),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"db clojure.data/diff for:\",event], 0));\n\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"log\",\"log\",-1595516004),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"only before:\",only_before_47697], 0));\n\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"log\",\"log\",-1595516004),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"only after :\",only_after_47698], 0));\n\nre_frame.loggers.console(new cljs.core.Keyword(null,\"groupEnd\",\"groupEnd\",-337721382));\n} else {\nre_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\"log\",\"log\",-1595516004),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"No app-db changes resulted from:\",event], 0));\n}\n}\n\nreturn context;\n})], 0));\nre_frame.std_interceptors.trim_v = re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"trim-v\",\"trim-v\",-1274938640),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$trimv_before(context){\nreturn re_frame.interceptor.assoc_coeffect(re_frame.interceptor.update_coeffect.cljs$core$IFn$_invoke$arity$variadic(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442),cljs.core.subvec,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(1)], 0)),new cljs.core.Keyword(\"re-frame.std-interceptors\",\"untrimmed-event\",\"re-frame.std-interceptors/untrimmed-event\",-840935075),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442)));\n}),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function re_frame$std_interceptors$trimv_after(context){\nreturn re_frame.interceptor.assoc_coeffect(re_frame.utils.dissoc_in(context,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),new cljs.core.Keyword(\"re-frame.std-interceptors\",\"untrimmed-event\",\"re-frame.std-interceptors/untrimmed-event\",-840935075)], null)),new cljs.core.Keyword(null,\"event\",\"event\",301435442),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(\"re-frame.std-interceptors\",\"untrimmed-event\",\"re-frame.std-interceptors/untrimmed-event\",-840935075)));\n})], 0));\n/**\n * Returns an interceptor which wraps the kind of event handler given to `reg-event-db`.\n * \n * These handlers take two arguments; `db` and `event`, and they return `db`.\n * \n * (fn [db event]\n * ....)\n * \n * So, the interceptor wraps the given handler:\n * 1. extracts two `:coeffects` keys: db and event\n * 2. calls handler-fn\n * 3. stores the db result back into context's `:effects`\n */\nre_frame.std_interceptors.db_handler__GT_interceptor = (function re_frame$std_interceptors$db_handler__GT_interceptor(handler_fn){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"db-handler\",\"db-handler\",579530098),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$db_handler__GT_interceptor_$_db_handler_before(context){\nvar new_context = ((re_frame.trace.is_trace_enabled_QMARK_())?(function (){var _STAR_current_trace_STAR__orig_val__47538 = re_frame.trace._STAR_current_trace_STAR_;\nvar _STAR_current_trace_STAR__temp_val__47539 = re_frame.trace.start_trace(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"op-type\",\"op-type\",-1636141668),new cljs.core.Keyword(\"event\",\"handler\",\"event/handler\",-295903150),new cljs.core.Keyword(null,\"operation\",\"operation\",-1267664310),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442))], null));\n(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__temp_val__47539);\n\ntry{try{var map__47544 = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context);\nvar map__47544__$1 = (((((!((map__47544 == null))))?(((((map__47544.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__47544.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__47544):map__47544);\nvar db = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47544__$1,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nvar event = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47544__$1,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nreturn re_frame.interceptor.assoc_effect(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),(handler_fn.cljs$core$IFn$_invoke$arity$2 ? handler_fn.cljs$core$IFn$_invoke$arity$2(db,event) : handler_fn.call(null,db,event)));\n}finally {if(re_frame.trace.is_trace_enabled_QMARK_()){\nvar end__47248__auto___47744 = re_frame.interop.now();\nvar duration__47249__auto___47745 = (end__47248__auto___47744 - new cljs.core.Keyword(null,\"start\",\"start\",-355208981).cljs$core$IFn$_invoke$arity$1(re_frame.trace._STAR_current_trace_STAR_));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(re_frame.trace.traces,cljs.core.conj,cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"duration\",\"duration\",1444101068),duration__47249__auto___47745,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"end\",\"end\",-268185958),re_frame.interop.now()], 0)));\n\nre_frame.trace.run_tracing_callbacks_BANG_(end__47248__auto___47744);\n} else {\n}\n}}finally {(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__orig_val__47538);\n}})():(function (){var map__47548 = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context);\nvar map__47548__$1 = (((((!((map__47548 == null))))?(((((map__47548.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__47548.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__47548):map__47548);\nvar db = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47548__$1,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nvar event = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47548__$1,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nreturn re_frame.interceptor.assoc_effect(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),(handler_fn.cljs$core$IFn$_invoke$arity$2 ? handler_fn.cljs$core$IFn$_invoke$arity$2(db,event) : handler_fn.call(null,db,event)));\n})());\nif(re_frame.trace.is_trace_enabled_QMARK_()){\nvar new_trace__47250__auto___47763 = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.update.cljs$core$IFn$_invoke$arity$4(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),cljs.core.merge,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977).cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null))),cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null),new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977))], 0));\n(re_frame.trace._STAR_current_trace_STAR_ = new_trace__47250__auto___47763);\n\n} else {\n}\n\nreturn new_context;\n})], 0));\n});\n/**\n * Returns an interceptor which wraps the kind of event handler given to `reg-event-fx`.\n * \n * These handlers take two arguments; `coeffects` and `event`, and they return `effects`.\n * \n * (fn [coeffects event]\n * {:db ...\n * :dispatch ...})\n * \n * Wrap handler in an interceptor so it can be added to (the RHS) of a chain:\n * 1. extracts `:coeffects`\n * 2. call handler-fn giving coeffects\n * 3. stores the result back into the `:effects`\n */\nre_frame.std_interceptors.fx_handler__GT_interceptor = (function re_frame$std_interceptors$fx_handler__GT_interceptor(handler_fn){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"fx-handler\",\"fx-handler\",-549783097),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$fx_handler__GT_interceptor_$_fx_handler_before(context){\nvar new_context = ((re_frame.trace.is_trace_enabled_QMARK_())?(function (){var _STAR_current_trace_STAR__orig_val__47560 = re_frame.trace._STAR_current_trace_STAR_;\nvar _STAR_current_trace_STAR__temp_val__47562 = re_frame.trace.start_trace(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"op-type\",\"op-type\",-1636141668),new cljs.core.Keyword(\"event\",\"handler\",\"event/handler\",-295903150),new cljs.core.Keyword(null,\"operation\",\"operation\",-1267664310),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442))], null));\n(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__temp_val__47562);\n\ntry{try{var map__47563 = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context);\nvar map__47563__$1 = (((((!((map__47563 == null))))?(((((map__47563.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__47563.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__47563):map__47563);\nvar coeffects = map__47563__$1;\nvar event = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47563__$1,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(context,new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),(handler_fn.cljs$core$IFn$_invoke$arity$2 ? handler_fn.cljs$core$IFn$_invoke$arity$2(coeffects,event) : handler_fn.call(null,coeffects,event)));\n}finally {if(re_frame.trace.is_trace_enabled_QMARK_()){\nvar end__47248__auto___47773 = re_frame.interop.now();\nvar duration__47249__auto___47774 = (end__47248__auto___47773 - new cljs.core.Keyword(null,\"start\",\"start\",-355208981).cljs$core$IFn$_invoke$arity$1(re_frame.trace._STAR_current_trace_STAR_));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(re_frame.trace.traces,cljs.core.conj,cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"duration\",\"duration\",1444101068),duration__47249__auto___47774,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"end\",\"end\",-268185958),re_frame.interop.now()], 0)));\n\nre_frame.trace.run_tracing_callbacks_BANG_(end__47248__auto___47773);\n} else {\n}\n}}finally {(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__orig_val__47560);\n}})():(function (){var map__47571 = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context);\nvar map__47571__$1 = (((((!((map__47571 == null))))?(((((map__47571.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__47571.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__47571):map__47571);\nvar coeffects = map__47571__$1;\nvar event = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47571__$1,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(context,new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),(handler_fn.cljs$core$IFn$_invoke$arity$2 ? handler_fn.cljs$core$IFn$_invoke$arity$2(coeffects,event) : handler_fn.call(null,coeffects,event)));\n})());\nif(re_frame.trace.is_trace_enabled_QMARK_()){\nvar new_trace__47250__auto___47786 = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.update.cljs$core$IFn$_invoke$arity$4(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),cljs.core.merge,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977).cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null))),cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null),new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977))], 0));\n(re_frame.trace._STAR_current_trace_STAR_ = new_trace__47250__auto___47786);\n\n} else {\n}\n\nreturn new_context;\n})], 0));\n});\n/**\n * Returns an interceptor which wraps the kind of event handler given to `reg-event-ctx`.\n * These advanced handlers take one argument: `context` and they return a modified `context`.\n * Example:\n * \n * (fn [context]\n * (enqueue context [more interceptors]))\n */\nre_frame.std_interceptors.ctx_handler__GT_interceptor = (function re_frame$std_interceptors$ctx_handler__GT_interceptor(handler_fn){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"ctx-handler\",\"ctx-handler\",-1777672230),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$ctx_handler__GT_interceptor_$_ctx_handler_before(context){\nvar new_context = ((re_frame.trace.is_trace_enabled_QMARK_())?(function (){var _STAR_current_trace_STAR__orig_val__47576 = re_frame.trace._STAR_current_trace_STAR_;\nvar _STAR_current_trace_STAR__temp_val__47577 = re_frame.trace.start_trace(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"op-type\",\"op-type\",-1636141668),new cljs.core.Keyword(\"event\",\"handler\",\"event/handler\",-295903150),new cljs.core.Keyword(null,\"operation\",\"operation\",-1267664310),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442))], null));\n(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__temp_val__47577);\n\ntry{try{return (handler_fn.cljs$core$IFn$_invoke$arity$1 ? handler_fn.cljs$core$IFn$_invoke$arity$1(context) : handler_fn.call(null,context));\n}finally {if(re_frame.trace.is_trace_enabled_QMARK_()){\nvar end__47248__auto___47800 = re_frame.interop.now();\nvar duration__47249__auto___47801 = (end__47248__auto___47800 - new cljs.core.Keyword(null,\"start\",\"start\",-355208981).cljs$core$IFn$_invoke$arity$1(re_frame.trace._STAR_current_trace_STAR_));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(re_frame.trace.traces,cljs.core.conj,cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"duration\",\"duration\",1444101068),duration__47249__auto___47801,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"end\",\"end\",-268185958),re_frame.interop.now()], 0)));\n\nre_frame.trace.run_tracing_callbacks_BANG_(end__47248__auto___47800);\n} else {\n}\n}}finally {(re_frame.trace._STAR_current_trace_STAR_ = _STAR_current_trace_STAR__orig_val__47576);\n}})():(handler_fn.cljs$core$IFn$_invoke$arity$1 ? handler_fn.cljs$core$IFn$_invoke$arity$1(context) : handler_fn.call(null,context)));\nif(re_frame.trace.is_trace_enabled_QMARK_()){\nvar new_trace__47250__auto___47807 = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.update.cljs$core$IFn$_invoke$arity$4(re_frame.trace._STAR_current_trace_STAR_,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),cljs.core.merge,new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977).cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null))),cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\"effects\",\"effects\",-282369292),re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(new_context),new cljs.core.Keyword(null,\"coeffects\",\"coeffects\",497912985),re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$1(context)], null)], null),new cljs.core.Keyword(null,\"tags\",\"tags\",1771418977))], 0));\n(re_frame.trace._STAR_current_trace_STAR_ = new_trace__47250__auto___47807);\n\n} else {\n}\n\nreturn new_context;\n})], 0));\n});\nre_frame.std_interceptors.path = (function re_frame$std_interceptors$path(var_args){\nvar args__4742__auto__ = [];\nvar len__4736__auto___47816 = arguments.length;\nvar i__4737__auto___47817 = (0);\nwhile(true){\nif((i__4737__auto___47817 < len__4736__auto___47816)){\nargs__4742__auto__.push((arguments[i__4737__auto___47817]));\n\nvar G__47818 = (i__4737__auto___47817 + (1));\ni__4737__auto___47817 = G__47818;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4743__auto__ = ((((0) < args__4742__auto__.length))?(new cljs.core.IndexedSeq(args__4742__auto__.slice((0)),(0),null)):null);\nreturn re_frame.std_interceptors.path.cljs$core$IFn$_invoke$arity$variadic(argseq__4743__auto__);\n});\n\n(re_frame.std_interceptors.path.cljs$core$IFn$_invoke$arity$variadic = (function (args){\nvar path = cljs.core.flatten(args);\nvar db_store_key = new cljs.core.Keyword(\"re-frame-path\",\"db-store\",\"re-frame-path/db-store\",655758490);\nif(cljs.core.empty_QMARK_(path)){\nre_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: \\\"path\\\" interceptor given no params\"], 0));\n} else {\n}\n\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"path\",\"path\",-188191168),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function (context){\nvar original_db = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nreturn re_frame.interceptor.assoc_coeffect(cljs.core.update.cljs$core$IFn$_invoke$arity$4(context,db_store_key,cljs.core.conj,original_db),new cljs.core.Keyword(null,\"db\",\"db\",993250759),cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(original_db,path));\n}),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function (context){\nvar db_store = db_store_key.cljs$core$IFn$_invoke$arity$1(context);\nvar original_db = cljs.core.peek(db_store);\nvar new_db_store = cljs.core.pop(db_store);\nvar context_SINGLEQUOTE_ = re_frame.interceptor.assoc_coeffect(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(context,db_store_key,new_db_store),new cljs.core.Keyword(null,\"db\",\"db\",993250759),original_db);\nvar db = re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$3(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),new cljs.core.Keyword(\"re-frame.std-interceptors\",\"not-found\",\"re-frame.std-interceptors/not-found\",-1614827865));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(db,new cljs.core.Keyword(\"re-frame.std-interceptors\",\"not-found\",\"re-frame.std-interceptors/not-found\",-1614827865))){\nreturn context_SINGLEQUOTE_;\n} else {\nreturn re_frame.interceptor.assoc_effect(context_SINGLEQUOTE_,new cljs.core.Keyword(null,\"db\",\"db\",993250759),cljs.core.assoc_in(original_db,path,db));\n}\n})], 0));\n}));\n\n(re_frame.std_interceptors.path.cljs$lang$maxFixedArity = (0));\n\n/** @this {Function} */\n(re_frame.std_interceptors.path.cljs$lang$applyTo = (function (seq47606){\nvar self__4724__auto__ = this;\nreturn self__4724__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq47606));\n}));\n\nre_frame.std_interceptors.enrich = (function re_frame$std_interceptors$enrich(f){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"enrich\",\"enrich\",-2108921925),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function re_frame$std_interceptors$enrich_$_enrich_after(context){\nvar event = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\nvar db = ((cljs.core.contains_QMARK_(re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(context),new cljs.core.Keyword(null,\"db\",\"db\",993250759)))?re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759)):re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759)));\nreturn re_frame.interceptor.assoc_effect(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(db,event) : f.call(null,db,event)));\n})], 0));\n});\nre_frame.std_interceptors.after = (function re_frame$std_interceptors$after(f){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"after\",\"after\",594996914),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function re_frame$std_interceptors$after_$_after_after(context){\nvar db = ((cljs.core.contains_QMARK_(re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(context),new cljs.core.Keyword(null,\"db\",\"db\",993250759)))?re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759)):re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759)));\nvar event = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"event\",\"event\",301435442));\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(db,event) : f.call(null,db,event));\n\nreturn context;\n})], 0));\n});\nre_frame.std_interceptors.on_changes = (function re_frame$std_interceptors$on_changes(var_args){\nvar args__4742__auto__ = [];\nvar len__4736__auto___47840 = arguments.length;\nvar i__4737__auto___47841 = (0);\nwhile(true){\nif((i__4737__auto___47841 < len__4736__auto___47840)){\nargs__4742__auto__.push((arguments[i__4737__auto___47841]));\n\nvar G__47846 = (i__4737__auto___47841 + (1));\ni__4737__auto___47841 = G__47846;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4743__auto__ = ((((2) < args__4742__auto__.length))?(new cljs.core.IndexedSeq(args__4742__auto__.slice((2)),(0),null)):null);\nreturn re_frame.std_interceptors.on_changes.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4743__auto__);\n});\n\n(re_frame.std_interceptors.on_changes.cljs$core$IFn$_invoke$arity$variadic = (function (f,out_path,in_paths){\nreturn re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"on-changes\",\"on-changes\",1345912602),new cljs.core.Keyword(null,\"after\",\"after\",594996914),(function re_frame$std_interceptors$on_change_after(context){\nvar new_db = re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nvar old_db = re_frame.interceptor.get_coeffect.cljs$core$IFn$_invoke$arity$2(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759));\nvar new_ins = cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__47625_SHARP_){\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(new_db,p1__47625_SHARP_);\n}),in_paths);\nvar old_ins = cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__47626_SHARP_){\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(old_db,p1__47626_SHARP_);\n}),in_paths);\nvar changed_ins_QMARK_ = ((cljs.core.contains_QMARK_(re_frame.interceptor.get_effect.cljs$core$IFn$_invoke$arity$1(context),new cljs.core.Keyword(null,\"db\",\"db\",993250759)))?cljs.core.some(cljs.core.false_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.identical_QMARK_,new_ins,old_ins)):false);\nif(cljs.core.truth_(changed_ins_QMARK_)){\nreturn re_frame.interceptor.assoc_effect(context,new cljs.core.Keyword(null,\"db\",\"db\",993250759),cljs.core.assoc_in(new_db,out_path,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,new_ins)));\n} else {\nreturn context;\n}\n})], 0));\n}));\n\n(re_frame.std_interceptors.on_changes.cljs$lang$maxFixedArity = (2));\n\n/** @this {Function} */\n(re_frame.std_interceptors.on_changes.cljs$lang$applyTo = (function (seq47628){\nvar G__47629 = cljs.core.first(seq47628);\nvar seq47628__$1 = cljs.core.next(seq47628);\nvar G__47630 = cljs.core.first(seq47628__$1);\nvar seq47628__$2 = cljs.core.next(seq47628__$1);\nvar self__4723__auto__ = this;\nreturn self__4723__auto__.cljs$core$IFn$_invoke$arity$variadic(G__47629,G__47630,seq47628__$2);\n}));\n\n/**\n * An interceptor which adds registered global interceptors to the context's queue.\n * \n * NOTE: :queue is a Clojure.lang.PersistentQueue and not a vector.\n */\nre_frame.std_interceptors.inject_global_interceptors = re_frame.interceptor.__GT_interceptor.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),new cljs.core.Keyword(null,\"inject-global-interceptors\",\"inject-global-interceptors\",-2144129737),new cljs.core.Keyword(null,\"before\",\"before\",-1633692388),(function re_frame$std_interceptors$inject_global_interceptors_before(context){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$3(context,new cljs.core.Keyword(null,\"queue\",\"queue\",1455835879),(function (p1__47665_SHARP_){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(re_frame.settings.get_global_interceptors(),p1__47665_SHARP_);\n}));\n})], 0));\n","~:ns-info",["^ ","~:rename-macros",null,"~:renames",["^ "],"~:meta",["^ ","~:doc","contains re-frame supplied, standard interceptors","~:file","re_frame/std_interceptors.cljc","~:line",1,"~:column",5,"~:end-line",1,"~:end-column",30],"~:ns-aliases",["^ ","~$cljs.loader","~$shadow.loader","~$clojure.pprint","~$cljs.pprint","~$react","~$shadow.js.shim.module$react","~$clojure.spec.alpha","~$cljs.spec.alpha"],"~:use-macros",null,"~:excludes",["~#set",[]],"~:name","~$re-frame.std-interceptors","~:op","~:ns","~:imports",null,"~:requires",["^ ","~$cofx","~$re-frame.cofx","~$re-frame.interceptor","^P","~$data","~$clojure.data","~$re-frame.trace","^S","~$re-frame.settings","^T","~$cljs.core","^U","~$interceptor","^P","~$goog","^W","~$trace","^S","~$re-frame.utils","^Y","~$settings","^T","~$re-frame.loggers","^[","~$utils","^Y","^O","^O","^R","^R","~$re-frame.db","^11"],"~:seen",["^G",["~:require"]],"~:uses",["^ ","~$->interceptor","^P","~$get-effect","^P","~$get-coeffect","^P","~$assoc-coeffect","^P","~$assoc-effect","^P","~$update-coeffect","^P","~$console","^[","~$app-db","^11"],"~:require-macros",["^ ","^S","^S","^X","^S","^U","^U"],"~:form",["~#list",["~$ns","^I","contains re-frame supplied, standard interceptors",["^1?",["^13",["^P","~:refer",["^15","^16","^17","^18","^19","^1:"]],["^[","^1A",["^1;"]],["^T","~:as","^Z"],["^11","^1A",["^1<"]],["^R","^1B","^Q"],["^O","^1B","^N"],["^Y","^1B","^10"],["^S","^1B","^X","~:include-macros",true],["^P","^1B","^V"]]]]],"~:flags",["^ ","^13",["^G",[]]],"~:js-deps",["^ "],"~:deps",["^W","^U","^P","^[","^T","^11","^R","^O","^Y","^S"]],"^K","^I","~:resource-id",["~:shadow.build.classpath/resource","re_frame/std_interceptors.cljc"],"~:compiled-at",1613924121778,"~:resource-name","re_frame/std_interceptors.cljc","~:warnings",[],"~:source","(ns re-frame.std-interceptors\n \"contains re-frame supplied, standard interceptors\"\n (:require\n [re-frame.interceptor :refer [->interceptor get-effect get-coeffect assoc-coeffect assoc-effect update-coeffect]]\n [re-frame.loggers :refer [console]]\n [re-frame.settings :as settings]\n [re-frame.db :refer [app-db]]\n [clojure.data :as data]\n [re-frame.cofx :as cofx]\n [re-frame.utils :as utils]\n [re-frame.trace :as trace :include-macros true]\n [re-frame.interceptor :as interceptor]))\n\n\n(def debug\n (->interceptor\n :id :debug\n :before (fn debug-before\n [context]\n (console :log \"Handling re-frame event:\" (get-coeffect context :event))\n context)\n :after (fn debug-after\n [context]\n (let [event (get-coeffect context :event)\n orig-db (get-coeffect context :db)\n new-db (get-effect context :db ::not-found)]\n (if (= new-db ::not-found)\n (console :log \"No app-db changes in:\" event)\n (let [[only-before only-after] (data/diff orig-db new-db)\n db-changed? (or (some? only-before) (some? only-after))]\n (if db-changed?\n (do (console :group \"db clojure.data/diff for:\" event)\n (console :log \"only before:\" only-before)\n (console :log \"only after :\" only-after)\n (console :groupEnd))\n (console :log \"No app-db changes resulted from:\" event))))\n context))))\n\n\n(def trim-v\n (->interceptor\n :id :trim-v\n :before (fn trimv-before\n [context]\n (-> context\n (update-coeffect :event subvec 1)\n (assoc-coeffect ::untrimmed-event (get-coeffect context :event))))\n :after (fn trimv-after\n [context]\n (-> context\n (utils/dissoc-in [:coeffects ::untrimmed-event])\n (assoc-coeffect :event (get-coeffect context ::untrimmed-event))))))\n\n\n;; -- Interceptor Factories - PART 1 ---------------------------------------------------------------\n;;\n;; These 3 factories wrap the 3 kinds of event handlers.\n;;\n\n(defn db-handler->interceptor\n \"Returns an interceptor which wraps the kind of event handler given to `reg-event-db`.\n\n These handlers take two arguments; `db` and `event`, and they return `db`.\n\n (fn [db event]\n ....)\n\n So, the interceptor wraps the given handler:\n 1. extracts two `:coeffects` keys: db and event\n 2. calls handler-fn\n 3. stores the db result back into context's `:effects`\"\n [handler-fn]\n (->interceptor\n :id :db-handler\n :before (fn db-handler-before\n [context]\n (let [new-context\n (trace/with-trace\n {:op-type :event/handler\n :operation (get-coeffect context :event)}\n (let [{:keys [db event]} (get-coeffect context)]\n (->> (handler-fn db event)\n (assoc-effect context :db))))]\n ;; We merge these tags outside of the :event/handler trace because we want them to be assigned to the parent\n ;; wrapping trace.\n (trace/merge-trace!\n {:tags {:effects (get-effect new-context)\n :coeffects (get-coeffect context)}})\n new-context))))\n\n\n(defn fx-handler->interceptor\n \"Returns an interceptor which wraps the kind of event handler given to `reg-event-fx`.\n\n These handlers take two arguments; `coeffects` and `event`, and they return `effects`.\n\n (fn [coeffects event]\n {:db ...\n :dispatch ...})\n\n Wrap handler in an interceptor so it can be added to (the RHS) of a chain:\n 1. extracts `:coeffects`\n 2. call handler-fn giving coeffects\n 3. stores the result back into the `:effects`\"\n [handler-fn]\n(->interceptor\n :id :fx-handler\n :before (fn fx-handler-before\n [context]\n (let [new-context\n (trace/with-trace\n {:op-type :event/handler\n :operation (get-coeffect context :event)}\n (let [{:keys [event] :as coeffects} (get-coeffect context)]\n (->> (handler-fn coeffects event)\n (assoc context :effects))))]\n (trace/merge-trace!\n {:tags {:effects (get-effect new-context)\n :coeffects (get-coeffect context)}})\n new-context))))\n\n\n(defn ctx-handler->interceptor\n \"Returns an interceptor which wraps the kind of event handler given to `reg-event-ctx`.\n These advanced handlers take one argument: `context` and they return a modified `context`.\n Example:\n\n (fn [context]\n (enqueue context [more interceptors]))\"\n [handler-fn]\n (->interceptor\n :id :ctx-handler\n :before (fn ctx-handler-before\n [context]\n (let [new-context\n (trace/with-trace\n {:op-type :event/handler\n :operation (get-coeffect context :event)}\n (handler-fn context))]\n (trace/merge-trace!\n {:tags {:effects (get-effect new-context)\n :coeffects (get-coeffect context)}})\n new-context))))\n\n\n;; -- Interceptors Factories - PART 2 ------------------------------------------------------------\n\n\n(defn path\n [& args]\n (let [path (flatten args)\n db-store-key :re-frame-path/db-store] ;; this is where, within `context`, we store the original dbs\n (when (empty? path)\n (console :error \"re-frame: \\\"path\\\" interceptor given no params\"))\n (->interceptor\n :id :path\n :before (fn\n [context]\n (let [original-db (get-coeffect context :db)]\n (-> context\n (update db-store-key conj original-db)\n (assoc-coeffect :db (get-in original-db path)))))\n :after (fn [context]\n (let [db-store (db-store-key context)\n original-db (peek db-store)\n new-db-store (pop db-store)\n context' (-> (assoc context db-store-key new-db-store)\n (assoc-coeffect :db original-db)) ;; put the original db back so that things like debug work later on\n db (get-effect context :db ::not-found)]\n (if (= db ::not-found)\n context'\n (->> (assoc-in original-db path db)\n (assoc-effect context' :db))))))))\n\n\n\n\n(defn enrich\n [f]\n (->interceptor\n :id :enrich\n :after (fn enrich-after\n [context]\n (let [event (get-coeffect context :event)\n db (if (contains? (get-effect context) :db)\n (get-effect context :db) ;; If no db effect is returned, we provide the original coeffect.\n (get-coeffect context :db))]\n (->> (f db event)\n (assoc-effect context :db))))))\n\n\n\n(defn after\n [f]\n (->interceptor\n :id :after\n :after (fn after-after\n [context]\n (let [db (if (contains? (get-effect context) :db)\n (get-effect context :db)\n (get-coeffect context :db))\n event (get-coeffect context :event)]\n (f db event) ;; call f for side effects\n context)))) ;; context is unchanged\n\n(defn on-changes\n [f out-path & in-paths]\n (->interceptor\n :id :on-changes\n :after (fn on-change-after\n [context]\n (let [new-db (get-effect context :db)\n old-db (get-coeffect context :db)\n\n ;; work out if any \"inputs\" have changed\n new-ins (map #(get-in new-db %) in-paths)\n old-ins (map #(get-in old-db %) in-paths)\n ;; make sure the db is actually set in the effect\n changed-ins? (and (contains? (get-effect context) :db)\n (some false? (map identical? new-ins old-ins)))]\n\n ;; if one of the inputs has changed, then run 'f'\n (if changed-ins?\n (->> (apply f new-ins)\n (assoc-in new-db out-path)\n (assoc-effect context :db))\n context)))))\n\n\n(def inject-global-interceptors\n \"An interceptor which adds registered global interceptors to the context's queue.\n\n NOTE: :queue is a Clojure.lang.PersistentQueue and not a vector.\"\n (->interceptor\n :id :inject-global-interceptors\n :before (fn inject-global-interceptors-before\n [context]\n (update context :queue #(into (settings/get-global-interceptors) %)))))\n","~:reader-features",["^G",["~:cljs"]],"~:cljc",true,"~:source-map-compact",["^ ","mappings",";AAcA,AAAKA,AACH,AAAA,AAAA,AAAA,AAACC,AAES,AACGC;AADH,AAEE,AAAA,AAAA,AAACC,AAAwC,AAAA,AAACC,AAAaF;;AACvDA;AALZ,AAMU,AACGA;AADH,AAEE,AAAMG,AAAQ,AAAA,AAACD,AAAaF;AACtBI,AAAQ,AAAA,AAACF,AAAaF;AACtBK,AAAQ,AAAA,AAAA,AAACC,AAAaN;AAF5B,AAGE,AAAI,AAAA,AAACO,AAAEF;AACL,AAAA,AAAA,AAACJ,AAAqCE;;AACtC,AAAAK,AAA+B,AAACI,AAAUR,AAAQC;AAAlD,AAAAI,AAAAD,AAAA,AAAA,AAAOE;AAAP,AAAAD,AAAAD,AAAA,AAAA,AAAmBG;AACbE,AAAe,AAAI,AAAA,AAAA,AAAOH,AAAa,AAAA,AAAA,AAAOC;AADpD,AAEE,AAAIE;AACF,AAAI,AAAA,AAAA,AAACZ,AAA2CE;;AAC5C,AAAA,AAAA,AAACF,AAA4BS;;AAC7B,AAAA,AAAA,AAACT,AAA4BU;;AAC7B,AAAA,AAACG;;AACL,AAAA,AAAA,AAACb,AAAgDE;;;;AACvDH;;AAGhB,AAAKe,AACH,AAAA,AAAA,AAAA,AAAChB,AAEU,AACGC;AADH,AAEMA,AACA,AAAA,AAAA,AAACgB,AAAuBC,AACxB,AAAA,AAACC,AAAiC,AAAA,AAAChB,AAAaF;AANjE,AAOW,AACGA;AADH,AAEMA,AACA,AAAA,AAAA,AAAA,AAACmB,AACD,AAAA,AAACD,AAAsB,AAAA,AAAChB,AAAaF;;AAQxD;;;;;;;;;;;;;AAAA,AAAMoB,AAYHC;AAZH,AAaE,AAAA,AAAA,AAAA,AAACtB,AAES,AACGC;AADH,AAEE,AAAMsB,AACA,AAAA,AAAAC,AAAA,AAAAC,AAAAC;AAAAC,AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAEc,AAAA,AAACzB,AAAaF;AAF5B,AAAA,AAAAyB,AAAAC;;AAAA,AAAA,AAAA,AAAA,AAGE,AAAAU,AAAyB,AAAClC,AAAaF;AAAvCoC,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAAC,AAAA,AAAAD,AAAA,AAAA,AAAA,AAAA,AAAAE,AAAAC,AAAAH,AAAAA;AAAA,AAAAI,AAAAJ,AAAA,AAAcM;AAAd,AAAAF,AAAAJ,AAAA,AAAiBjC;AAAjB,AACO,AAACkB,AAAAA,AAAAA,AAAWqB,AAAAA,AAAGvC,AAAAA,AACf,AAAA,AAACwC,AAAa3C;AALvB,AAAA,AAAA,AAAAuB;AAAA,AAAA,AAAAK,AAAA,AAAAC;AAAAC,AAAA,AAAAF,AAAA,AAAA,AAAAH;AAAA,AAAA,AAAAM,AAAAC,AAAAC,AAAA,AAAAC,AAAAT,AAAA,AAAAK,AAAA,AAAA,AAAAD;;AAAA,AAAAM,AAAAP;;AAAA;AAAA,AAAA,AAAAH,AAAAD;AAAA,AAGE,AAAAiB,AAAyB,AAACvC,AAAaF;AAAvCyC,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAAJ,AAAA,AAAAI,AAAA,AAAA,AAAA,AAAA,AAAAH,AAAAC,AAAAE,AAAAA;AAAA,AAAAD,AAAAC,AAAA,AAAcC;AAAd,AAAAF,AAAAC,AAAA,AAAiBtC;AAAjB,AACO,AAACkB,AAAAA,AAAAA,AAAWqB,AAAAA,AAAGvC,AAAAA,AACf,AAAA,AAACwC,AAAa3C;;AAN7B,AASE,AAAA,AAAAuB;AAAA,AAAA,AAAAqB,AAAA,AAAAC,AAAA,AAAAC,AAAArB,AAAA,AAAAsB,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AACqB,AAAA,AAAC1C,AAAAA,AAAWgB,AAAAA,AACZ,AAAA,AAACpB,AAAAA,AAAaF,AAAAA;AAFnC,AAAA,AAAAyB,AAAAmB;;AAAA;AAAA;;AAGAtB;;;AAGhB;;;;;;;;;;;;;;AAAA,AAAM2B,AAaH5B;AAbH,AAcA,AAAA,AAAA,AAAA,AAACtB,AAES,AACGC;AADH,AAEE,AAAMsB,AACA,AAAA,AAAAC,AAAA,AAAA2B,AAAAzB;AAAA0B,AAAA,AAAAxB,AAAA,AAAA,AAAA,AAAA,AAEc,AAAA,AAACzB,AAAaF;AAF5B,AAAA,AAAAyB,AAAA0B;;AAAA,AAAA,AAAA,AAAA,AAGE,AAAAC,AAAoC,AAAClD,AAAaF;AAAlDoD,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAAf,AAAA,AAAAe,AAAA,AAAA,AAAA,AAAA,AAAAd,AAAAC,AAAAa,AAAAA;AAAAA,AAAyBE;AAAzB,AAAAd,AAAAY,AAAA,AAAcjD;AAAd,AACO,AAACkB,AAAAA,AAAAA,AAAWiC,AAAAA,AAAUnD,AAAAA,AACtB,AAAA,AAAC+B,AAAMlC;AALhB,AAAA,AAAA,AAAAuB;AAAA,AAAA,AAAAK,AAAA,AAAAC;AAAAC,AAAA,AAAAF,AAAA,AAAA,AAAAH;AAAA,AAAA,AAAAM,AAAAC,AAAAC,AAAA,AAAAC,AAAAT,AAAA,AAAAK,AAAA,AAAA,AAAAD;;AAAA,AAAAM,AAAAP;;AAAA;AAAA,AAAA,AAAAH,AAAAyB;AAAA,AAGE,AAAAG,AAAoC,AAACnD,AAAaF;AAAlDqD,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAA,AAAA,AAAA,AAAAhB,AAAA,AAAAgB,AAAA,AAAA,AAAA,AAAA,AAAAf,AAAAC,AAAAc,AAAAA;AAAAA,AAAyBC;AAAzB,AAAAd,AAAAa,AAAA,AAAclD;AAAd,AACO,AAACkB,AAAAA,AAAAA,AAAWiC,AAAAA,AAAUnD,AAAAA,AACtB,AAAA,AAAC+B,AAAMlC;;AANtB,AAOE,AAAA,AAAAuB;AAAA,AAAA,AAAAqB,AAAA,AAAAC,AAAA,AAAAC,AAAArB,AAAA,AAAAsB,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AACqB,AAAA,AAAC1C,AAAAA,AAAWgB,AAAAA,AACZ,AAAA,AAACpB,AAAAA,AAAaF,AAAAA;AAFnC,AAAA,AAAAyB,AAAAmB;;AAAA;AAAA;;AAGAtB;;;AAGd;;;;;;;;AAAA,AAAMiC,AAOHlC;AAPH,AAQE,AAAA,AAAA,AAAA,AAACtB,AAES,AACGC;AADH,AAEE,AAAMsB,AACA,AAAA,AAAAC,AAAA,AAAAiC,AAAA/B;AAAAgC,AAAA,AAAA9B,AAAA,AAAA,AAAA,AAAA,AAEc,AAAA,AAACzB,AAAaF;AAF5B,AAAA,AAAAyB,AAAAgC;;AAAA,AAAA,AAAA,AAAA,AAGE,AAACpC,AAAAA,AAAAA,AAAWrB,AAAAA;AAHd,AAAA,AAAA,AAAAuB;AAAA,AAAA,AAAAK,AAAA,AAAAC;AAAAC,AAAA,AAAAF,AAAA,AAAA,AAAAH;AAAA,AAAA,AAAAM,AAAAC,AAAAC,AAAA,AAAAC,AAAAT,AAAA,AAAAK,AAAA,AAAA,AAAAD;;AAAA,AAAAM,AAAAP;;AAAA;AAAA,AAAA,AAAAH,AAAA+B;AAAA,AAGE,AAACnC,AAAAA,AAAAA,AAAWrB,AAAAA;AAJpB,AAKE,AAAA,AAAAuB;AAAA,AAAA,AAAAqB,AAAA,AAAAC,AAAA,AAAAC,AAAArB,AAAA,AAAAsB,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AACqB,AAAA,AAAC1C,AAAAA,AAAWgB,AAAAA,AACZ,AAAA,AAACpB,AAAAA,AAAaF,AAAAA;AAFnC,AAAA,AAAAyB,AAAAmB;;AAAA;AAAA;;AAGAtB;;;AAMhB,AAAA,AAAA,AAAAoC,AAAMM;AAAN,AAAA,AAAAL,AAAA;AAAA,AAAA,AAAAC,AAAA,AAAA;AAAA,AAAA,AAAAC,AAAA;;AAAA,AAAA,AAAA,AAAAA,AAAAD;AAAA,AAAA,AAAAD,AAAA,AAAA,AAAAE;;AAAA,AAAA,AAAAA,AAAA;;;;AAAA;;;;AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAAAH,AAAA,AAAA,AAAAI,AAAA,AAAAJ,AAAA,AAAA,AAAA,AAAA;AAAA,AAAA,AAAAK,AAAAF;;;AAAA,AAAA,AAAA,AAAA,AAAME,AACDI;AADL,AAEE,AAAMC,AAAK,AAACC,AAAQF;AAApB,AACMG;AADN,AAEE,AAAM,AAACC,AAAOH;AAAd,AACE,AAAA,AAAA,AAACpE;;AADH;;AAEA,AAAA,AAAA,AAAA,AAACF,AAEU,AACGC;AADH,AAEE,AAAMyE,AAAY,AAAA,AAACvE,AAAaF;AAAhC,AACMA,AACA,AAAC8C,AAAOyB,AAAatC,AAAKwC,AAC1B,AAAA,AAACvD,AAAmB,AAACwD,AAAOD,AAAYJ;AAP3D,AAQW,AAAKrE;AAAL,AACE,AAAM2E,AAAa,AAACJ,AAAavE;AAC3ByE,AAAa,AAACG,AAAKD;AACnBE,AAAa,AAACC,AAAIH;AAClBI,AAAiB,AAAC7C,AAAMlC,AAAQuE,AAAaM,AAC5B,AAAA,AAAC3D,AAAmBuD;AACrC/B,AAAa,AAAA,AAAA,AAACpC,AAAWN;AAL/B,AAME,AAAI,AAAA,AAACO,AAAEmC;AACLqC;;AACK,AAACC,AAASP,AAAYJ,AAAK3B,AAC3B,AAAA,AAACC,AAAaoC;;;;;AAxBxC,AAAA,AAAA,AAAMf;;AAAN;AAAA,AAAA,AAAA,AAAAC,AAAMD;AAAN,AAAA,AAAAE,AAAA;AAAA,AAAA,AAAAA,AAAA,AAAAC,AAAAF;;;AAAA,AA6BA,AAAA,AAAMgB,AACHC;AADH,AAEE,AAAA,AAAA,AAAA,AAACnF,AAEQ,AACGC;AADH,AAEE,AAAMG,AAAM,AAAA,AAACD,AAAaF;AACpB0C,AAAM,AAAI,AAAA,AAACyC,AAAU,AAAC7E,AAAWN,AACzB,AAAA,AAACM,AAAWN,AACZ,AAAA,AAACE,AAAaF;AAH5B,AAIO,AAACkF,AAAAA,AAAAA,AAAExC,AAAAA,AAAGvC,AAAAA,AACN,AAAA,AAACwC,AAAa3C;;;AAIlC,AAAA,AAAMoF,AACHF;AADH,AAEE,AAAA,AAAA,AAAA,AAACnF,AAEQ,AACGC;AADH,AAEE,AAAM0C,AAAM,AAAI,AAAA,AAACyC,AAAU,AAAC7E,AAAWN,AACzB,AAAA,AAACM,AAAWN,AACZ,AAAA,AAACE,AAAaF;AACtBG,AAAM,AAAA,AAACD,AAAaF;AAH1B,AAIE,AAACkF,AAAAA,AAAAA,AAAExC,AAAAA,AAAGvC,AAAAA;;AACNH;;;AAEf,AAAA,AAAA,AAAA0D,AAAO2B;AAAP,AAAA,AAAA1B,AAAA;AAAA,AAAA,AAAAC,AAAA,AAAA;AAAA,AAAA,AAAAC,AAAA;;AAAA,AAAA,AAAA,AAAAA,AAAAD;AAAA,AAAA,AAAAD,AAAA,AAAA,AAAAE;;AAAA,AAAA,AAAAA,AAAA;;;;AAAA;;;;AAAA,AAAAC,AAAA,AAAA,AAAA,AAAA,AAAAH,AAAA,AAAA,AAAAI,AAAA,AAAAJ,AAAA,AAAA,AAAA,AAAA;AAAA,AAAA,AAAA0B,AAAA,AAAA,AAAA,AAAA,AAAA,AAAA,AAAAvB;;;AAAA,AAAA,AAAA,AAAA,AAAOuB,AACJH,AAAEU,AAAWC;AADhB,AAEE,AAAA,AAAA,AAAA,AAAC9F,AAEQ,AACGC;AADH,AAEE,AAAMK,AAAS,AAAA,AAACC,AAAWN;AACrB8F,AAAS,AAAA,AAAC5F,AAAaF;AAGvB+F,AAAa,AAAA,AAAAC,AAACC;AAAD,AAAM,AAAAD,AAACtB,AAAOrE;AAAUwF;AACrCK,AAAa,AAAA,AAAAC,AAACF;AAAD,AAAM,AAAAE,AAACzB,AAAOoB;AAAUD;AAErCO,AAAa,AAAA,AAAK,AAAA,AAACjB,AAAU,AAAC7E,AAAWN,AACvB,AAACqG,AAAKC,AAAO,AAACL,AAAIM,AAAWR,AAAQG;AAR7D,AAWE,AAAIE;AACG,AAAC9D,AAAM4C,AAAEa,AACT,AAACf,AAAS3E,AAAOuF,AACjB,AAAA,AAACjD,AAAa3C;;AACnBA;;;;;AArBjB,AAAA,AAAA,AAAOqF;;AAAP;AAAA,AAAA,AAAA,AAAAC,AAAOD;AAAP,AAAA,AAAAE,AAAA,AAAAC,AAAAF;AAAAA,AAAA,AAAAG,AAAAH;AAAAI,AAAA,AAAAF,AAAAF;AAAAA,AAAA,AAAAG,AAAAH;AAAA,AAAA,AAAAK,AAAA;AAAA,AAAA,AAAAA,AAAAJ,AAAAG,AAAAJ;;;AAAA,AAwBA;;;;;AAAKkB,AAIH,AAAA,AAAA,AAAA,AAACzG,AAES,AACGC;AADH,AAEE,AAAA,AAAA,AAAAyG,AAAC3D,AAAO9C;AAAR,AAAwB,AAAAyG,AAACC,AAAK,AAACC","names",["re-frame.std-interceptors/debug","re_frame.interceptor.__GT_interceptor","context","re_frame.loggers.console","re_frame.interceptor.get_coeffect","event","orig-db","new-db","re_frame.interceptor.get_effect","cljs.core._EQ_","vec__47524","cljs.core.nth","only-before","only-after","clojure.data/diff","db-changed?","re-frame.loggers/console","re-frame.std-interceptors/trim-v","re_frame.interceptor.update_coeffect","cljs.core/subvec","re-frame.interceptor/assoc-coeffect","re-frame.utils/dissoc-in","re-frame.std-interceptors/db-handler->interceptor","handler-fn","new-context","re-frame.trace/is-trace-enabled?","*current-trace*-orig-val__47538","re-frame.trace/*current-trace*","*current-trace*-temp-val__47539","re-frame.trace/start-trace","end__47248__auto__","re-frame.interop/now","duration__47249__auto__","cljs.core.swap_BANG_","re-frame.trace/traces","cljs.core/conj","cljs.core.assoc","re-frame.trace/run-tracing