goog.provide('replicant.core'); replicant.core.parse_tag = (function replicant$core$parse_tag(tag){ var ns = cljs.core.namespace(tag); var tag__$1 = cljs.core.name(tag); var id_index = (function (){var index = tag__$1.indexOf("#"); if((index > (0))){ return index; } else { return null; } })(); var class_index = (function (){var index = tag__$1.indexOf("."); if((index > (0))){ return index; } else { return null; } })(); var tag_name = (function (){var G__49869 = (cljs.core.truth_(id_index)?tag__$1.substring((0),id_index):(cljs.core.truth_(class_index)?tag__$1.substring((0),class_index):tag__$1 )); if(cljs.core.truth_(ns)){ return cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(ns,G__49869); } else { return G__49869; } })(); var id = (cljs.core.truth_(id_index)?(cljs.core.truth_(class_index)?tag__$1.substring((id_index + (1)),class_index):tag__$1.substring((id_index + (1)))):null); var classes = (cljs.core.truth_(class_index)?cljs.core.seq(tag__$1.substring((class_index + (1))).split(".")):null); return [tag_name,id,classes]; }); /** * Hiccup symbols can include tag name, id and classes. The argument map is * optional. This function finds the important bits of the hiccup data structure * and returns a "headers" tuple with a stable position for: * * - tag-name * - id from the hiccup symbol * - classes from the hiccup symbol * - key * - attributes * - children * - namespace * - original s-expression * * Attributes and children are completely untouched. Headers can be used to * quickly determine tag name and key, or sent to `get-attrs` and * `get-children` for usable information about those things. * * Returns a tuple (instead of a map) for speed. * * - `sexp` is the hiccup to parse * * - `ns` is the namespace of the elements, used for SVG elements. The SVG * element has an explicit namespace, which needs to be set on all of its * children, so they can all be created with createElementNS etc. */ replicant.core.get_hiccup_headers = (function replicant$core$get_hiccup_headers(ns,sexp){ if(cljs.core.truth_(sexp)){ if(replicant.hiccup.hiccup_QMARK_(sexp)){ var sym = cljs.core.first(sexp); var args = cljs.core.rest(sexp); var has_args_QMARK_ = cljs.core.map_QMARK_(cljs.core.first(args)); var attrs = ((has_args_QMARK_)?cljs.core.first(args):cljs.core.PersistentArrayMap.EMPTY); if((!(cljs.core.not(cljs.core.re_find(/#($|\.)/,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)))))){ var fn__48271__auto___50317 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50318 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50319 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49896 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = sexp; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Hiccup tag ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)," contains an empty id"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"Either complete the id or remove the # character."], null); var G__49896__$1 = (cljs.core.truth_(fn__48271__auto___50317)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49896,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50317):G__49896); var G__49896__$2 = (cljs.core.truth_(alias__48272__auto___50318)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49896__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50318):G__49896__$1); if(cljs.core.truth_(fd__48273__auto___50319)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49896__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50319); } else { return G__49896__$2; } })()); } else { } if((!(cljs.core.not(cljs.core.re_find(/#[^a-zA-Z_\.]/,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)))))){ var fn__48271__auto___50320 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50321 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50322 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49905 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = sexp; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Hiccup tag ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)," contains an invalid id"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"IDs must start with a letter."], null); var G__49905__$1 = (cljs.core.truth_(fn__48271__auto___50320)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49905,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50320):G__49905); var G__49905__$2 = (cljs.core.truth_(alias__48272__auto___50321)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49905__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50321):G__49905__$1); if(cljs.core.truth_(fd__48273__auto___50322)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49905__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50322); } else { return G__49905__$2; } })()); } else { } if((!(cljs.core.not(cljs.core.re_find(/\.$/,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)))))){ var fn__48271__auto___50323 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50324 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50325 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49908 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = sexp; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Hiccup tag ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)," contains an empty class"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"This may cause a DOMException and is considered a coding error. Replicant will not sacrifice performance to work around it."], null); var G__49908__$1 = (cljs.core.truth_(fn__48271__auto___50323)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49908,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50323):G__49908); var G__49908__$2 = (cljs.core.truth_(alias__48272__auto___50324)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49908__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50324):G__49908__$1); if(cljs.core.truth_(fd__48273__auto___50325)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49908__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50325); } else { return G__49908__$2; } })()); } else { } var pt__47884__auto__ = replicant.core.parse_tag(sym); var G__49909 = pt__47884__auto__; G__49909.push((function (){var temp__5823__auto__ = new cljs.core.Keyword("replicant","key","replicant/key",-670108117).cljs$core$IFn$_invoke$arity$1(attrs); if(cljs.core.truth_(temp__5823__auto__)){ var k__47863__auto__ = temp__5823__auto__; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(pt__47884__auto__[(0)]),k__47863__auto__], null); } else { return null; } })()); G__49909.push(attrs); G__49909.push(((has_args_QMARK_)?cljs.core.rest(args):args)); G__49909.push(ns); G__49909.push(sexp); G__49909.push(null); G__49909.push(null); return G__49909; } else { var text__47936__auto__ = cljs.core.str.cljs$core$IFn$_invoke$arity$1(sexp); return (new Array(null,null,null,null,null,null,null,text__47936__auto__,text__47936__auto__,null)); } } else { return null; } }); replicant.core.get_classes = (function replicant$core$get_classes(classes){ if((classes instanceof cljs.core.Keyword)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name(classes)], null); } else { if((classes instanceof cljs.core.Symbol)){ return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name(classes)], null); } else { if(cljs.core.empty_QMARK_(classes)){ return cljs.core.PersistentVector.EMPTY; } else { if(cljs.core.coll_QMARK_(classes)){ return cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (class$){ if(cljs.core.truth_(class$)){ if((class$ instanceof cljs.core.Keyword)){ return cljs.core.name(class$); } else { if((class$ instanceof cljs.core.Symbol)){ return cljs.core.name(class$); } else { if(typeof class$ === 'string'){ return cljs.core.not_empty(class$.trim()); } else { return null; } } } } else { return null; } }),classes); } else { if(typeof classes === 'string'){ return cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (p1__49911_SHARP_){ return cljs.core.not_empty(p1__49911_SHARP_.trim()); }),classes.split(" ")); } else { throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("class name is neither string, keyword, or a collection of those",new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"classes","classes",2037804510),classes], null)); } } } } } }); replicant.core.skip_pixelize_attrs = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 26, [new cljs.core.Keyword(null,"line-height","line-height",1870784992),null,new cljs.core.Keyword(null,"box-flex-group","box-flex-group",-1468550335),null,new cljs.core.Keyword(null,"zoom","zoom",-1827487038),null,new cljs.core.Keyword(null,"column-count","column-count",1235131236),null,new cljs.core.Keyword(null,"flex-negative","flex-negative",-1543996476),null,new cljs.core.Keyword(null,"tab-size","tab-size",-1265790523),null,new cljs.core.Keyword(null,"font-weight","font-weight",2085804583),null,new cljs.core.Keyword(null,"stroke-opacity","stroke-opacity",-1191543159),null,new cljs.core.Keyword(null,"flex-order","flex-order",-621251126),null,new cljs.core.Keyword(null,"flex-grow","flex-grow",1865160747),null,new cljs.core.Keyword(null,"stroke-dashoffset","stroke-dashoffset",-782320340),null,new cljs.core.Keyword(null,"flex","flex",-1425124628),null,new cljs.core.Keyword(null,"flex-shrink","flex-shrink",1481146383),null,new cljs.core.Keyword(null,"stop-opacity","stop-opacity",-2018003729),null,new cljs.core.Keyword(null,"orphans","orphans",1913357231),null,new cljs.core.Keyword(null,"widows","widows",1989591025),null,new cljs.core.Keyword(null,"z-index","z-index",1892827090),null,new cljs.core.Keyword(null,"stroke-width","stroke-width",716836435),null,new cljs.core.Keyword(null,"opacity","opacity",397153780),null,new cljs.core.Keyword(null,"box-ordinal-group","box-ordinal-group",201694774),null,new cljs.core.Keyword(null,"order","order",-1254677256),null,new cljs.core.Keyword(null,"animation-iteration-count","animation-iteration-count",-1410888227),null,new cljs.core.Keyword(null,"line-clamp","line-clamp",-1079334403),null,new cljs.core.Keyword(null,"fill-opacity","fill-opacity",-537571170),null,new cljs.core.Keyword(null,"flex-positive","flex-positive",-239614242),null,new cljs.core.Keyword(null,"box-flex","box-flex",-831196194),null], null), null); /** * Converts string values for the style attribute to a map of keyword keys and * string values. */ replicant.core.explode_styles = (function replicant$core$explode_styles(s){ return cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (kv){ var vec__49916 = cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__49914_SHARP_){ return p1__49914_SHARP_.trim(); }),kv.split(":")); var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49916,(0),null); var v = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49916,(1),null); return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(k),v], null); }),s.split(";"))); }); replicant.core.get_style_val = (function replicant$core$get_style_val(attr,v){ if(typeof v === 'number'){ if(cljs.core.truth_((replicant.core.skip_pixelize_attrs.cljs$core$IFn$_invoke$arity$1 ? replicant.core.skip_pixelize_attrs.cljs$core$IFn$_invoke$arity$1(attr) : replicant.core.skip_pixelize_attrs.call(null,attr)))){ return cljs.core.str.cljs$core$IFn$_invoke$arity$1(v); } else { return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(v),"px"].join(''); } } else { if((v instanceof cljs.core.Keyword)){ return cljs.core.name(v); } else { return v; } } }); replicant.core.prep_attrs = (function replicant$core$prep_attrs(attrs,id,classes){ var classes__$1 = cljs.core.concat.cljs$core$IFn$_invoke$arity$2(replicant.core.get_classes(new cljs.core.Keyword(null,"class","class",-2030961996).cljs$core$IFn$_invoke$arity$1(attrs)),classes); var G__49921 = cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(attrs,new cljs.core.Keyword(null,"class","class",-2030961996),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword("replicant","mounting","replicant/mounting",-699756499),new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009)], 0)); var G__49921__$1 = (cljs.core.truth_(id)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49921,new cljs.core.Keyword(null,"id","id",-1388402092),id):G__49921); var G__49921__$2 = ((cljs.core.seq(classes__$1))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49921__$1,new cljs.core.Keyword(null,"classes","classes",2037804510),classes__$1):G__49921__$1); if(typeof new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(attrs) === 'string'){ return cljs.core.update.cljs$core$IFn$_invoke$arity$3(G__49921__$2,new cljs.core.Keyword(null,"style","style",-496642736),replicant.core.explode_styles); } else { return G__49921__$2; } }); /** * Given `headers` as produced by `get-hiccup-headers`, returns a map of all HTML * attributes. */ replicant.core.get_attrs = (function replicant$core$get_attrs(headers){ if((!((!(cljs.core.contains_QMARK_((headers[(4)]),new cljs.core.Keyword(null,"className","className",-1983287057))))))){ var fn__48271__auto___50326 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50327 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50328 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49922 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = (headers[(7)]); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Use :class, not :className",new cljs.core.Keyword(null,"message","message",-406056002),":className is not supported, please use :class instead. It takes a keyword, a string, or a collection of either of those."], null); var G__49922__$1 = (cljs.core.truth_(fn__48271__auto___50326)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49922,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50326):G__49922); var G__49922__$2 = (cljs.core.truth_(alias__48272__auto___50327)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49922__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50327):G__49922__$1); if(cljs.core.truth_(fd__48273__auto___50328)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49922__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50328); } else { return G__49922__$2; } })()); } else { } if((!((function (){var class__49691__auto__ = new cljs.core.Keyword(null,"class","class",-2030961996).cljs$core$IFn$_invoke$arity$1((headers[(4)])); return (((!(typeof class__49691__auto__ === 'string'))) || ((class__49691__auto__.indexOf(" ") < (0)))); })()))){ var fn__48271__auto___50329 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50330 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50331 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49923 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = (headers[(7)]); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Avoid space separated :class strings",new cljs.core.Keyword(null,"message","message",-406056002),(function (){var class__49691__auto__ = new cljs.core.Keyword(null,"class","class",-2030961996).cljs$core$IFn$_invoke$arity$1((headers[(4)])); return [":class supports collections of keywords and/or strings as classes. These perform better, and are usually more convenient to work with. Solve by converting ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([class__49691__auto__], 0))," to ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vec(class__49691__auto__.split(" "))], 0))].join(''); })()], null); var G__49923__$1 = (cljs.core.truth_(fn__48271__auto___50329)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49923,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50329):G__49923); var G__49923__$2 = (cljs.core.truth_(alias__48272__auto___50330)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49923__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50330):G__49923__$1); if(cljs.core.truth_(fd__48273__auto___50331)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49923__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50331); } else { return G__49923__$2; } })()); } else { } if((!((!(typeof new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1((headers[(4)])) === 'string'))))){ var fn__48271__auto___50332 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50333 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50334 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__49924 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = (headers[(7)]); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Avoid string styles",new cljs.core.Keyword(null,"message","message",-406056002),":style supports structured maps of CSS property/value pairs. Strings must be parsed, so they're both slower and harder to read and write."], null); var G__49924__$1 = (cljs.core.truth_(fn__48271__auto___50332)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49924,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50332):G__49924); var G__49924__$2 = (cljs.core.truth_(alias__48272__auto___50333)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49924__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50333):G__49924__$1); if(cljs.core.truth_(fd__48273__auto___50334)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49924__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50334); } else { return G__49924__$2; } })()); } else { } return replicant.core.prep_attrs((headers[(4)]),(headers[(1)]),(headers[(2)])); }); replicant.core.merge_attrs = (function replicant$core$merge_attrs(attrs,overrides){ var G__49925 = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([attrs,cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(overrides,new cljs.core.Keyword(null,"style","style",-496642736))], 0)); if(cljs.core.truth_((function (){var or__5025__auto__ = new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(attrs); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(overrides); } })())){ return cljs.core.update.cljs$core$IFn$_invoke$arity$4(G__49925,new cljs.core.Keyword(null,"style","style",-496642736),cljs.core.merge,new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(overrides)); } else { return G__49925; } }); replicant.core.get_mounting_attrs = (function replicant$core$get_mounting_attrs(headers){ var temp__5821__auto__ = new cljs.core.Keyword("replicant","mounting","replicant/mounting",-699756499).cljs$core$IFn$_invoke$arity$1((headers[(4)])); if(cljs.core.truth_(temp__5821__auto__)){ var mounting = temp__5821__auto__; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [replicant.core.get_attrs(headers),(function (){var headers__$1 = (function (){var G__49926 = headers; if(cljs.core.truth_(mounting)){ var headers__47961__auto__ = G__49926; (headers__47961__auto__[(4)] = replicant.core.merge_attrs((headers__47961__auto__[(4)]),mounting)); return headers__47961__auto__; } else { return G__49926; } })(); return replicant.core.prep_attrs((headers__$1[(4)]),(headers__$1[(1)]),(headers__$1[(2)])); })()], null); } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [replicant.core.get_attrs(headers)], null); } }); replicant.core.get_unmounting_attrs = (function replicant$core$get_unmounting_attrs(vdom){ if(cljs.core.truth_((vdom[(6)]))){ return replicant.core.prep_attrs(replicant.core.merge_attrs((vdom[(3)]),new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009).cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2((vdom[(7)]),(1)))),null,(vdom[(2)])); } else { return null; } }); replicant.core.flatten_seqs_STAR_ = (function replicant$core$flatten_seqs_STAR_(xs,coll){ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (_,x){ if(cljs.core.seq_QMARK_(x)){ return (replicant.core.flatten_seqs_STAR_.cljs$core$IFn$_invoke$arity$2 ? replicant.core.flatten_seqs_STAR_.cljs$core$IFn$_invoke$arity$2(x,coll) : replicant.core.flatten_seqs_STAR_.call(null,x,coll)); } else { return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(coll,x); } }),null,xs); }); replicant.core.flatten_seqs = (function replicant$core$flatten_seqs(xs){ var coll = cljs.core.transient$(cljs.core.PersistentVector.EMPTY); replicant.core.flatten_seqs_STAR_(xs,coll); return cljs.core.persistent_BANG_(coll); }); replicant.core.flatten_map_seqs_STAR_ = (function replicant$core$flatten_map_seqs_STAR_(f,xs,coll){ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (_,x){ if(cljs.core.seq_QMARK_(x)){ return (replicant.core.flatten_map_seqs_STAR_.cljs$core$IFn$_invoke$arity$3 ? replicant.core.flatten_map_seqs_STAR_.cljs$core$IFn$_invoke$arity$3(f,x,coll) : replicant.core.flatten_map_seqs_STAR_.call(null,f,x,coll)); } else { return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(coll,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x))); } }),null,xs); }); replicant.core.flatten_map_seqs = (function replicant$core$flatten_map_seqs(f,xs){ var coll = cljs.core.transient$(cljs.core.PersistentVector.EMPTY); replicant.core.flatten_map_seqs_STAR_(f,xs,coll); return cljs.core.persistent_BANG_(coll); }); /** * Given an optional tag namespace `ns` (e.g. for SVG nodes) and `headers`, as * produced by `get-hiccup-headers`, returns a flat collection of children as * "hiccup headers". Children will carry the `ns`, if any. */ replicant.core.get_children = (function replicant$core$get_children(headers,ns){ if(cljs.core.truth_(new cljs.core.Keyword(null,"innerHTML","innerHTML",-1856751343).cljs$core$IFn$_invoke$arity$1((headers[(4)])))){ return null; } else { return replicant.core.flatten_map_seqs((function (p1__49948_SHARP_){ var G__49949 = p1__49948_SHARP_; if((G__49949 == null)){ return null; } else { return replicant.core.get_hiccup_headers(ns,G__49949); } }),(headers[(5)])); } }); /** * Like `get-children` but returns a tuple of `[children ks]` where `ks` is a set * of the keys in `children`. */ replicant.core.get_children_ks = (function replicant$core$get_children_ks(headers,ns){ var vec__49954 = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p__49957,hiccup){ var vec__49958 = p__49957; var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49958,(0),null); var ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49958,(1),null); if(cljs.core.truth_(hiccup)){ var headers__$1 = replicant.core.get_hiccup_headers(ns,hiccup); var k = (headers__$1[(3)]); return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(children,headers__$1),(function (){var G__49961 = ks; if(cljs.core.truth_(k)){ return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(G__49961,k); } else { return G__49961; } })()], null); } else { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(children,null),ks], null); } }),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.transient$(cljs.core.PersistentVector.EMPTY),cljs.core.transient$(cljs.core.PersistentHashSet.EMPTY)], null),replicant.core.flatten_seqs((headers[(5)]))); var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49954,(0),null); var ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49954,(1),null); return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.persistent_BANG_(children),cljs.core.persistent_BANG_(ks)], null); }); replicant.core._STAR_dispatch_STAR_ = null; /** * Returns the function to use for handling DOM events. Uses `handler` directly * when it's a function or a string (assumed to be inline JavaScript, not really * recommended), or a wrapper that dispatches through * `replicant.core/*dispatch*`, if it is bound to a function. */ replicant.core.get_event_handler = (function replicant$core$get_event_handler(handler,event){ var or__5025__auto__ = ((((cljs.core.fn_QMARK_(handler)) || (((cljs.core.var_QMARK_(handler)) && (cljs.core.fn_QMARK_(cljs.core.deref(handler)))))))?handler:null); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { var or__5025__auto____$1 = ((cljs.core.ifn_QMARK_(replicant.core._STAR_dispatch_STAR_))?(function (e){ var node = e.target; var rd = (function (){var G__49967 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword("replicant","trigger","replicant/trigger",543650841),new cljs.core.Keyword("replicant.trigger","dom-event","replicant.trigger/dom-event",930136738),new cljs.core.Keyword("replicant","js-event","replicant/js-event",1927942146),e,new cljs.core.Keyword("replicant","dom-event","replicant/dom-event",-1613182512),e], null); if(cljs.core.truth_(node)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49967,new cljs.core.Keyword("replicant","node","replicant/node",1306451380),node); } else { return G__49967; } })(); return replicant.core._STAR_dispatch_STAR_.call(null,rd,handler); }):null); if(cljs.core.truth_(or__5025__auto____$1)){ return or__5025__auto____$1; } else { var or__5025__auto____$2 = ((typeof handler === 'string')?handler:null); if(cljs.core.truth_(or__5025__auto____$2)){ return or__5025__auto____$2; } else { throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Cannot use non-function event handler when replicant.core/*dispatch* is not bound to a function",new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"event","event",301435442),event,new cljs.core.Keyword(null,"handler","handler",-195596612),handler,new cljs.core.Keyword(null,"dispatch","dispatch",1319337009),replicant.core._STAR_dispatch_STAR_], null)); } } } }); /** * Returns the function to use to dispatch life-cycle hooks on an element. Uses * `handler` directly when it's a function, or a wrapper that dispatches through * `replicant.core/*dispatch*`, if it is bound to a function. */ replicant.core.get_life_cycle_hook = (function replicant$core$get_life_cycle_hook(handler){ var or__5025__auto__ = ((cljs.core.fn_QMARK_(handler))?handler:null); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { var or__5025__auto____$1 = (cljs.core.truth_((function (){var and__5023__auto__ = handler; if(cljs.core.truth_(and__5023__auto__)){ return cljs.core.ifn_QMARK_(replicant.core._STAR_dispatch_STAR_); } else { return and__5023__auto__; } })())?(function (e){ return replicant.core._STAR_dispatch_STAR_.call(null,e,handler); }):null); if(cljs.core.truth_(or__5025__auto____$1)){ return or__5025__auto____$1; } else { if(cljs.core.truth_(handler)){ throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("Cannot use non-function life-cycle hook when replicant.core/*dispatch* is not bound to a function",new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"handler","handler",-195596612),handler,new cljs.core.Keyword(null,"dispatch","dispatch",1319337009),replicant.core._STAR_dispatch_STAR_], null)); } else { return null; } } } }); replicant.core.call_hook = (function replicant$core$call_hook(renderer,p__49974){ var vec__49975 = p__49974; var hook = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(0),null); var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(1),null); var node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(2),null); var new$ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(3),null); var old = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(4),null); var details = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49975,(5),null); var f = replicant.core.get_life_cycle_hook(hook); var life_cycle = (((old == null))?new cljs.core.Keyword("replicant.life-cycle","mount","replicant.life-cycle/mount",-1685508865):(((new$ == null))?new cljs.core.Keyword("replicant.life-cycle","unmount","replicant.life-cycle/unmount",-144344184):new cljs.core.Keyword("replicant.life-cycle","update","replicant.life-cycle/update",-439589235) )); if(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901),k)) || (((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword("replicant","on-mount","replicant/on-mount",-1518504162))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(life_cycle,new cljs.core.Keyword("replicant.life-cycle","mount","replicant.life-cycle/mount",-1685508865))))) || (((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword("replicant","on-unmount","replicant/on-unmount",-1287095753))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(life_cycle,new cljs.core.Keyword("replicant.life-cycle","unmount","replicant.life-cycle/unmount",-144344184))))) || (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword("replicant","on-update","replicant/on-update",-2121629394))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(life_cycle,new cljs.core.Keyword("replicant.life-cycle","update","replicant.life-cycle/update",-439589235))))))))))){ var G__49983 = (function (){var G__49984 = new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword("replicant","trigger","replicant/trigger",543650841),new cljs.core.Keyword("replicant.trigger","life-cycle","replicant.trigger/life-cycle",-205660972),new cljs.core.Keyword("replicant","life-cycle","replicant/life-cycle",1802888458),life_cycle,new cljs.core.Keyword("replicant","node","replicant/node",1306451380),node,new cljs.core.Keyword("replicant","remember","replicant/remember",809947829),(function replicant$core$call_hook_$_remember(memory){ return replicant.protocols.remember(renderer,node,memory); })], null); var G__49984__$1 = (cljs.core.truth_(details)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49984,new cljs.core.Keyword("replicant","details","replicant/details",-1846218867),details):G__49984); if(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(life_cycle,new cljs.core.Keyword("replicant.life-cycle","mount","replicant.life-cycle/mount",-1685508865))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__49984__$1,new cljs.core.Keyword("replicant","memory","replicant/memory",-1882688464),replicant.protocols.recall(renderer,node)); } else { return G__49984__$1; } })(); return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__49983) : f.call(null,G__49983)); } else { return null; } }); /** * Register the life-cycle hooks from the corresponding virtual DOM node to call * in `impl`, if any. `details` is a vector of keywords that provide some detail * about why the hook is invoked. */ replicant.core.register_hooks = (function replicant$core$register_hooks(var_args){ var args__5755__auto__ = []; var len__5749__auto___50348 = arguments.length; var i__5750__auto___50349 = (0); while(true){ if((i__5750__auto___50349 < len__5749__auto___50348)){ args__5755__auto__.push((arguments[i__5750__auto___50349])); var G__50351 = (i__5750__auto___50349 + (1)); i__5750__auto___50349 = G__50351; continue; } else { } break; } var argseq__5756__auto__ = ((((3) < args__5755__auto__.length))?(new cljs.core.IndexedSeq(args__5755__auto__.slice((3)),(0),null)):null); return replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__5756__auto__); }); (replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic = (function (p__49999,node,headers,p__50000){ var map__50001 = p__49999; var map__50001__$1 = cljs.core.__destructure_map(map__50001); var hooks = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50001__$1,new cljs.core.Keyword(null,"hooks","hooks",-413590103)); var vec__50002 = p__50000; var vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50002,(0),null); var details = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50002,(1),null); var target = (cljs.core.truth_(headers)?(headers[(4)]):(vdom[(3)])); var new_hooks = cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (life_cycle_key){ var temp__5823__auto__ = (life_cycle_key.cljs$core$IFn$_invoke$arity$1 ? life_cycle_key.cljs$core$IFn$_invoke$arity$1(target) : life_cycle_key.call(null,target)); if(cljs.core.truth_(temp__5823__auto__)){ var hook = temp__5823__auto__; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [life_cycle_key,hook], null); } else { return null; } }),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901),new cljs.core.Keyword("replicant","on-mount","replicant/on-mount",-1518504162),new cljs.core.Keyword("replicant","on-unmount","replicant/on-unmount",-1287095753),new cljs.core.Keyword("replicant","on-update","replicant/on-update",-2121629394)], null)); if(cljs.core.empty_QMARK_(new_hooks)){ return null; } else { var headers_sexp = (function (){var G__50010 = headers; if((G__50010 == null)){ return null; } else { return (G__50010[(7)]); } })(); var vdom_sexp = (function (){var G__50011 = vdom; if((G__50011 == null)){ return null; } else { return (G__50011[(7)]); } })(); return cljs.core._vreset_BANG_(hooks,cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core._deref(hooks),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__50012){ var vec__50013 = p__50012; var k = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50013,(0),null); var hook = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50013,(1),null); return new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [hook,k,node,headers_sexp,vdom_sexp,details], null); }),new_hooks))); } })); (replicant.core.register_hooks.cljs$lang$maxFixedArity = (3)); /** @this {Function} */ (replicant.core.register_hooks.cljs$lang$applyTo = (function (seq49989){ var G__49992 = cljs.core.first(seq49989); var seq49989__$1 = cljs.core.next(seq49989); var G__49993 = cljs.core.first(seq49989__$1); var seq49989__$2 = cljs.core.next(seq49989__$1); var G__49994 = cljs.core.first(seq49989__$2); var seq49989__$3 = cljs.core.next(seq49989__$2); var self__5734__auto__ = this; return self__5734__auto__.cljs$core$IFn$_invoke$arity$variadic(G__49992,G__49993,G__49994,seq49989__$3); })); replicant.core.register_mount = (function replicant$core$register_mount(p__50018,node,mounting_attrs,attrs){ var map__50019 = p__50018; var map__50019__$1 = cljs.core.__destructure_map(map__50019); var mounts = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50019__$1,new cljs.core.Keyword(null,"mounts","mounts",-791474425)); return cljs.core._vreset_BANG_(mounts,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core._deref(mounts),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [node,mounting_attrs,attrs], null))); }); replicant.core.update_styles = (function replicant$core$update_styles(renderer,el,new_styles,old_styles){ var new_ks = cljs.core.set(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__50020_SHARP_){ return (cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_styles,p1__50020_SHARP_) == null); }),cljs.core.keys(new_styles))); var old_ks = cljs.core.set(cljs.core.keys(old_styles)); cljs.core.run_BANG_((function (p1__50021_SHARP_){ return replicant.protocols.remove_style(renderer,el,p1__50021_SHARP_); }),cljs.core.remove.cljs$core$IFn$_invoke$arity$2(new_ks,old_ks)); return cljs.core.run_BANG_((function (p1__50023_SHARP_){ var new_style = cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_styles,p1__50023_SHARP_); if(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(new_style,cljs.core.get.cljs$core$IFn$_invoke$arity$2(old_styles,p1__50023_SHARP_))){ if((!((p1__50023_SHARP_ instanceof cljs.core.Keyword)))){ var fn__48271__auto___50355 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50356 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50357 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50025 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Style key ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50023_SHARP_)," should be a keyword"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),["Replicant expects your style keys to be keywords. While anything that supports `name` (strings, symbols) will ","technically work, mixing types will hinder Replicant from recognizing changes properly. Rendering once with ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50023_SHARP_)," and once with ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50023_SHARP_)))," may produce undesired results. Your safest option is to always use keywords."].join('')], null); var G__50025__$1 = (cljs.core.truth_(fn__48271__auto___50355)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50025,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50355):G__50025); var G__50025__$2 = (cljs.core.truth_(alias__48272__auto___50356)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50025__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50356):G__50025__$1); if(cljs.core.truth_(fd__48273__auto___50357)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50025__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50357); } else { return G__50025__$2; } })()); } else { } if((!((function (){var name__49749__auto__ = cljs.core.name(p1__50023_SHARP_); return ((clojure.string.starts_with_QMARK_(name__49749__auto__,"--")) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(name__49749__auto__,clojure.string.lower_case(name__49749__auto__)))); })()))){ var fn__48271__auto___50359 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50360 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50361 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50026 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Use ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(replicant.asserts.camel__GT_dash_k(p1__50023_SHARP_)),", not ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50023_SHARP_)].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"Replicant passes style keys directly to `el.style.setProperty`, which expects CSS-style dash-cased property names."], null); var G__50026__$1 = (cljs.core.truth_(fn__48271__auto___50359)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50026,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50359):G__50026); var G__50026__$2 = (cljs.core.truth_(alias__48272__auto___50360)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50026__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50360):G__50026__$1); if(cljs.core.truth_(fd__48273__auto___50361)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50026__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50361); } else { return G__50026__$2; } })()); } else { } return replicant.protocols.set_style(renderer,el,p1__50023_SHARP_,replicant.core.get_style_val(p1__50023_SHARP_,new_style)); } else { return null; } }),new_ks); }); replicant.core.update_classes = (function replicant$core$update_classes(renderer,el,new_classes,old_classes){ cljs.core.run_BANG_((function (p1__50027_SHARP_){ return replicant.protocols.remove_class(renderer,el,p1__50027_SHARP_); }),cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.set(new_classes),old_classes)); return cljs.core.run_BANG_((function (p1__50028_SHARP_){ return replicant.protocols.add_class(renderer,el,p1__50028_SHARP_); }),cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.set(old_classes),new_classes)); }); replicant.core.get_event_handler_options = (function replicant$core$get_event_handler_options(m){ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (res,k){ var G__50029 = res; if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("replicant.event",cljs.core.namespace(k))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50029,cljs.core.name(k),(k.cljs$core$IFn$_invoke$arity$1 ? k.cljs$core$IFn$_invoke$arity$1(m) : k.call(null,m))); } else { return G__50029; } }),cljs.core.PersistentArrayMap.EMPTY,cljs.core.keys(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(m,new cljs.core.Keyword("replicant.event","handler","replicant.event/handler",-1806871006)))); }); replicant.core.add_event_listeners = (function replicant$core$add_event_listeners(renderer,el,val){ return cljs.core.run_BANG_((function (p__50030){ var vec__50031 = p__50030; var event = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50031,(0),null); var handler = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50031,(1),null); if((!((function (){var event__49702__auto__ = cljs.core.name(event); return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("DOMContentLoaded",event__49702__auto__)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(event__49702__auto__,clojure.string.lower_case(event__49702__auto__)))); })()))){ var fn__48271__auto___50366 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50367 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50368 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50034 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Use ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(clojure.string.lower_case(cljs.core.name(event)))),", not ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(event)].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"Most event names should be in all lower-case. Replicant passes your event names directly to addEventListener, and mis-cased event names will fail silently."], null); var G__50034__$1 = (cljs.core.truth_(fn__48271__auto___50366)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50034,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50366):G__50034); var G__50034__$2 = (cljs.core.truth_(alias__48272__auto___50367)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50034__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50367):G__50034__$1); if(cljs.core.truth_(fd__48273__auto___50368)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50034__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50368); } else { return G__50034__$2; } })()); } else { } var temp__5821__auto__ = new cljs.core.Keyword("replicant.event","handler","replicant.event/handler",-1806871006).cljs$core$IFn$_invoke$arity$1(handler); if(cljs.core.truth_(temp__5821__auto__)){ var eh = temp__5821__auto__; var temp__5823__auto__ = replicant.core.get_event_handler(eh,event); if(cljs.core.truth_(temp__5823__auto__)){ var eh__$1 = temp__5823__auto__; return replicant.protocols.set_event_handler(renderer,el,event,eh__$1,replicant.core.get_event_handler_options(handler)); } else { return null; } } else { var temp__5823__auto__ = replicant.core.get_event_handler(handler,event); if(cljs.core.truth_(temp__5823__auto__)){ var handler__$1 = temp__5823__auto__; return replicant.protocols.set_event_handler(renderer,el,event,handler__$1,null); } else { return null; } } }),cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.second),val)); }); replicant.core.update_event_listeners = (function replicant$core$update_event_listeners(renderer,el,new_handlers,old_handlers){ return cljs.core.run_BANG_((function (event){ var new_handler = cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_handlers,event); var old_handler = cljs.core.get.cljs$core$IFn$_invoke$arity$2(old_handlers,event); var old_opts = (cljs.core.truth_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(old_handler,new cljs.core.Keyword("replicant.event","handler","replicant.event/handler",-1806871006)))?cljs.core.not_empty(replicant.core.get_event_handler_options(old_handler)):null); var new_opts = (cljs.core.truth_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_handler,new cljs.core.Keyword("replicant.event","handler","replicant.event/handler",-1806871006)))?cljs.core.not_empty(replicant.core.get_event_handler_options(new_handler)):null); if(cljs.core.truth_((function (){var and__5023__auto__ = old_handler; if(cljs.core.truth_(and__5023__auto__)){ return (((new_handler == null)) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(old_opts,new_opts))); } else { return and__5023__auto__; } })())){ replicant.protocols.remove_event_handler(renderer,el,event,old_opts); } else { } if(cljs.core.truth_((function (){var and__5023__auto__ = new_handler; if(cljs.core.truth_(and__5023__auto__)){ return cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(new_handler,old_handler); } else { return and__5023__auto__; } })())){ var temp__5821__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_handler,new cljs.core.Keyword("replicant.event","handler","replicant.event/handler",-1806871006)); if(cljs.core.truth_(temp__5821__auto__)){ var handler = temp__5821__auto__; return replicant.protocols.set_event_handler(renderer,el,event,replicant.core.get_event_handler(handler,event),new_opts); } else { return replicant.protocols.set_event_handler(renderer,el,event,replicant.core.get_event_handler(new_handler,event),null); } } else { return null; } }),cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.set(cljs.core.keys(new_handlers)),cljs.core.keys(old_handlers))); }); replicant.core.xlinkns = "http://www.w3.org/1999/xlink"; replicant.core.xmlns = "http://www.w3.org/XML/1998/namespace"; replicant.core.stringify = (function replicant$core$stringify(x){ return [(function (){var temp__5823__auto__ = cljs.core.namespace(x); if(cljs.core.truth_(temp__5823__auto__)){ var ns = temp__5823__auto__; return [ns,"/"].join(''); } else { return null; } })(),cljs.core.name(x)].join(''); }); replicant.core.set_attr_val = (function replicant$core$set_attr_val(renderer,el,attr,v){ var an = cljs.core.name(attr); if((!((!(clojure.string.starts_with_QMARK_(cljs.core.name(attr),"on")))))){ var fn__48271__auto___50373 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50374 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50375 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50053 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Set event listeners in the :on map",new cljs.core.Keyword(null,"message","message",-406056002),["Event handler attributes are not supported. Instead of ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(attr)," set :on {",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(replicant.asserts.camel__GT_dash(cljs.core.name(attr).substring((2)))))," ,,,}"].join('')], null); var G__50053__$1 = (cljs.core.truth_(fn__48271__auto___50373)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50053,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50373):G__50053); var G__50053__$2 = (cljs.core.truth_(alias__48272__auto___50374)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50053__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50374):G__50053__$1); if(cljs.core.truth_(fd__48273__auto___50375)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50053__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50375); } else { return G__50053__$2; } })()); } else { } if(cljs.core.not(cljs.core.re_find(/^[a-zA-Z\-:_][a-zA-Z0-9\-:\._]*$/,cljs.core.name(attr)))){ var fn__48271__auto___50376 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50377 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50378 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50058 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Invalid attribute name ",cljs.core.name(attr)].join(''),new cljs.core.Keyword(null,"message","message",-406056002),(function (){var attr__49760__auto__ = cljs.core.name(attr); return ["Tried to set attribute ",attr__49760__auto__," to value ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(v),". This will fail","horribly in the browser because ",(cljs.core.truth_(cljs.core.re_find(/^[0-9]/,attr__49760__auto__))?" it starts with a number":(cljs.core.truth_(cljs.core.re_find(/^\./,attr__49760__auto__))?" it starts with a dot":[" it contains the character ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.re_find(/[^a-zA-Z0-9\-:\._]/,attr__49760__auto__))].join('') )),", which isn't allowed as per the HTML spec."].join(''); })()], null); var G__50058__$1 = (cljs.core.truth_(fn__48271__auto___50376)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50058,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50376):G__50058); var G__50058__$2 = (cljs.core.truth_(alias__48272__auto___50377)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50058__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50377):G__50058__$1); if(cljs.core.truth_(fd__48273__auto___50378)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50058__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50378); } else { return G__50058__$2; } })()); } else { } return replicant.protocols.set_attribute(renderer,el,an,(function (){var G__50064 = v; if((((v instanceof cljs.core.Keyword)) || ((v instanceof cljs.core.Symbol)))){ return replicant.core.stringify(G__50064); } else { return G__50064; } })(),(function (){var G__50065 = cljs.core.PersistentArrayMap.EMPTY; var G__50065__$1 = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),an.indexOf("xml:")))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50065,new cljs.core.Keyword(null,"ns","ns",441598760),replicant.core.xmlns):G__50065); if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),an.indexOf("xlink:"))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50065__$1,new cljs.core.Keyword(null,"ns","ns",441598760),replicant.core.xlinkns); } else { return G__50065__$1; } })()); }); replicant.core.update_attr = (function replicant$core$update_attr(renderer,el,attr,new$,old){ if(cljs.core.truth_(cljs.core.namespace(attr))){ return null; } else { var G__50071 = attr; var G__50071__$1 = (((G__50071 instanceof cljs.core.Keyword))?G__50071.fqn:null); switch (G__50071__$1) { case "style": return replicant.core.update_styles(renderer,el,new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(new$),new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(old)); break; case "classes": return replicant.core.update_classes(renderer,el,new cljs.core.Keyword(null,"classes","classes",2037804510).cljs$core$IFn$_invoke$arity$1(new$),new cljs.core.Keyword(null,"classes","classes",2037804510).cljs$core$IFn$_invoke$arity$1(old)); break; case "on": return replicant.core.update_event_listeners(renderer,el,new cljs.core.Keyword(null,"on","on",173873944).cljs$core$IFn$_invoke$arity$1(new$),new cljs.core.Keyword(null,"on","on",173873944).cljs$core$IFn$_invoke$arity$1(old)); break; default: var temp__5821__auto__ = (attr.cljs$core$IFn$_invoke$arity$1 ? attr.cljs$core$IFn$_invoke$arity$1(new$) : attr.call(null,new$)); if(cljs.core.truth_(temp__5821__auto__)){ var v = temp__5821__auto__; if(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(v,(attr.cljs$core$IFn$_invoke$arity$1 ? attr.cljs$core$IFn$_invoke$arity$1(old) : attr.call(null,old)))){ return replicant.core.set_attr_val(renderer,el,attr,v); } else { return null; } } else { return replicant.protocols.remove_attribute(renderer,el,cljs.core.name(attr)); } } } }); replicant.core.update_attributes = (function replicant$core$update_attributes(renderer,el,new_attrs,old_attrs){ return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__50078_SHARP_,p2__50077_SHARP_){ return replicant.core.update_attr(renderer,el,p2__50077_SHARP_,new_attrs,old_attrs); }),null,cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.set(cljs.core.keys(new_attrs)),cljs.core.keys(old_attrs))); }); replicant.core.reconcile_attributes = (function replicant$core$reconcile_attributes(renderer,el,new_attrs,old_attrs){ if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new_attrs,old_attrs)){ return false; } else { replicant.core.update_attributes(renderer,el,new_attrs,old_attrs); return true; } }); replicant.core.set_styles = (function replicant$core$set_styles(renderer,el,new_styles){ return cljs.core.run_BANG_((function (p1__50088_SHARP_){ if((!((p1__50088_SHARP_ instanceof cljs.core.Keyword)))){ var fn__48271__auto___50384 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50385 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50386 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50092 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Style key ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50088_SHARP_)," should be a keyword"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),["Replicant expects your style keys to be keywords. While anything that supports `name` (strings, symbols) will ","technically work, mixing types will hinder Replicant from recognizing changes properly. Rendering once with ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50088_SHARP_)," and once with ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50088_SHARP_)))," may produce undesired results. Your safest option is to always use keywords."].join('')], null); var G__50092__$1 = (cljs.core.truth_(fn__48271__auto___50384)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50092,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50384):G__50092); var G__50092__$2 = (cljs.core.truth_(alias__48272__auto___50385)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50092__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50385):G__50092__$1); if(cljs.core.truth_(fd__48273__auto___50386)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50092__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50386); } else { return G__50092__$2; } })()); } else { } if((!((function (){var name__49749__auto__ = cljs.core.name(p1__50088_SHARP_); return ((clojure.string.starts_with_QMARK_(name__49749__auto__,"--")) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(name__49749__auto__,clojure.string.lower_case(name__49749__auto__)))); })()))){ var fn__48271__auto___50387 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50388 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50389 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50097 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Use ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(replicant.asserts.camel__GT_dash_k(p1__50088_SHARP_)),", not ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__50088_SHARP_)].join(''),new cljs.core.Keyword(null,"message","message",-406056002),"Replicant passes style keys directly to `el.style.setProperty`, which expects CSS-style dash-cased property names."], null); var G__50097__$1 = (cljs.core.truth_(fn__48271__auto___50387)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50097,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50387):G__50097); var G__50097__$2 = (cljs.core.truth_(alias__48272__auto___50388)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50097__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50388):G__50097__$1); if(cljs.core.truth_(fd__48273__auto___50389)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50097__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50389); } else { return G__50097__$2; } })()); } else { } return replicant.protocols.set_style(renderer,el,p1__50088_SHARP_,replicant.core.get_style_val(p1__50088_SHARP_,cljs.core.get.cljs$core$IFn$_invoke$arity$2(new_styles,p1__50088_SHARP_))); }),cljs.core.filter.cljs$core$IFn$_invoke$arity$2(new_styles,cljs.core.keys(new_styles))); }); replicant.core.set_classes = (function replicant$core$set_classes(renderer,el,new_classes){ return cljs.core.run_BANG_((function (p1__50103_SHARP_){ return replicant.protocols.add_class(renderer,el,p1__50103_SHARP_); }),new_classes); }); replicant.core.set_attr = (function replicant$core$set_attr(renderer,el,attr,new$){ if(cljs.core.truth_(cljs.core.namespace(attr))){ return null; } else { var G__50111 = attr; var G__50111__$1 = (((G__50111 instanceof cljs.core.Keyword))?G__50111.fqn:null); switch (G__50111__$1) { case "style": return replicant.core.set_styles(renderer,el,new cljs.core.Keyword(null,"style","style",-496642736).cljs$core$IFn$_invoke$arity$1(new$)); break; case "classes": return replicant.core.set_classes(renderer,el,new cljs.core.Keyword(null,"classes","classes",2037804510).cljs$core$IFn$_invoke$arity$1(new$)); break; case "on": return replicant.core.add_event_listeners(renderer,el,new cljs.core.Keyword(null,"on","on",173873944).cljs$core$IFn$_invoke$arity$1(new$)); break; default: return replicant.core.set_attr_val(renderer,el,attr,(attr.cljs$core$IFn$_invoke$arity$1 ? attr.cljs$core$IFn$_invoke$arity$1(new$) : attr.call(null,new$))); } } }); replicant.core.set_attributes = (function replicant$core$set_attributes(renderer,el,new_attrs){ return cljs.core.run_BANG_((function (p1__50115_SHARP_){ return replicant.core.set_attr(renderer,el,p1__50115_SHARP_,new_attrs); }),cljs.core.filter.cljs$core$IFn$_invoke$arity$2(new_attrs,cljs.core.keys(new_attrs))); }); replicant.core.render_default_alias = (function replicant$core$render_default_alias(tag_name,_attrs,children){ return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"div","div",1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"data-replicant-error","data-replicant-error",1583668098),["Undefined alias ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag_name)].join('')], null),(function (){var iter__5503__auto__ = (function replicant$core$render_default_alias_$_iter__50120(s__50121){ return (new cljs.core.LazySeq(null,(function (){ var s__50121__$1 = s__50121; while(true){ var temp__5823__auto__ = cljs.core.seq(s__50121__$1); if(temp__5823__auto__){ var s__50121__$2 = temp__5823__auto__; if(cljs.core.chunked_seq_QMARK_(s__50121__$2)){ var c__5501__auto__ = cljs.core.chunk_first(s__50121__$2); var size__5502__auto__ = cljs.core.count(c__5501__auto__); var b__50123 = cljs.core.chunk_buffer(size__5502__auto__); if((function (){var i__50122 = (0); while(true){ if((i__50122 < size__5502__auto__)){ var child = cljs.core._nth(c__5501__auto__,i__50122); cljs.core.chunk_append(b__50123,(function (){var G__50128 = child; if((((!(typeof child === 'string'))) && ((!(replicant.hiccup.hiccup_QMARK_(child)))))){ return cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([G__50128], 0)); } else { return G__50128; } })()); var G__50397 = (i__50122 + (1)); i__50122 = G__50397; continue; } else { return true; } break; } })()){ return cljs.core.chunk_cons(cljs.core.chunk(b__50123),replicant$core$render_default_alias_$_iter__50120(cljs.core.chunk_rest(s__50121__$2))); } else { return cljs.core.chunk_cons(cljs.core.chunk(b__50123),null); } } else { var child = cljs.core.first(s__50121__$2); return cljs.core.cons((function (){var G__50132 = child; if((((!(typeof child === 'string'))) && ((!(replicant.hiccup.hiccup_QMARK_(child)))))){ return cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([G__50132], 0)); } else { return G__50132; } })(),replicant$core$render_default_alias_$_iter__50120(cljs.core.rest(s__50121__$2))); } } else { return null; } break; } }),null,null)); }); return iter__5503__auto__(children); })()], null); }); replicant.core.add_classes = (function replicant$core$add_classes(class_attr,classes){ if(cljs.core.coll_QMARK_(class_attr)){ return cljs.core.set(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(class_attr,classes)); } else { if((class_attr == null)){ return cljs.core.set(classes); } else { return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.set(classes),class_attr); } } }); replicant.core.get_alias_headers = (function replicant$core$get_alias_headers(p__50142,headers){ var map__50143 = p__50142; var map__50143__$1 = cljs.core.__destructure_map(map__50143); var aliases = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50143__$1,new cljs.core.Keyword(null,"aliases","aliases",1346874714)); var alias_data = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50143__$1,new cljs.core.Keyword(null,"alias-data","alias-data",1743863930)); var on_alias_exception = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50143__$1,new cljs.core.Keyword(null,"on-alias-exception","on-alias-exception",1142240043)); var tag_name = (headers[(0)]); if((tag_name instanceof cljs.core.Keyword)){ var f = (function (){var or__5025__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(aliases,tag_name); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.partial.cljs$core$IFn$_invoke$arity$2(replicant.core.render_default_alias,tag_name); } })(); var id = (headers[(1)]); var classes = (headers[(2)]); var attrs = (headers[(4)]); var attrs__$1 = (function (){var G__50147 = attrs; var G__50147__$1 = (cljs.core.truth_(id)?cljs.core.update.cljs$core$IFn$_invoke$arity$3(G__50147,new cljs.core.Keyword(null,"id","id",-1388402092),(function (p1__50139_SHARP_){ var or__5025__auto__ = p1__50139_SHARP_; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return id; } })):G__50147); var G__50147__$2 = (cljs.core.truth_((function (){var or__5025__auto__ = cljs.core.seq(classes); if(or__5025__auto__){ return or__5025__auto__; } else { return new cljs.core.Keyword(null,"class","class",-2030961996).cljs$core$IFn$_invoke$arity$1(attrs); } })())?cljs.core.update.cljs$core$IFn$_invoke$arity$4(G__50147__$1,new cljs.core.Keyword(null,"class","class",-2030961996),replicant.core.add_classes,classes):G__50147__$1); if(cljs.core.truth_(alias_data)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50147__$2,new cljs.core.Keyword("replicant","alias-data","replicant/alias-data",1929752572),alias_data); } else { return G__50147__$2; } })(); var children = cljs.core.seq(replicant.core.flatten_seqs((headers[(5)]))); if((!(cljs.core.fn_QMARK_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(aliases,tag_name))))){ var fn__48271__auto___50402 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50403 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50404 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50152 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),["Alias ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag_name)," isn't defined"].join(''),new cljs.core.Keyword(null,"message","message",-406056002),["There's no available function to render this alias. Replicant will ","render an empty element with data attributes in its place. Available ","aliases are:\n",clojure.string.join.cljs$core$IFn$_invoke$arity$2("\n",cljs.core.keys(aliases))].join('')], null); var G__50152__$1 = (cljs.core.truth_(fn__48271__auto___50402)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50152,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50402):G__50152); var G__50152__$2 = (cljs.core.truth_(alias__48272__auto___50403)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50152__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50403):G__50152__$1); if(cljs.core.truth_(fd__48273__auto___50404)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50152__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50404); } else { return G__50152__$2; } })()); } else { } var alias_hiccup = (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(attrs__$1,children) : f.call(null,attrs__$1,children)); if((!(((typeof alias_hiccup === 'string') || (replicant.hiccup.hiccup_QMARK_(alias_hiccup)))))){ var fn__48271__auto___50411 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50412 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50413 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50153 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Aliases must return valid hiccup",new cljs.core.Keyword(null,"message","message",-406056002),["Aliases must always represent a node in the document, and ","cannot return ",(((alias_hiccup == null))?"nil":((cljs.core.map_QMARK_(alias_hiccup))?"a map":((cljs.core.coll_QMARK_(alias_hiccup))?"multiple nodes":cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([alias_hiccup], 0)) ))),". Please check the implementation of ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag_name),"."].join('')], null); var G__50153__$1 = (cljs.core.truth_(fn__48271__auto___50411)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50153,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50411):G__50153); var G__50153__$2 = (cljs.core.truth_(alias__48272__auto___50412)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50153__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50412):G__50153__$1); if(cljs.core.truth_(fd__48273__auto___50413)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50153__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50413); } else { return G__50153__$2; } })()); } else { } var hh__47983__auto__ = replicant.core.get_hiccup_headers(null,alias_hiccup); var alias__47984__auto__ = headers; if(cljs.core.truth_(hh__47983__auto__)){ var G__50154 = hh__47983__auto__; (G__50154[(3)] = (function (){var or__5025__auto__ = (alias__47984__auto__[(3)]); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return (hh__47983__auto__[(3)]); } })()); (G__50154[(7)] = (hh__47983__auto__[(7)])); (G__50154[(9)] = (alias__47984__auto__[(7)])); return G__50154; } else { return null; } } else { return null; } }); /** * Create DOM node according to virtual DOM in `headers`. Register relevant * life-cycle hooks from the new node or its descendants in `impl`. Returns a * tuple of the newly created node and the fully realized vdom. */ replicant.core.create_node = (function replicant$core$create_node(p__50161,headers){ var map__50162 = p__50161; var map__50162__$1 = cljs.core.__destructure_map(map__50162); var impl = map__50162__$1; var renderer = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50162__$1,new cljs.core.Keyword(null,"renderer","renderer",336841071)); if(cljs.core.truth_(headers)){ var temp__5823__auto___50447 = (function (){var or__5025__auto__ = new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1((headers[(4)])); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1(cljs.core.meta((headers[(7)]))); } })(); if(cljs.core.truth_(temp__5823__auto___50447)){ var ctx__48265__auto___50448 = temp__5823__auto___50447; cljs.core.reset_BANG_(replicant.assert.current_context,ctx__48265__auto___50448); } else { } cljs.core.reset_BANG_(replicant.assert.current_node,(headers[(7)])); } else { } var or__5025__auto__ = (function (){var temp__5823__auto__ = (headers[(8)]); if(cljs.core.truth_(temp__5823__auto__)){ var text = temp__5823__auto__; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [replicant.protocols.create_text_node(renderer,text),(function (){var text__48401__auto__ = text; return (new Array(null,null,null,null,null,null,false,text__48401__auto__,text__48401__auto__,null,null)); })()], null); } else { return null; } })(); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { var or__5025__auto____$1 = (function (){var temp__5823__auto__ = replicant.core.get_alias_headers(impl,headers); if(cljs.core.truth_(temp__5823__auto__)){ var alias_headers = temp__5823__auto__; var vec__50163 = (replicant.core.create_node.cljs$core$IFn$_invoke$arity$2 ? replicant.core.create_node.cljs$core$IFn$_invoke$arity$2(impl,alias_headers) : replicant.core.create_node.call(null,impl,alias_headers)); var child_node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50163,(0),null); var vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50163,(1),null); var k = (alias_headers[(3)]); var vdom__$1 = (function (){var headers__48415__auto__ = headers; return (new Array((headers__48415__auto__[(0)]),(headers__48415__auto__[(3)]),(headers__48415__auto__[(2)]),(headers[(4)]),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [vdom], null),(function (){var G__50166 = cljs.core.PersistentHashSet.EMPTY; if(cljs.core.truth_(k)){ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(G__50166,k); } else { return G__50166; } })(),cljs.core.boolean$(new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009).cljs$core$IFn$_invoke$arity$1((headers__48415__auto__[(4)]))),(headers__48415__auto__[(7)]),null,null,(1))); })(); return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [child_node,vdom__$1], null); } else { return null; } })(); if(cljs.core.truth_(or__5025__auto____$1)){ return or__5025__auto____$1; } else { var tag_name = (headers[(0)]); var ns = (function (){var or__5025__auto____$2 = (headers[(6)]); if(cljs.core.truth_(or__5025__auto____$2)){ return or__5025__auto____$2; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("svg",tag_name)){ return "http://www.w3.org/2000/svg"; } else { return null; } } })(); var node = replicant.protocols.create_element(renderer,tag_name,(cljs.core.truth_(ns)?new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"ns","ns",441598760),ns], null):null)); var vec__50167 = replicant.core.get_mounting_attrs(headers); var attrs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50167,(0),null); var mounting_attrs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50167,(1),null); var _ = replicant.core.set_attributes(renderer,node,(function (){var or__5025__auto____$2 = mounting_attrs; if(cljs.core.truth_(or__5025__auto____$2)){ return or__5025__auto____$2; } else { return attrs; } })()); var vec__50170 = cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p__50179,child_headers){ var vec__50180 = p__50179; var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50180,(0),null); var ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50180,(1),null); var n = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50180,(2),null); if(cljs.core.truth_(child_headers)){ var vec__50184 = (replicant.core.create_node.cljs$core$IFn$_invoke$arity$2 ? replicant.core.create_node.cljs$core$IFn$_invoke$arity$2(impl,child_headers) : replicant.core.create_node.call(null,impl,child_headers)); var child_node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50184,(0),null); var vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50184,(1),null); var k = (vdom[(1)]); replicant.protocols.append_child(renderer,node,child_node); return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(children,vdom),(function (){var G__50187 = ks; if(cljs.core.truth_(k)){ return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(G__50187,k); } else { return G__50187; } })(),(n + (1))], null); } else { return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(children,null),ks,n], null); } }),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.transient$(cljs.core.PersistentVector.EMPTY),cljs.core.transient$(cljs.core.PersistentHashSet.EMPTY),(0)], null),replicant.core.get_children(headers,ns)); var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50170,(0),null); var ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50170,(1),null); var n_children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50170,(2),null); replicant.core.register_hooks(impl,node,headers); if(cljs.core.truth_(mounting_attrs)){ replicant.core.register_mount(impl,node,mounting_attrs,attrs); } else { } return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [node,(function (){var headers__48415__auto__ = headers; return (new Array((headers__48415__auto__[(0)]),(headers__48415__auto__[(3)]),(headers__48415__auto__[(2)]),attrs,cljs.core.persistent_BANG_(children),cljs.core.persistent_BANG_(ks),cljs.core.boolean$(new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009).cljs$core$IFn$_invoke$arity$1((headers__48415__auto__[(4)]))),(headers__48415__auto__[(7)]),null,null,n_children)); })()], null); } } }); /** * Two elements are considered similar enough for reuse if they are both hiccup * elements with the same tag name and the same key (or both have no key) - or * they are both strings. * * Similarity in this case indicates that the node can be used for reconciliation * instead of creating a new node from scratch. */ replicant.core.reusable_QMARK_ = (function replicant$core$reusable_QMARK_(headers,vdom){ var or__5025__auto__ = (function (){var and__5023__auto__ = (headers[(8)]); if(cljs.core.truth_(and__5023__auto__)){ return (vdom[(8)]); } else { return and__5023__auto__; } })(); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((headers[(3)]),(vdom[(1)]))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((headers[(0)]),(vdom[(0)])))); } }); replicant.core.same_QMARK_ = (function replicant$core$same_QMARK_(headers,vdom){ return ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((headers[(3)]),(vdom[(1)]))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((headers[(0)]),(vdom[(0)])))); }); replicant.core.index_of = (function replicant$core$index_of(f,xs){ var coll_n = (0); var dom_n = (0); var xs__$1 = cljs.core.seq(xs); while(true){ if((xs__$1 == null)){ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(-1),(-1)], null); } else { if((cljs.core.first(xs__$1) == null)){ var G__50458 = (coll_n + (1)); var G__50459 = dom_n; var G__50460 = cljs.core.next(xs__$1); coll_n = G__50458; dom_n = G__50459; xs__$1 = G__50460; continue; } else { if(cljs.core.truth_((function (){var G__50195 = cljs.core.first(xs__$1); return (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__50195) : f.call(null,G__50195)); })())){ return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [coll_n,dom_n], null); } else { var G__50467 = (coll_n + (1)); var G__50468 = (dom_n + (1)); var G__50469 = cljs.core.next(xs__$1); coll_n = G__50467; dom_n = G__50468; xs__$1 = G__50469; continue; } } } break; } }); replicant.core.get_ns = (function replicant$core$get_ns(headers){ var or__5025__auto__ = (headers[(6)]); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2("svg",(headers[(0)]))){ return "http://www.w3.org/2000/svg"; } else { return null; } } }); replicant.core.insert_children = (function replicant$core$insert_children(p__50196,el,children,vdom){ var map__50197 = p__50196; var map__50197__$1 = cljs.core.__destructure_map(map__50197); var impl = map__50197__$1; var renderer = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50197__$1,new cljs.core.Keyword(null,"renderer","renderer",336841071)); return cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p__50198,child){ var vec__50199 = p__50198; var res = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50199,(0),null); var n = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50199,(1),null); if(cljs.core.truth_(child)){ var vec__50202 = replicant.core.create_node(impl,child); var node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50202,(0),null); var vdom__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50202,(1),null); replicant.protocols.append_child(renderer,el,node); return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(res,vdom__$1),(n + (1))], null); } else { return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(res,null),n], null); } }),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [vdom,(0)], null),children); }); replicant.core.remove_child = (function replicant$core$remove_child(p__50205,unmounts,el,n,vdom){ var map__50206 = p__50205; var map__50206__$1 = cljs.core.__destructure_map(map__50206); var impl = map__50206__$1; var renderer = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50206__$1,new cljs.core.Keyword(null,"renderer","renderer",336841071)); var temp__5821__auto__ = (vdom[(9)]); if(cljs.core.truth_(temp__5821__auto__)){ var id = temp__5821__auto__; if(cljs.core.truth_((unmounts.cljs$core$IFn$_invoke$arity$1 ? unmounts.cljs$core$IFn$_invoke$arity$1(id) : unmounts.call(null,id)))){ return vdom; } else { return null; } } else { var res = (function (){var temp__5821__auto____$1 = replicant.core.get_unmounting_attrs(vdom); if(cljs.core.truth_(temp__5821__auto____$1)){ var attrs = temp__5821__auto____$1; var vdom__$1 = (function (){var vdom__48395__auto__ = vdom; (vdom__48395__auto__[(9)] = replicant.vdom.id.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,(replicant.vdom.id.cljs$core$IDeref$_deref$arity$1(null) + (1)))); return vdom__48395__auto__; })(); var child = replicant.protocols.get_child(renderer,el,n); replicant.core.update_attributes(renderer,child,attrs,(vdom__$1[(3)])); cljs.core._vreset_BANG_(new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core._deref(new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl)),(vdom__$1[(9)]))); replicant.protocols.on_transition_end(renderer,child,(function (){ cljs.core._vreset_BANG_(new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl),cljs.core.disj.cljs$core$IFn$_invoke$arity$2(cljs.core._deref(new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl)),(vdom__$1[(9)]))); replicant.protocols.remove_child(renderer,el,child); var temp__5823__auto___50485 = new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901).cljs$core$IFn$_invoke$arity$1((vdom__$1[(3)])); if(cljs.core.truth_(temp__5823__auto___50485)){ var hook_50486 = temp__5823__auto___50485; replicant.core.call_hook(renderer,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [hook_50486,new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901),child,null,vdom__$1], null)); } else { } return renderer; })); return vdom__$1; } else { var child = replicant.protocols.get_child(renderer,el,n); replicant.protocols.remove_child(renderer,el,child); replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic(impl,child,null,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([vdom], 0)); return null; } })(); return res; } }); replicant.core.move_node_details = new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword("replicant","move-node","replicant/move-node",-1189251602)], null); replicant.core.unchanged_QMARK_ = (function replicant$core$unchanged_QMARK_(headers,vdom){ return cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((function (){var G__50207 = headers; if((G__50207 == null)){ return null; } else { return (G__50207[(7)]); } })(),(function (){var G__50208 = vdom; if((G__50208 == null)){ return null; } else { return (G__50208[(7)]); } })()); }); replicant.core.move_nodes = (function replicant$core$move_nodes(p__50211,el,headers,new_children,vdom,old_children,n,n_children){ var map__50212 = p__50211; var map__50212__$1 = cljs.core.__destructure_map(map__50212); var impl = map__50212__$1; var renderer = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50212__$1,new cljs.core.Keyword(null,"renderer","renderer",336841071)); var vec__50213 = (cljs.core.truth_((headers[(3)]))?replicant.core.index_of((function (p1__50209_SHARP_){ return replicant.core.same_QMARK_(headers,p1__50209_SHARP_); }),old_children):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(-1),(-1)], null)); var o_idx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50213,(0),null); var o_dom_idx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50213,(1),null); var vec__50216 = (cljs.core.truth_((vdom[(1)]))?replicant.core.index_of((function (p1__50210_SHARP_){ return replicant.core.same_QMARK_(p1__50210_SHARP_,vdom); }),new_children):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(-1),(-1)], null)); var n_idx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50216,(0),null); var n_dom_idx = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50216,(1),null); if((o_idx < n_idx)){ var idx = ((n + n_dom_idx) + (1)); var child = replicant.protocols.get_child(renderer,el,n); if((idx < n_children)){ replicant.protocols.insert_before(renderer,el,child,replicant.protocols.get_child(renderer,el,idx)); } else { replicant.protocols.append_child(renderer,el,child); } replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic(impl,child,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new_children,n_idx),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([vdom,replicant.core.move_node_details], 0)); return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new_children,cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.take.cljs$core$IFn$_invoke$arity$2(n_idx,cljs.core.next(old_children)),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(old_children)], null),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.drop.cljs$core$IFn$_invoke$arity$2((n_idx + (1)),old_children)], 0)),n,(idx - (1))], null); } else { var idx = (n + o_dom_idx); var child = replicant.protocols.get_child(renderer,el,idx); var corresponding_old_vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$2(old_children,o_idx); replicant.protocols.insert_before(renderer,el,child,replicant.protocols.get_child(renderer,el,n)); (replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5 ? replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5(impl,el,headers,corresponding_old_vdom,n) : replicant.core.reconcile_STAR_.call(null,impl,el,headers,corresponding_old_vdom,n)); if(replicant.core.unchanged_QMARK_(headers,corresponding_old_vdom)){ replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic(impl,child,headers,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([corresponding_old_vdom,replicant.core.move_node_details], 0)); } else { } return new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.next(new_children),cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.take.cljs$core$IFn$_invoke$arity$2(o_idx,old_children),cljs.core.drop.cljs$core$IFn$_invoke$arity$2((o_idx + (1)),old_children)),(n + (1)),((n + o_idx) + (1)),corresponding_old_vdom], null); } }); replicant.core.insert_node = (function replicant$core$insert_node(r,el,child,n,n_children){ if((n_children <= n)){ return replicant.protocols.append_child(r,el,child); } else { return replicant.protocols.insert_before(r,el,child,replicant.protocols.get_child(r,el,n)); } }); replicant.core.update_children = (function replicant$core$update_children(impl,el,new_children,new_ks,old_children,old_ks,n_children){ var r = new cljs.core.Keyword(null,"renderer","renderer",336841071).cljs$core$IFn$_invoke$arity$1(impl); var unmounts = cljs.core.deref(new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl)); var new_c = cljs.core.seq(new_children); var old_c = cljs.core.seq(old_children); var n = (0); var move_n = (0); var n_children__$1 = (function (){var or__5025__auto__ = n_children; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return (0); } })(); var changed_QMARK_ = false; var vdom = cljs.core.transient$(cljs.core.PersistentVector.EMPTY); while(true){ var new_headers = cljs.core.first(new_c); var old_vdom = cljs.core.first(old_c); var new_empty_QMARK_ = (new_c == null); var old_empty_QMARK_ = (old_c == null); var new_nil_QMARK_ = (new_headers == null); var old_nil_QMARK_ = (old_vdom == null); if(((new_empty_QMARK_) && (old_empty_QMARK_))){ return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [changed_QMARK_,cljs.core.persistent_BANG_(vdom),new_ks,n_children__$1], null); } else { if(new_empty_QMARK_){ var children = cljs.core.seq(old_c); var vdom__$1 = vdom; var n__$1 = n; var n_children__$2 = n_children__$1; while(true){ if((children == null)){ return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,cljs.core.persistent_BANG_(vdom__$1),new_ks,n_children__$2], null); } else { if((cljs.core.first(children) == null)){ var G__50525 = cljs.core.next(children); var G__50526 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom__$1,null); var G__50527 = n__$1; var G__50528 = n_children__$2; children = G__50525; vdom__$1 = G__50526; n__$1 = G__50527; n_children__$2 = G__50528; continue; } else { var temp__5821__auto__ = replicant.core.remove_child(impl,unmounts,el,n__$1,cljs.core.first(children)); if(cljs.core.truth_(temp__5821__auto__)){ var pending_vdom = temp__5821__auto__; var G__50530 = cljs.core.next(children); var G__50531 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom__$1,pending_vdom); var G__50532 = (n__$1 + (1)); var G__50533 = n_children__$2; children = G__50530; vdom__$1 = G__50531; n__$1 = G__50532; n_children__$2 = G__50533; continue; } else { var G__50535 = cljs.core.next(children); var G__50536 = vdom__$1; var G__50537 = n__$1; var G__50538 = (n_children__$2 - (1)); children = G__50535; vdom__$1 = G__50536; n__$1 = G__50537; n_children__$2 = G__50538; continue; } } } break; } } else { if(old_empty_QMARK_){ var vec__50242 = replicant.core.insert_children(impl,el,new_c,vdom); var vdom__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50242,(0),null); var n__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50242,(1),null); return new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,cljs.core.persistent_BANG_(vdom__$1),new_ks,(n_children__$1 + n__$1)], null); } else { if(((new_nil_QMARK_) && (old_nil_QMARK_))){ var G__50544 = cljs.core.next(new_c); var G__50545 = cljs.core.next(old_c); var G__50546 = n; var G__50547 = move_n; var G__50548 = n_children__$1; var G__50549 = changed_QMARK_; var G__50550 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,null); new_c = G__50544; old_c = G__50545; n = G__50546; move_n = G__50547; n_children__$1 = G__50548; changed_QMARK_ = G__50549; vdom = G__50550; continue; } else { if(cljs.core.truth_((function (){var and__5023__auto__ = old_vdom; if(cljs.core.truth_(and__5023__auto__)){ return (old_vdom[(9)]); } else { return and__5023__auto__; } })())){ var vec__50245 = (cljs.core.truth_((function (){var and__5023__auto__ = new_headers; if(cljs.core.truth_(and__5023__auto__)){ return cljs.core.not((function (){var G__50248 = (new_headers[(3)]); return (old_ks.cljs$core$IFn$_invoke$arity$1 ? old_ks.cljs$core$IFn$_invoke$arity$1(G__50248) : old_ks.call(null,G__50248)); })()); } else { return and__5023__auto__; } })())?(function (){var res = replicant.core.create_node(impl,new_headers); replicant.core.insert_node(r,el,cljs.core.first(res),n,n_children__$1); return res; })():null); var child = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50245,(0),null); var child_vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50245,(1),null); if(cljs.core.truth_((function (){var G__50253 = (old_vdom[(9)]); return (unmounts.cljs$core$IFn$_invoke$arity$1 ? unmounts.cljs$core$IFn$_invoke$arity$1(G__50253) : unmounts.call(null,G__50253)); })())){ if(new_nil_QMARK_){ var G__50558 = cljs.core.next(new_c); var G__50559 = cljs.core.next(old_c); var G__50560 = (n + (1)); var G__50561 = move_n; var G__50562 = n_children__$1; var G__50563 = changed_QMARK_; var G__50564 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,old_vdom); new_c = G__50558; old_c = G__50559; n = G__50560; move_n = G__50561; n_children__$1 = G__50562; changed_QMARK_ = G__50563; vdom = G__50564; continue; } else { if(cljs.core.truth_(child)){ var G__50565 = cljs.core.next(new_c); var G__50566 = cljs.core.next(old_c); var G__50567 = (n + (2)); var G__50568 = move_n; var G__50569 = (n_children__$1 + (1)); var G__50570 = true; var G__50571 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,child_vdom); new_c = G__50565; old_c = G__50566; n = G__50567; move_n = G__50568; n_children__$1 = G__50569; changed_QMARK_ = G__50570; vdom = G__50571; continue; } else { var G__50573 = new_c; var G__50574 = cljs.core.next(old_c); var G__50575 = (n + (1)); var G__50576 = move_n; var G__50577 = n_children__$1; var G__50578 = changed_QMARK_; var G__50579 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,old_vdom); new_c = G__50573; old_c = G__50574; n = G__50575; move_n = G__50576; n_children__$1 = G__50577; changed_QMARK_ = G__50578; vdom = G__50579; continue; } } } else { if(new_nil_QMARK_){ var G__50586 = cljs.core.next(new_c); var G__50587 = cljs.core.next(old_c); var G__50588 = n; var G__50589 = (move_n - (1)); var G__50590 = (n_children__$1 - (1)); var G__50591 = changed_QMARK_; var G__50592 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,null); new_c = G__50586; old_c = G__50587; n = G__50588; move_n = G__50589; n_children__$1 = G__50590; changed_QMARK_ = G__50591; vdom = G__50592; continue; } else { if(cljs.core.truth_(child)){ var G__50593 = cljs.core.next(new_c); var G__50594 = cljs.core.next(old_c); var G__50595 = (n + (1)); var G__50596 = move_n; var G__50597 = n_children__$1; var G__50598 = true; var G__50599 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,child_vdom); new_c = G__50593; old_c = G__50594; n = G__50595; move_n = G__50596; n_children__$1 = G__50597; changed_QMARK_ = G__50598; vdom = G__50599; continue; } else { var G__50602 = new_c; var G__50603 = cljs.core.next(old_c); var G__50604 = n; var G__50605 = (move_n - (1)); var G__50606 = (n_children__$1 - (1)); var G__50607 = changed_QMARK_; var G__50608 = vdom; new_c = G__50602; old_c = G__50603; n = G__50604; move_n = G__50605; n_children__$1 = G__50606; changed_QMARK_ = G__50607; vdom = G__50608; continue; } } } } else { if(new_nil_QMARK_){ if(cljs.core.contains_QMARK_(new_ks,(old_vdom[(1)]))){ var G__50610 = cljs.core.next(new_c); var G__50611 = old_c; var G__50612 = n; var G__50613 = move_n; var G__50614 = n_children__$1; var G__50615 = true; var G__50616 = vdom; new_c = G__50610; old_c = G__50611; n = G__50612; move_n = G__50613; n_children__$1 = G__50614; changed_QMARK_ = G__50615; vdom = G__50616; continue; } else { var temp__5821__auto__ = replicant.core.remove_child(impl,unmounts,el,n,old_vdom); if(cljs.core.truth_(temp__5821__auto__)){ var unmounting_node = temp__5821__auto__; var G__50621 = cljs.core.next(new_c); var G__50622 = cljs.core.next(old_c); var G__50623 = (n + (1)); var G__50624 = move_n; var G__50625 = n_children__$1; var G__50626 = true; var G__50627 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,unmounting_node); new_c = G__50621; old_c = G__50622; n = G__50623; move_n = G__50624; n_children__$1 = G__50625; changed_QMARK_ = G__50626; vdom = G__50627; continue; } else { var G__50628 = cljs.core.next(new_c); var G__50629 = cljs.core.next(old_c); var G__50630 = n; var G__50631 = move_n; var G__50632 = (n_children__$1 - (1)); var G__50633 = true; var G__50634 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,null); new_c = G__50628; old_c = G__50629; n = G__50630; move_n = G__50631; n_children__$1 = G__50632; changed_QMARK_ = G__50633; vdom = G__50634; continue; } } } else { if(cljs.core.truth_((function (){var and__5023__auto__ = old_vdom; if(cljs.core.truth_(and__5023__auto__)){ return replicant.core.reusable_QMARK_(new_headers,old_vdom); } else { return and__5023__auto__; } })())){ var new_vdom = (replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5 ? replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5(impl,el,new_headers,old_vdom,n) : replicant.core.reconcile_STAR_.call(null,impl,el,new_headers,old_vdom,n)); var node_unchanged_QMARK_ = replicant.core.unchanged_QMARK_(new_headers,old_vdom); if(((node_unchanged_QMARK_) && ((n < move_n)))){ replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic(impl,replicant.protocols.get_child(r,el,n),new_headers,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([old_vdom,replicant.core.move_node_details], 0)); } else { } var G__50638 = cljs.core.next(new_c); var G__50639 = cljs.core.next(old_c); var G__50640 = (n + (1)); var G__50641 = move_n; var G__50642 = n_children__$1; var G__50643 = (function (){var or__5025__auto__ = changed_QMARK_; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return (!(node_unchanged_QMARK_)); } })(); var G__50644 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,new_vdom); new_c = G__50638; old_c = G__50639; n = G__50640; move_n = G__50641; n_children__$1 = G__50642; changed_QMARK_ = G__50643; vdom = G__50644; continue; } else { if(cljs.core.not((function (){var G__50255 = (new_headers[(3)]); return (old_ks.cljs$core$IFn$_invoke$arity$1 ? old_ks.cljs$core$IFn$_invoke$arity$1(G__50255) : old_ks.call(null,G__50255)); })())){ var vec__50256 = replicant.core.create_node(impl,new_headers); var child = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50256,(0),null); var child_vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50256,(1),null); replicant.core.insert_node(r,el,child,n,n_children__$1); var G__50653 = cljs.core.next(new_c); var G__50654 = (function (){var G__50259 = old_c; if((old_vdom == null)){ return cljs.core.next(G__50259); } else { return G__50259; } })(); var G__50655 = (n + (1)); var G__50656 = move_n; var G__50657 = (n_children__$1 + (1)); var G__50658 = true; var G__50659 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,child_vdom); new_c = G__50653; old_c = G__50654; n = G__50655; move_n = G__50656; n_children__$1 = G__50657; changed_QMARK_ = G__50658; vdom = G__50659; continue; } else { if(((old_nil_QMARK_) || (cljs.core.not((function (){var G__50260 = (old_vdom[(1)]); return (new_ks.cljs$core$IFn$_invoke$arity$1 ? new_ks.cljs$core$IFn$_invoke$arity$1(G__50260) : new_ks.call(null,G__50260)); })())))){ var temp__5821__auto__ = replicant.core.remove_child(impl,unmounts,el,n,old_vdom); if(cljs.core.truth_(temp__5821__auto__)){ var unmounting_node = temp__5821__auto__; var G__50664 = new_c; var G__50665 = cljs.core.next(old_c); var G__50666 = (n + (1)); var G__50667 = move_n; var G__50668 = n_children__$1; var G__50669 = true; var G__50670 = cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vdom,unmounting_node); new_c = G__50664; old_c = G__50665; n = G__50666; move_n = G__50667; n_children__$1 = G__50668; changed_QMARK_ = G__50669; vdom = G__50670; continue; } else { var G__50673 = new_c; var G__50674 = cljs.core.next(old_c); var G__50675 = n; var G__50676 = move_n; var G__50677 = (n_children__$1 - (1)); var G__50678 = true; var G__50679 = vdom; new_c = G__50673; old_c = G__50674; n = G__50675; move_n = G__50676; n_children__$1 = G__50677; changed_QMARK_ = G__50678; vdom = G__50679; continue; } } else { var vec__50261 = replicant.core.move_nodes(impl,el,new_headers,new_c,old_vdom,old_c,n,n_children__$1); var nc = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50261,(0),null); var oc = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50261,(1),null); var n__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50261,(2),null); var move_n__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50261,(3),null); var vdom_node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50261,(4),null); var G__50683 = nc; var G__50684 = oc; var G__50685 = n__$1; var G__50686 = move_n__$1; var G__50687 = n_children__$1; var G__50688 = true; var G__50689 = (function (){var G__50264 = vdom; if(cljs.core.truth_(vdom_node)){ return cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(G__50264,vdom_node); } else { return G__50264; } })(); new_c = G__50683; old_c = G__50684; n = G__50685; move_n = G__50686; n_children__$1 = G__50687; changed_QMARK_ = G__50688; vdom = G__50689; continue; } } } } } } } } } break; } }); replicant.core.reconcile_STAR_ = (function replicant$core$reconcile_STAR_(p__50267,el,headers,vdom,index){ var map__50268 = p__50267; var map__50268__$1 = cljs.core.__destructure_map(map__50268); var impl = map__50268__$1; var renderer = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50268__$1,new cljs.core.Keyword(null,"renderer","renderer",336841071)); if(cljs.core.truth_(headers)){ var temp__5823__auto___50697 = (function (){var or__5025__auto__ = new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1((headers[(4)])); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1(cljs.core.meta((headers[(7)]))); } })(); if(cljs.core.truth_(temp__5823__auto___50697)){ var ctx__48265__auto___50698 = temp__5823__auto___50697; cljs.core.reset_BANG_(replicant.assert.current_context,ctx__48265__auto___50698); } else { } cljs.core.reset_BANG_(replicant.assert.current_node,(headers[(7)])); } else { } if((!((!(replicant.asserts.has_bad_conditional_attrs_QMARK_(vdom,headers)))))){ var fn__48271__auto___50701 = new cljs.core.Keyword(null,"fn-name","fn-name",-766594004).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var alias__48272__auto___50702 = new cljs.core.Keyword(null,"alias","alias",-2039751630).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); var fd__48273__auto___50703 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(replicant.assert.current_context)); cljs.core.reset_BANG_(replicant.assert.error,(function (){var G__50269 = new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hiccup","hiccup",1218876238),(function (){var or__5025__auto__ = null; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.deref(replicant.assert.current_node); } })(),new cljs.core.Keyword(null,"title","title",636505583),"Avoid conditionals around the attribute map",new cljs.core.Keyword(null,"message","message",-406056002),replicant.asserts.convey_bad_conditional_attributes(vdom,headers)], null); var G__50269__$1 = (cljs.core.truth_(fn__48271__auto___50701)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50269,new cljs.core.Keyword(null,"fname","fname",1500291491),fn__48271__auto___50701):G__50269); var G__50269__$2 = (cljs.core.truth_(alias__48272__auto___50702)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50269__$1,new cljs.core.Keyword(null,"alias","alias",-2039751630),alias__48272__auto___50702):G__50269__$1); if(cljs.core.truth_(fd__48273__auto___50703)){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__50269__$2,new cljs.core.Keyword(null,"data","data",-232669377),fd__48273__auto___50703); } else { return G__50269__$2; } })()); } else { } var or__5025__auto__ = ((replicant.core.unchanged_QMARK_(headers,vdom))?vdom:null); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { var or__5025__auto____$1 = (function (){var temp__5823__auto__ = replicant.core.get_alias_headers(impl,headers); if(cljs.core.truth_(temp__5823__auto__)){ var alias_headers = temp__5823__auto__; var vdom_child = cljs.core.first((vdom[(4)])); var updated_vdom = (cljs.core.truth_(replicant.core.reusable_QMARK_(alias_headers,vdom_child))?(replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5 ? replicant.core.reconcile_STAR_.cljs$core$IFn$_invoke$arity$5(impl,el,alias_headers,vdom_child,index) : replicant.core.reconcile_STAR_.call(null,impl,el,alias_headers,vdom_child,index)):(function (){var vec__50270 = replicant.core.create_node(impl,alias_headers); var node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50270,(0),null); var updated_vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50270,(1),null); replicant.protocols.replace_child(renderer,el,node,replicant.protocols.get_child(renderer,el,index)); return updated_vdom; })()); var headers__48415__auto__ = headers; return (new Array((headers__48415__auto__[(0)]),(headers__48415__auto__[(3)]),(headers__48415__auto__[(2)]),(headers[(4)]),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [updated_vdom], null),(function (){var temp__5823__auto____$1 = (updated_vdom[(1)]); if(cljs.core.truth_(temp__5823__auto____$1)){ var k = temp__5823__auto____$1; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [k], null); } else { return null; } })(),cljs.core.boolean$(new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009).cljs$core$IFn$_invoke$arity$1((headers__48415__auto__[(4)]))),(headers__48415__auto__[(7)]),null,null,(1))); } else { return null; } })(); if(cljs.core.truth_(or__5025__auto____$1)){ return or__5025__auto____$1; } else { var or__5025__auto____$2 = ((cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2((headers[(8)]),(vdom[(8)])))?(function (){var vec__50274 = replicant.core.create_node(impl,headers); var node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50274,(0),null); var vdom__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50274,(1),null); replicant.protocols.replace_child(renderer,el,node,replicant.protocols.get_child(renderer,el,index)); return vdom__$1; })():null); if(cljs.core.truth_(or__5025__auto____$2)){ return or__5025__auto____$2; } else { var child = replicant.protocols.get_child(renderer,el,index); var headers__$1 = (function (){var or__5025__auto____$3 = replicant.core.get_alias_headers(impl,headers); if(cljs.core.truth_(or__5025__auto____$3)){ return or__5025__auto____$3; } else { return headers; } })(); var attrs = replicant.core.get_attrs(headers__$1); var vdom_attrs = (vdom[(3)]); var attrs_changed_QMARK_ = replicant.core.reconcile_attributes(renderer,child,attrs,vdom_attrs); var vec__50277 = (cljs.core.truth_(new cljs.core.Keyword(null,"innerHTML","innerHTML",-1856751343).cljs$core$IFn$_invoke$arity$1((headers__$1[(4)])))?new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,true], null):replicant.core.get_children_ks(headers__$1,replicant.core.get_ns(headers__$1))); var new_children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50277,(0),null); var new_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50277,(1),null); var inner_html_QMARK_ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50277,(2),null); var vec__50280 = (cljs.core.truth_(new cljs.core.Keyword(null,"contenteditable","contenteditable",-770210530).cljs$core$IFn$_invoke$arity$1(vdom_attrs))?(function (){ replicant.protocols.remove_all_children(renderer,child); return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,(0)], null); })() :(cljs.core.truth_(inner_html_QMARK_)?new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,(0)], null):new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(vdom[(4)]),(vdom[(5)]),(vdom[(10)])], null) )); var old_children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50280,(0),null); var old_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50280,(1),null); var old_nc = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50280,(2),null); var vec__50283 = replicant.core.update_children(impl,child,new_children,new_ks,old_children,old_ks,old_nc); var children_changed_QMARK_ = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50283,(0),null); var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50283,(1),null); var child_ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50283,(2),null); var n_children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50283,(3),null); var attrs_changed_QMARK___$1 = ((attrs_changed_QMARK_) || (cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901).cljs$core$IFn$_invoke$arity$1((headers__$1[(4)])),new cljs.core.Keyword("replicant","on-render","replicant/on-render",1674377901).cljs$core$IFn$_invoke$arity$1(vdom_attrs)))); replicant.core.register_hooks.cljs$core$IFn$_invoke$arity$variadic(impl,child,headers__$1,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([vdom,(cljs.core.truth_((function (){var and__5023__auto__ = attrs_changed_QMARK___$1; if(and__5023__auto__){ return children_changed_QMARK_; } else { return and__5023__auto__; } })())?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword("replicant","updated-attrs","replicant/updated-attrs",295362895),new cljs.core.Keyword("replicant","updated-children","replicant/updated-children",2041302229)], null):((attrs_changed_QMARK___$1)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword("replicant","updated-attrs","replicant/updated-attrs",295362895)], null):new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword("replicant","updated-children","replicant/updated-children",2041302229)], null) ))], 0)); var headers__48415__auto__ = headers__$1; return (new Array((headers__48415__auto__[(0)]),(headers__48415__auto__[(3)]),(headers__48415__auto__[(2)]),attrs,children,child_ks,cljs.core.boolean$(new cljs.core.Keyword("replicant","unmounting","replicant/unmounting",1629433009).cljs$core$IFn$_invoke$arity$1((headers__48415__auto__[(4)]))),(headers__48415__auto__[(7)]),null,null,n_children)); } } } }); replicant.core.perform_post_mount_update = (function replicant$core$perform_post_mount_update(renderer,p__50290){ var vec__50291 = p__50290; var node = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50291,(0),null); var mounting_attrs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50291,(1),null); var attrs = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50291,(2),null); return replicant.core.update_attributes(renderer,node,attrs,mounting_attrs); }); /** * Reconcile the DOM in `el` by diffing `hiccup` with `vdom`. If there is no * `vdom`, `reconcile` will create the DOM as per `hiccup`. Assumes that the DOM * in `el` is in sync with `vdom` - if not, this will certainly not produce the * desired result. */ replicant.core.reconcile = (function replicant$core$reconcile(var_args){ var args__5755__auto__ = []; var len__5749__auto___50749 = arguments.length; var i__5750__auto___50750 = (0); while(true){ if((i__5750__auto___50750 < len__5749__auto___50749)){ args__5755__auto__.push((arguments[i__5750__auto___50750])); var G__50755 = (i__5750__auto___50750 + (1)); i__5750__auto___50750 = G__50755; continue; } else { } break; } var argseq__5756__auto__ = ((((3) < args__5755__auto__.length))?(new cljs.core.IndexedSeq(args__5755__auto__.slice((3)),(0),null)):null); return replicant.core.reconcile.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__5756__auto__); }); (replicant.core.reconcile.cljs$core$IFn$_invoke$arity$variadic = (function (renderer,el,hiccup,p__50306){ var vec__50307 = p__50306; var vdom = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50307,(0),null); var map__50310 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50307,(1),null); var map__50310__$1 = cljs.core.__destructure_map(map__50310); var unmounts = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50310__$1,new cljs.core.Keyword(null,"unmounts","unmounts",173366521)); var aliases = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50310__$1,new cljs.core.Keyword(null,"aliases","aliases",1346874714)); var alias_data = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50310__$1,new cljs.core.Keyword(null,"alias-data","alias-data",1743863930)); var on_alias_exception = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50310__$1,new cljs.core.Keyword(null,"on-alias-exception","on-alias-exception",1142240043)); var impl = new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,"renderer","renderer",336841071),renderer,new cljs.core.Keyword(null,"hooks","hooks",-413590103),cljs.core.volatile_BANG_(cljs.core.PersistentVector.EMPTY),new cljs.core.Keyword(null,"mounts","mounts",-791474425),cljs.core.volatile_BANG_(cljs.core.PersistentVector.EMPTY),new cljs.core.Keyword(null,"unmounts","unmounts",173366521),(function (){var or__5025__auto__ = unmounts; if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return cljs.core.volatile_BANG_(cljs.core.PersistentHashSet.EMPTY); } })(),new cljs.core.Keyword(null,"aliases","aliases",1346874714),aliases,new cljs.core.Keyword(null,"alias-data","alias-data",1743863930),alias_data,new cljs.core.Keyword(null,"on-alias-exception","on-alias-exception",1142240043),on_alias_exception], null); var vdom__$1 = ((cljs.core.list_QMARK_(hiccup))?(function (){var vec__50311 = replicant.core.get_children_ks((function (){var pt__47884__auto__ = [null,null,null]; var G__50314 = pt__47884__auto__; G__50314.push((function (){var temp__5823__auto__ = new cljs.core.Keyword("replicant","key","replicant/key",-670108117).cljs$core$IFn$_invoke$arity$1(null); if(cljs.core.truth_(temp__5823__auto__)){ var k__47863__auto__ = temp__5823__auto__; return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(pt__47884__auto__[(0)]),k__47863__auto__], null); } else { return null; } })()); G__50314.push(null); G__50314.push(hiccup); G__50314.push(null); G__50314.push(null); G__50314.push(null); G__50314.push(null); return G__50314; })(),null); var children = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50311,(0),null); var ks = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50311,(1),null); return cljs.core.second(replicant.core.update_children(impl,el,children,ks,vdom,cljs.core.set(cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (p1__50297_SHARP_){ return (p1__50297_SHARP_[(1)]); }),vdom)),cljs.core.count(vdom))); })():(function (){var headers = replicant.core.get_hiccup_headers(null,hiccup); if(cljs.core.truth_(headers)){ var temp__5823__auto___50776 = (function (){var or__5025__auto__ = new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1((headers[(4)])); if(cljs.core.truth_(or__5025__auto__)){ return or__5025__auto__; } else { return new cljs.core.Keyword("replicant","context","replicant/context",-909059467).cljs$core$IFn$_invoke$arity$1(cljs.core.meta((headers[(7)]))); } })(); if(cljs.core.truth_(temp__5823__auto___50776)){ var ctx__48265__auto___50777 = temp__5823__auto___50776; cljs.core.reset_BANG_(replicant.assert.current_context,ctx__48265__auto___50777); } else { } cljs.core.reset_BANG_(replicant.assert.current_node,(headers[(7)])); } else { } if(cljs.core.truth_((function (){var and__5023__auto__ = headers; if(cljs.core.truth_(and__5023__auto__)){ var and__5023__auto____$1 = vdom; if(cljs.core.truth_(and__5023__auto____$1)){ return ((replicant.core.unchanged_QMARK_(headers,cljs.core.first(vdom))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(vdom)))); } else { return and__5023__auto____$1; } } else { return and__5023__auto__; } })())){ return vdom; } else { var k = (cljs.core.truth_(headers)?(headers[(3)]):null); return cljs.core.second(replicant.core.update_children(impl,el,(cljs.core.truth_(headers)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [headers], null):null),(function (){var G__50315 = cljs.core.PersistentHashSet.EMPTY; if(cljs.core.truth_(k)){ return cljs.core.conj.cljs$core$IFn$_invoke$arity$2(G__50315,k); } else { return G__50315; } })(),vdom,cljs.core.set(cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (p1__50298_SHARP_){ return (p1__50298_SHARP_[(1)]); }),vdom)),(cljs.core.truth_(cljs.core.first(vdom))?(1):(0)))); } })()); var hooks = cljs.core.deref(new cljs.core.Keyword(null,"hooks","hooks",-413590103).cljs$core$IFn$_invoke$arity$1(impl)); var temp__5821__auto___50792 = cljs.core.seq(cljs.core.deref(new cljs.core.Keyword(null,"mounts","mounts",-791474425).cljs$core$IFn$_invoke$arity$1(impl))); if(temp__5821__auto___50792){ var mounts_50795 = temp__5821__auto___50792; replicant.protocols.next_frame(renderer,(function (){ cljs.core.run_BANG_((function (p1__50299_SHARP_){ return replicant.core.perform_post_mount_update(renderer,p1__50299_SHARP_); }),mounts_50795); return cljs.core.run_BANG_((function (p1__50300_SHARP_){ return replicant.core.call_hook(renderer,p1__50300_SHARP_); }),hooks); })); } else { cljs.core.run_BANG_((function (p1__50301_SHARP_){ return replicant.core.call_hook(renderer,p1__50301_SHARP_); }),hooks); } return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"hooks","hooks",-413590103),hooks,new cljs.core.Keyword(null,"vdom","vdom",953162958),vdom__$1,new cljs.core.Keyword(null,"unmounts","unmounts",173366521),new cljs.core.Keyword(null,"unmounts","unmounts",173366521).cljs$core$IFn$_invoke$arity$1(impl)], null); })); (replicant.core.reconcile.cljs$lang$maxFixedArity = (3)); /** @this {Function} */ (replicant.core.reconcile.cljs$lang$applyTo = (function (seq50302){ var G__50303 = cljs.core.first(seq50302); var seq50302__$1 = cljs.core.next(seq50302); var G__50304 = cljs.core.first(seq50302__$1); var seq50302__$2 = cljs.core.next(seq50302__$1); var G__50305 = cljs.core.first(seq50302__$2); var seq50302__$3 = cljs.core.next(seq50302__$2); var self__5734__auto__ = this; return self__5734__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50303,G__50304,G__50305,seq50302__$3); })); replicant.assert.add_reporter(new cljs.core.Keyword("replicant.assert","default","replicant.assert/default",-504441266),replicant.console_logger.report); //# sourceMappingURL=replicant.core.js.map