create-expo-cljs-app
Version:
Create a react native application with Expo and Shadow-CLJS!
1 lines • 87 kB
JSON
["^ ","~:output",["^ ","~:js","goog.provide('reagent.impl.template');\n/**\n * Regular expression that parses a CSS-style id and class\n * from a tag name.\n */\nreagent.impl.template.re_tag = /([^\\s\\.#]+)(?:#([^\\s\\.#]+))?(?:\\.([^\\s#]+))?/;\n\n/**\n* @constructor\n*/\nreagent.impl.template.NativeWrapper = (function (tag,id,className){\nthis.tag = tag;\nthis.id = id;\nthis.className = className;\n});\n\n(reagent.impl.template.NativeWrapper.getBasis = (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\"tag\",\"tag\",350170304,null),new cljs.core.Symbol(null,\"id\",\"id\",252129435,null),new cljs.core.Symbol(null,\"className\",\"className\",-342755530,null)], null);\n}));\n\n(reagent.impl.template.NativeWrapper.cljs$lang$type = true);\n\n(reagent.impl.template.NativeWrapper.cljs$lang$ctorStr = \"reagent.impl.template/NativeWrapper\");\n\n(reagent.impl.template.NativeWrapper.cljs$lang$ctorPrWriter = (function (this__4369__auto__,writer__4370__auto__,opt__4371__auto__){\nreturn cljs.core._write(writer__4370__auto__,\"reagent.impl.template/NativeWrapper\");\n}));\n\n/**\n * Positional factory function for reagent.impl.template/NativeWrapper.\n */\nreagent.impl.template.__GT_NativeWrapper = (function reagent$impl$template$__GT_NativeWrapper(tag,id,className){\nreturn (new reagent.impl.template.NativeWrapper(tag,id,className));\n});\n\nreagent.impl.template.adapt_react_class = (function reagent$impl$template$adapt_react_class(c){\nreturn reagent.impl.template.__GT_NativeWrapper(c,null,null);\n});\nreagent.impl.template.hiccup_tag_QMARK_ = (function reagent$impl$template$hiccup_tag_QMARK_(x){\nreturn ((reagent.impl.util.named_QMARK_(x)) || (typeof x === 'string'));\n});\nreagent.impl.template.valid_tag_QMARK_ = (function reagent$impl$template$valid_tag_QMARK_(x){\nreturn ((reagent.impl.template.hiccup_tag_QMARK_(x)) || (cljs.core.ifn_QMARK_(x)) || ((x instanceof reagent.impl.template.NativeWrapper)));\n});\nreagent.impl.template.prop_name_cache = ({\"class\": \"className\", \"for\": \"htmlFor\", \"charset\": \"charSet\"});\nreagent.impl.template.cache_get = (function reagent$impl$template$cache_get(o,k){\nif(o.hasOwnProperty(k)){\nreturn goog.object.get(o,k);\n} else {\nreturn null;\n}\n});\nreagent.impl.template.cached_prop_name = (function reagent$impl$template$cached_prop_name(k){\nif(reagent.impl.util.named_QMARK_(k)){\nvar temp__5737__auto__ = reagent.impl.template.cache_get(reagent.impl.template.prop_name_cache,cljs.core.name(k));\nif((temp__5737__auto__ == null)){\nvar v = reagent.impl.util.dash_to_prop_name(k);\ngoog.object.set(reagent.impl.template.prop_name_cache,cljs.core.name(k),v);\n\nreturn v;\n} else {\nvar k_SINGLEQUOTE_ = temp__5737__auto__;\nreturn k_SINGLEQUOTE_;\n}\n} else {\nreturn k;\n}\n});\nreagent.impl.template.kv_conv = (function reagent$impl$template$kv_conv(o,k,v){\nvar G__45992 = o;\ngoog.object.set(G__45992,reagent.impl.template.cached_prop_name(k),(reagent.impl.template.convert_prop_value.cljs$core$IFn$_invoke$arity$1 ? reagent.impl.template.convert_prop_value.cljs$core$IFn$_invoke$arity$1(v) : reagent.impl.template.convert_prop_value.call(null,v)));\n\nreturn G__45992;\n});\nreagent.impl.template.convert_prop_value = (function reagent$impl$template$convert_prop_value(x){\nif(reagent.impl.util.js_val_QMARK_(x)){\nreturn x;\n} else {\nif(reagent.impl.util.named_QMARK_(x)){\nreturn cljs.core.name(x);\n} else {\nif(cljs.core.map_QMARK_(x)){\nreturn cljs.core.reduce_kv(reagent.impl.template.kv_conv,({}),x);\n} else {\nif(cljs.core.coll_QMARK_(x)){\nreturn cljs.core.clj__GT_js(x);\n} else {\nif(cljs.core.ifn_QMARK_(x)){\nreturn (function() { \nvar G__46182__delegate = function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(x,args);\n};\nvar G__46182 = function (var_args){\nvar args = null;\nif (arguments.length > 0) {\nvar G__46184__i = 0, G__46184__a = new Array(arguments.length - 0);\nwhile (G__46184__i < G__46184__a.length) {G__46184__a[G__46184__i] = arguments[G__46184__i + 0]; ++G__46184__i;}\n args = new cljs.core.IndexedSeq(G__46184__a,0,null);\n} \nreturn G__46182__delegate.call(this,args);};\nG__46182.cljs$lang$maxFixedArity = 0;\nG__46182.cljs$lang$applyTo = (function (arglist__46185){\nvar args = cljs.core.seq(arglist__46185);\nreturn G__46182__delegate(args);\n});\nG__46182.cljs$core$IFn$_invoke$arity$variadic = G__46182__delegate;\nreturn G__46182;\n})()\n;\n} else {\nreturn cljs.core.clj__GT_js(x);\n\n}\n}\n}\n}\n}\n});\nreagent.impl.template.custom_prop_name_cache = ({});\nreagent.impl.template.cached_custom_prop_name = (function reagent$impl$template$cached_custom_prop_name(k){\nif(reagent.impl.util.named_QMARK_(k)){\nvar temp__5737__auto__ = reagent.impl.template.cache_get(reagent.impl.template.custom_prop_name_cache,cljs.core.name(k));\nif((temp__5737__auto__ == null)){\nvar v = reagent.impl.util.dash_to_prop_name(k);\ngoog.object.set(reagent.impl.template.custom_prop_name_cache,cljs.core.name(k),v);\n\nreturn v;\n} else {\nvar k_SINGLEQUOTE_ = temp__5737__auto__;\nreturn k_SINGLEQUOTE_;\n}\n} else {\nreturn k;\n}\n});\nreagent.impl.template.custom_kv_conv = (function reagent$impl$template$custom_kv_conv(o,k,v){\nvar G__46008 = o;\ngoog.object.set(G__46008,reagent.impl.template.cached_custom_prop_name(k),reagent.impl.template.convert_prop_value(v));\n\nreturn G__46008;\n});\nreagent.impl.template.convert_custom_prop_value = (function reagent$impl$template$convert_custom_prop_value(x){\nif(reagent.impl.util.js_val_QMARK_(x)){\nreturn x;\n} else {\nif(reagent.impl.util.named_QMARK_(x)){\nreturn cljs.core.name(x);\n} else {\nif(cljs.core.map_QMARK_(x)){\nreturn cljs.core.reduce_kv(reagent.impl.template.custom_kv_conv,({}),x);\n} else {\nif(cljs.core.coll_QMARK_(x)){\nreturn cljs.core.clj__GT_js(x);\n} else {\nif(cljs.core.ifn_QMARK_(x)){\nreturn (function() { \nvar G__46191__delegate = function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(x,args);\n};\nvar G__46191 = function (var_args){\nvar args = null;\nif (arguments.length > 0) {\nvar G__46192__i = 0, G__46192__a = new Array(arguments.length - 0);\nwhile (G__46192__i < G__46192__a.length) {G__46192__a[G__46192__i] = arguments[G__46192__i + 0]; ++G__46192__i;}\n args = new cljs.core.IndexedSeq(G__46192__a,0,null);\n} \nreturn G__46191__delegate.call(this,args);};\nG__46191.cljs$lang$maxFixedArity = 0;\nG__46191.cljs$lang$applyTo = (function (arglist__46193){\nvar args = cljs.core.seq(arglist__46193);\nreturn G__46191__delegate(args);\n});\nG__46191.cljs$core$IFn$_invoke$arity$variadic = G__46191__delegate;\nreturn G__46191;\n})()\n;\n} else {\nreturn cljs.core.clj__GT_js(x);\n\n}\n}\n}\n}\n}\n});\n/**\n * Takes the id and class from tag keyword, and adds them to the\n * other props. Parsed tag is JS object with :id and :class properties.\n */\nreagent.impl.template.set_id_class = (function reagent$impl$template$set_id_class(props,id_class){\nvar id = id_class.id;\nvar class$ = id_class.className;\nvar G__46016 = props;\nvar G__46016__$1 = (((((!((id == null)))) && ((new cljs.core.Keyword(null,\"id\",\"id\",-1388402092).cljs$core$IFn$_invoke$arity$1(props) == null))))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__46016,new cljs.core.Keyword(null,\"id\",\"id\",-1388402092),id):G__46016);\nif(cljs.core.truth_(class$)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__46016__$1,new cljs.core.Keyword(null,\"class\",\"class\",-2030961996),reagent.impl.util.class_names.cljs$core$IFn$_invoke$arity$2(class$,(function (){var or__4126__auto__ = new cljs.core.Keyword(null,\"class\",\"class\",-2030961996).cljs$core$IFn$_invoke$arity$1(props);\nif(cljs.core.truth_(or__4126__auto__)){\nreturn or__4126__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\"className\",\"className\",-1983287057).cljs$core$IFn$_invoke$arity$1(props);\n}\n})()));\n} else {\nreturn G__46016__$1;\n}\n});\nreagent.impl.template.convert_props = (function reagent$impl$template$convert_props(props,id_class){\nvar class$ = new cljs.core.Keyword(null,\"class\",\"class\",-2030961996).cljs$core$IFn$_invoke$arity$1(props);\nvar props__$1 = reagent.impl.template.set_id_class((function (){var G__46021 = props;\nif(cljs.core.truth_(class$)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__46021,new cljs.core.Keyword(null,\"class\",\"class\",-2030961996),reagent.impl.util.class_names.cljs$core$IFn$_invoke$arity$1(class$));\n} else {\nreturn G__46021;\n}\n})(),id_class);\nif(cljs.core.truth_(id_class.custom)){\nreturn reagent.impl.template.convert_custom_prop_value(props__$1);\n} else {\nreturn reagent.impl.template.convert_prop_value(props__$1);\n}\n});\nreagent.impl.template.make_element = (function reagent$impl$template$make_element(this$,argv,component,jsprops,first_child){\nvar G__46027 = (cljs.core.count(argv) - first_child);\nswitch (G__46027) {\ncase (0):\nreturn shadow.js.shim.module$react.createElement(component,jsprops);\n\nbreak;\ncase (1):\nreturn shadow.js.shim.module$react.createElement(component,jsprops,reagent.impl.protocols.as_element(this$,cljs.core.nth.cljs$core$IFn$_invoke$arity$3(argv,first_child,null)));\n\nbreak;\ndefault:\nreturn shadow.js.shim.module$react.createElement.apply(null,cljs.core.reduce_kv((function (a,k,v){\nif((k >= first_child)){\na.push(reagent.impl.protocols.as_element(this$,v));\n} else {\n}\n\nreturn a;\n}),[component,jsprops],argv));\n\n}\n});\n\n/**\n* @constructor\n*/\nreagent.impl.template.HiccupTag = (function (tag,id,className,custom){\nthis.tag = tag;\nthis.id = id;\nthis.className = className;\nthis.custom = custom;\n});\n\n(reagent.impl.template.HiccupTag.getBasis = (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\"tag\",\"tag\",350170304,null),new cljs.core.Symbol(null,\"id\",\"id\",252129435,null),new cljs.core.Symbol(null,\"className\",\"className\",-342755530,null),new cljs.core.Symbol(null,\"custom\",\"custom\",1980683475,null)], null);\n}));\n\n(reagent.impl.template.HiccupTag.cljs$lang$type = true);\n\n(reagent.impl.template.HiccupTag.cljs$lang$ctorStr = \"reagent.impl.template/HiccupTag\");\n\n(reagent.impl.template.HiccupTag.cljs$lang$ctorPrWriter = (function (this__4369__auto__,writer__4370__auto__,opt__4371__auto__){\nreturn cljs.core._write(writer__4370__auto__,\"reagent.impl.template/HiccupTag\");\n}));\n\n/**\n * Positional factory function for reagent.impl.template/HiccupTag.\n */\nreagent.impl.template.__GT_HiccupTag = (function reagent$impl$template$__GT_HiccupTag(tag,id,className,custom){\nreturn (new reagent.impl.template.HiccupTag(tag,id,className,custom));\n});\n\nreagent.impl.template.parse_tag = (function reagent$impl$template$parse_tag(hiccup_tag){\nvar vec__46042 = cljs.core.next(cljs.core.re_matches(reagent.impl.template.re_tag,cljs.core.name(hiccup_tag)));\nvar tag = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46042,(0),null);\nvar id = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46042,(1),null);\nvar className = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46042,(2),null);\nvar className__$1 = (((className == null))?null:clojure.string.replace(className,/\\./,\" \"));\nif(cljs.core.truth_(tag)){\n} else {\nthrow (new Error([\"Assert failed: \",[\"Invalid tag: '\",cljs.core.str.cljs$core$IFn$_invoke$arity$1(hiccup_tag),\"'\",reagent.impl.component.comp_name()].join(''),\"\\n\",\"tag\"].join('')));\n}\n\nreturn reagent.impl.template.__GT_HiccupTag(tag,id,className__$1,cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2((-1),tag.indexOf(\"-\")));\n});\nreagent.impl.template.reag_element = (function reagent$impl$template$reag_element(tag,v,compiler){\nvar c = reagent.impl.component.as_class(tag,compiler);\nvar jsprops = ({});\n(jsprops.argv = v);\n\nvar temp__5739__auto___46223 = reagent.impl.util.react_key_from_vec(v);\nif((temp__5739__auto___46223 == null)){\n} else {\nvar key_46224 = temp__5739__auto___46223;\n(jsprops.key = key_46224);\n}\n\nreturn shadow.js.shim.module$react.createElement(c,jsprops);\n});\nreagent.impl.template.function_element = (function reagent$impl$template$function_element(tag,v,first_arg,compiler){\nvar jsprops = ({});\n(jsprops.reagentRender = tag);\n\n(jsprops.argv = cljs.core.subvec.cljs$core$IFn$_invoke$arity$2(v,first_arg));\n\nvar temp__5739__auto___46227 = reagent.impl.util.react_key_from_vec(v);\nif((temp__5739__auto___46227 == null)){\n} else {\nvar key_46230 = temp__5739__auto___46227;\n(jsprops.key = key_46230);\n}\n\nreturn shadow.js.shim.module$react.createElement(reagent.impl.component.functional_render_fn(compiler,tag),jsprops);\n});\n/**\n * If given tag is a Class, use it as a class,\n * else wrap in Reagent function wrapper.\n */\nreagent.impl.template.maybe_function_element = (function reagent$impl$template$maybe_function_element(tag,v,compiler){\nif(reagent.impl.component.react_class_QMARK_(tag)){\nreturn reagent.impl.template.reag_element(tag,v,compiler);\n} else {\nreturn reagent.impl.template.function_element(tag,v,(1),compiler);\n}\n});\nreagent.impl.template.fragment_element = (function reagent$impl$template$fragment_element(argv,compiler){\nvar props = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(argv,(1),null);\nvar hasprops = (((props == null)) || (cljs.core.map_QMARK_(props)));\nvar jsprops = (function (){var or__4126__auto__ = reagent.impl.template.convert_prop_value(((hasprops)?props:null));\nif(cljs.core.truth_(or__4126__auto__)){\nreturn or__4126__auto__;\n} else {\nreturn ({});\n}\n})();\nvar first_child = ((1) + ((hasprops)?(1):(0)));\nvar temp__5739__auto___46231 = reagent.impl.util.react_key_from_vec(argv);\nif((temp__5739__auto___46231 == null)){\n} else {\nvar key_46234 = temp__5739__auto___46231;\n(jsprops.key = key_46234);\n}\n\nreturn reagent.impl.protocols.make_element(compiler,argv,shadow.js.shim.module$react.Fragment,jsprops,first_child);\n});\nreagent.impl.template.tag_name_cache = ({});\nreagent.impl.template.cached_parse = (function reagent$impl$template$cached_parse(x){\nvar temp__5737__auto__ = reagent.impl.template.cache_get(reagent.impl.template.tag_name_cache,x);\nif((temp__5737__auto__ == null)){\nvar v = reagent.impl.template.parse_tag(x);\ngoog.object.set(reagent.impl.template.tag_name_cache,x,v);\n\nreturn v;\n} else {\nvar s = temp__5737__auto__;\nreturn s;\n}\n});\nreagent.impl.template.native_element = (function reagent$impl$template$native_element(parsed,argv,first,compiler){\nvar component = parsed.tag;\nvar props = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(argv,first,null);\nvar hasprops = (((props == null)) || (cljs.core.map_QMARK_(props)));\nvar jsprops = (function (){var or__4126__auto__ = reagent.impl.template.convert_props(((hasprops)?props:null),parsed);\nif(cljs.core.truth_(or__4126__auto__)){\nreturn or__4126__auto__;\n} else {\nreturn ({});\n}\n})();\nvar first_child = (first + ((hasprops)?(1):(0)));\nif(reagent.impl.input.input_component_QMARK_(component)){\nvar input_class = (function (){var or__4126__auto__ = compiler.reagentInput;\nif(cljs.core.truth_(or__4126__auto__)){\nreturn or__4126__auto__;\n} else {\nvar x = reagent.impl.component.create_class(reagent.impl.input.input_spec,compiler);\n(compiler.reagentInput = x);\n\nreturn x;\n}\n})();\nreturn reagent.impl.protocols.as_element(compiler,cljs.core.with_meta(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [input_class,argv,component,jsprops,first_child,compiler], null),cljs.core.meta(argv)));\n} else {\nvar temp__5739__auto___46244 = reagent.impl.util.get_react_key(cljs.core.meta(argv));\nif((temp__5739__auto___46244 == null)){\n} else {\nvar key_46246 = temp__5739__auto___46244;\n(jsprops.key = key_46246);\n}\n\nreturn reagent.impl.protocols.make_element(compiler,argv,component,jsprops,first_child);\n}\n});\nreagent.impl.template.raw_element = (function reagent$impl$template$raw_element(comp,argv,compiler){\nvar props = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(argv,(2),null);\nvar jsprops = (function (){var or__4126__auto__ = props;\nif(cljs.core.truth_(or__4126__auto__)){\nreturn or__4126__auto__;\n} else {\nreturn ({});\n}\n})();\nvar temp__5739__auto___46252 = reagent.impl.util.get_react_key(cljs.core.meta(argv));\nif((temp__5739__auto___46252 == null)){\n} else {\nvar key_46253 = temp__5739__auto___46252;\n(jsprops.key = key_46253);\n}\n\nreturn reagent.impl.protocols.make_element(compiler,argv,comp,jsprops,(3));\n});\nreagent.impl.template.expand_seq = (function reagent$impl$template$expand_seq(s,compiler){\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__46097_SHARP_){\nreturn reagent.impl.protocols.as_element(compiler,p1__46097_SHARP_);\n}),s));\n});\nreagent.impl.template.expand_seq_dev = (function reagent$impl$template$expand_seq_dev(s,o,compiler){\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (val){\nif(((cljs.core.vector_QMARK_(val)) && ((reagent.impl.util.react_key_from_vec(val) == null)))){\n(o.no_key = true);\n} else {\n}\n\nreturn reagent.impl.protocols.as_element(compiler,val);\n}),s));\n});\nreagent.impl.template.expand_seq_check = (function reagent$impl$template$expand_seq_check(x,compiler){\nvar ctx = ({});\nvar vec__46105 = reagent.ratom.check_derefs((function (){\nreturn reagent.impl.template.expand_seq_dev(x,ctx,compiler);\n}));\nvar res = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46105,(0),null);\nvar derefed = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46105,(1),null);\nif(cljs.core.truth_(derefed)){\nif(reagent.debug.has_console){\n((reagent.debug.tracking)?reagent.debug.track_console:console).warn([\"Warning: \",reagent.impl.util.hiccup_err.cljs$core$IFn$_invoke$arity$variadic(x,reagent.impl.component.comp_name(),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Reactive deref not supported in lazy seq, \",\"it should be wrapped in doall\"], 0))].join(''));\n} else {\n}\n} else {\n}\n\nif(cljs.core.truth_(ctx.no_key)){\nif(reagent.debug.has_console){\n((reagent.debug.tracking)?reagent.debug.track_console:console).warn([\"Warning: \",reagent.impl.util.hiccup_err.cljs$core$IFn$_invoke$arity$variadic(x,reagent.impl.component.comp_name(),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Every element in a seq should have a unique :key\"], 0))].join(''));\n} else {\n}\n} else {\n}\n\nreturn res;\n});\nreagent.impl.template.hiccup_element = (function reagent$impl$template$hiccup_element(v,compiler){\nwhile(true){\nvar tag = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(v,(0),null);\nvar n = cljs.core.name(tag);\nvar pos = n.indexOf(\">\");\nvar G__46113 = pos;\nswitch (G__46113) {\ncase (-1):\nreturn reagent.impl.template.native_element(reagent.impl.template.cached_parse(n),v,(1),compiler);\n\nbreak;\ncase (0):\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\">\",n)){\nreturn null;\n} else {\nthrow (new Error([\"Assert failed: \",reagent.impl.util.hiccup_err.cljs$core$IFn$_invoke$arity$variadic(v,reagent.impl.component.comp_name(),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Invalid Hiccup tag\"], 0)),\"\\n\",\"(= \\\">\\\" n)\"].join('')));\n}\n\nbreak;\ndefault:\nvar G__46260 = cljs.core.with_meta(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$3(n,(0),pos),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.with_meta(v,null),(0),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(n,(pos + (1))))], null),cljs.core.meta(v));\nvar G__46261 = compiler;\nv = G__46260;\ncompiler = G__46261;\ncontinue;\n\n}\nbreak;\n}\n});\nreagent.impl.template.vec_to_elem = (function reagent$impl$template$vec_to_elem(v,compiler,fn_to_element){\nif((compiler == null)){\nconsole.error(\"vec-to-elem\",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v], 0)));\n} else {\n}\n\nif((cljs.core.count(v) > (0))){\n} else {\nthrow (new Error([\"Assert failed: \",reagent.impl.util.hiccup_err.cljs$core$IFn$_invoke$arity$variadic(v,reagent.impl.component.comp_name(),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Hiccup form should not be empty\"], 0)),\"\\n\",\"(pos? (count v))\"].join('')));\n}\n\nvar tag = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(v,(0),null);\nif(reagent.impl.template.valid_tag_QMARK_(tag)){\n} else {\nthrow (new Error([\"Assert failed: \",reagent.impl.util.hiccup_err.cljs$core$IFn$_invoke$arity$variadic(v,reagent.impl.component.comp_name(),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\"Invalid Hiccup form\"], 0)),\"\\n\",\"(valid-tag? tag)\"].join('')));\n}\n\nvar G__46126 = tag;\nvar G__46126__$1 = (((G__46126 instanceof cljs.core.Keyword))?G__46126.fqn:null);\nswitch (G__46126__$1) {\ncase \">\":\nreturn reagent.impl.template.native_element(reagent.impl.template.__GT_HiccupTag(cljs.core.nth.cljs$core$IFn$_invoke$arity$3(v,(1),null),null,null,null),v,(2),compiler);\n\nbreak;\ncase \"r>\":\nreturn reagent.impl.template.raw_element(cljs.core.nth.cljs$core$IFn$_invoke$arity$3(v,(1),null),v,compiler);\n\nbreak;\ncase \"f>\":\nreturn reagent.impl.template.function_element(cljs.core.nth.cljs$core$IFn$_invoke$arity$3(v,(1),null),v,(2),compiler);\n\nbreak;\ncase \"<>\":\nreturn reagent.impl.template.fragment_element(v,compiler);\n\nbreak;\ndefault:\nif(reagent.impl.template.hiccup_tag_QMARK_(tag)){\nreturn reagent.impl.template.hiccup_element(v,compiler);\n} else {\nif((tag instanceof reagent.impl.template.NativeWrapper)){\nreturn reagent.impl.template.native_element(tag,v,(1),compiler);\n} else {\nreturn (fn_to_element.cljs$core$IFn$_invoke$arity$3 ? fn_to_element.cljs$core$IFn$_invoke$arity$3(tag,v,compiler) : fn_to_element.call(null,tag,v,compiler));\n\n}\n}\n\n}\n});\nreagent.impl.template.as_element = (function reagent$impl$template$as_element(this$,x,fn_to_element){\nif(reagent.impl.util.js_val_QMARK_(x)){\nreturn x;\n} else {\nif(cljs.core.vector_QMARK_(x)){\nreturn reagent.impl.template.vec_to_elem(x,this$,fn_to_element);\n} else {\nif(cljs.core.seq_QMARK_(x)){\nreturn reagent.impl.template.expand_seq_check(x,this$);\n\n} else {\nif(reagent.impl.util.named_QMARK_(x)){\nreturn cljs.core.name(x);\n} else {\nif((((!((x == null))))?(((((x.cljs$lang$protocol_mask$partition0$ & (2147483648))) || ((cljs.core.PROTOCOL_SENTINEL === x.cljs$core$IPrintWithWriter$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,x))){\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0));\n} else {\nreturn x;\n\n}\n}\n}\n}\n}\n});\nreagent.impl.template.create_compiler = (function reagent$impl$template$create_compiler(opts){\nvar id = cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nvar fn_to_element = (cljs.core.truth_(new cljs.core.Keyword(null,\"function-components\",\"function-components\",1492814963).cljs$core$IFn$_invoke$arity$1(opts))?reagent.impl.template.maybe_function_element:reagent.impl.template.reag_element);\nif((typeof reagent !== 'undefined') && (typeof reagent.impl !== 'undefined') && (typeof reagent.impl.template !== 'undefined') && (typeof reagent.impl.template.t_reagent$impl$template46154 !== 'undefined')){\n} else {\n\n/**\n* @constructor\n * @implements {reagent.impl.protocols.Compiler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nreagent.impl.template.t_reagent$impl$template46154 = (function (opts,id,fn_to_element,meta46155){\nthis.opts = opts;\nthis.id = id;\nthis.fn_to_element = fn_to_element;\nthis.meta46155 = meta46155;\nthis.cljs$lang$protocol_mask$partition0$ = 393216;\nthis.cljs$lang$protocol_mask$partition1$ = 0;\n});\n(reagent.impl.template.t_reagent$impl$template46154.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_46156,meta46155__$1){\nvar self__ = this;\nvar _46156__$1 = this;\nreturn (new reagent.impl.template.t_reagent$impl$template46154(self__.opts,self__.id,self__.fn_to_element,meta46155__$1));\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_46156){\nvar self__ = this;\nvar _46156__$1 = this;\nreturn self__.meta46155;\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.prototype.reagent$impl$protocols$Compiler$ = cljs.core.PROTOCOL_SENTINEL);\n\n(reagent.impl.template.t_reagent$impl$template46154.prototype.reagent$impl$protocols$Compiler$get_id$arity$1 = (function (this$){\nvar self__ = this;\nvar this$__$1 = this;\nreturn self__.id;\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.prototype.reagent$impl$protocols$Compiler$as_element$arity$2 = (function (this$,x){\nvar self__ = this;\nvar this$__$1 = this;\nreturn reagent.impl.template.as_element(this$__$1,x,self__.fn_to_element);\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.prototype.reagent$impl$protocols$Compiler$make_element$arity$5 = (function (this$,argv,component,jsprops,first_child){\nvar self__ = this;\nvar this$__$1 = this;\nreturn reagent.impl.template.make_element(this$__$1,argv,component,jsprops,first_child);\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.getBasis = (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\"opts\",\"opts\",1795607228,null),new cljs.core.Symbol(null,\"id\",\"id\",252129435,null),new cljs.core.Symbol(null,\"fn-to-element\",\"fn-to-element\",-1764467095,null),new cljs.core.Symbol(null,\"meta46155\",\"meta46155\",1591565822,null)], null);\n}));\n\n(reagent.impl.template.t_reagent$impl$template46154.cljs$lang$type = true);\n\n(reagent.impl.template.t_reagent$impl$template46154.cljs$lang$ctorStr = \"reagent.impl.template/t_reagent$impl$template46154\");\n\n(reagent.impl.template.t_reagent$impl$template46154.cljs$lang$ctorPrWriter = (function (this__4369__auto__,writer__4370__auto__,opt__4371__auto__){\nreturn cljs.core._write(writer__4370__auto__,\"reagent.impl.template/t_reagent$impl$template46154\");\n}));\n\n/**\n * Positional factory function for reagent.impl.template/t_reagent$impl$template46154.\n */\nreagent.impl.template.__GT_t_reagent$impl$template46154 = (function reagent$impl$template$create_compiler_$___GT_t_reagent$impl$template46154(opts__$1,id__$1,fn_to_element__$1,meta46155){\nreturn (new reagent.impl.template.t_reagent$impl$template46154(opts__$1,id__$1,fn_to_element__$1,meta46155));\n});\n\n}\n\nreturn (new reagent.impl.template.t_reagent$impl$template46154(opts,id,fn_to_element,cljs.core.PersistentArrayMap.EMPTY));\n});\nreagent.impl.template.default_compiler_STAR_ = reagent.impl.template.create_compiler(cljs.core.PersistentArrayMap.EMPTY);\nreagent.impl.template.default_compiler = reagent.impl.template.default_compiler_STAR_;\nreagent.impl.template.set_default_compiler_BANG_ = (function reagent$impl$template$set_default_compiler_BANG_(compiler){\nreturn (reagent.impl.template.default_compiler = compiler);\n});\n","~:ns-info",["^ ","~:rename-macros",null,"~:renames",["^ "],"~:meta",["^ ","~:file","reagent/impl/template.cljs","~:line",1,"~:column",5,"~:end-line",1,"~:end-column",26],"~:ns-aliases",["^ ","~$cljs.loader","~$shadow.loader","~$clojure.pprint","~$cljs.pprint","~$react","~$shadow.js.shim.module$react","~$clojure.spec.alpha","~$cljs.spec.alpha"],"~:use-macros",["^ ","~$dev?","~$reagent.debug","~$warn","^F"],"~:excludes",["~#set",[]],"~:name","~$reagent.impl.template","~:op","~:ns","~:imports",null,"~:requires",["^ ","^A","^A","~$input","~$reagent.impl.input","~$reagent.impl.util","^R","~$reagent.impl.protocols","^S","~$p","^S","~$comp","~$reagent.impl.component","~$reagent.ratom","^V","^@","^A","~$cljs.core","^W","~$gobj","~$goog.object","~$goog","^Z","^Y","^Y","~$reagent.impl.batching","^[","^U","^U","~$util","^R","~$ratom","^V","~$string","~$clojure.string","~$batch","^[","^Q","^Q","^F","^F","^13","^13"],"~:seen",["^I",["~:require"]],"~:uses",["^ ","~$named?","^R"],"~:require-macros",["^ ","^F","^F","^W","^W","^V","^V","^11","^V"],"~:form",["~#list",["~$ns","^K",["^1;",["^16",["^@","~:as","^@"],["^13","^1=","^12"],["^R","^1=","^10","~:refer",["^18"]],["^U","^1=","^T"],["^[","^1=","^14"],["^Q","^1=","^P"],["^S","^1=","~$p"],["^V","^1=","^11"],["^F","~:refer-macros",["^E","^G"]],["^Y","^1=","^X"]]]]],"~:flags",["^ ","^16",["^I",[]]],"~:js-deps",["^ "],"~:deps",["^Z","^W","^A","^13","^R","^U","^[","^Q","^S","^V","^F","^Y"]],"^M","^K","~:resource-id",["~:shadow.build.classpath/resource","reagent/impl/template.cljs"],"~:compiled-at",1613924121160,"~:resource-name","reagent/impl/template.cljs","~:warnings",[],"~:source","(ns reagent.impl.template\n (:require [react :as react]\n [clojure.string :as string]\n [reagent.impl.util :as util :refer [named?]]\n [reagent.impl.component :as comp]\n [reagent.impl.batching :as batch]\n [reagent.impl.input :as input]\n [reagent.impl.protocols :as p]\n [reagent.ratom :as ratom]\n [reagent.debug :refer-macros [dev? warn]]\n [goog.object :as gobj]))\n\n;; From Weavejester's Hiccup, via pump:\n(def ^{:doc \"Regular expression that parses a CSS-style id and class\n from a tag name.\"}\n re-tag #\"([^\\s\\.#]+)(?:#([^\\s\\.#]+))?(?:\\.([^\\s#]+))?\")\n\n(deftype NativeWrapper [tag id className])\n\n(defn adapt-react-class\n [c]\n (->NativeWrapper c nil nil))\n\n;;; Common utilities\n\n(defn ^boolean hiccup-tag? [x]\n (or (named? x)\n (string? x)))\n\n(defn ^boolean valid-tag? [x]\n (or (hiccup-tag? x)\n (ifn? x)\n (instance? NativeWrapper x)))\n\n;;; Props conversion\n\n;; TODO: Move prop-name caches to the compiler object, if this\n;; conversion can be configured.\n\n(def prop-name-cache #js{:class \"className\"\n :for \"htmlFor\"\n :charset \"charSet\"})\n\n(defn cache-get [o k]\n (when ^boolean (.hasOwnProperty o k)\n (gobj/get o k)))\n\n(defn cached-prop-name [k]\n (if (named? k)\n (if-some [k' (cache-get prop-name-cache (name k))]\n k'\n (let [v (util/dash-to-prop-name k)]\n (gobj/set prop-name-cache (name k) v)\n v))\n k))\n\n(declare convert-prop-value)\n\n(defn kv-conv [o k v]\n (doto o\n (gobj/set (cached-prop-name k) (convert-prop-value v))))\n\n(defn convert-prop-value [x]\n (cond (util/js-val? x) x\n (named? x) (name x)\n (map? x) (reduce-kv kv-conv #js{} x)\n (coll? x) (clj->js x)\n (ifn? x) (fn [& args]\n (apply x args))\n :else (clj->js x)))\n\n;; Previous few functions copied for custom elements,\n;; without mapping from class to className etc.\n\n(def custom-prop-name-cache #js{})\n\n(defn cached-custom-prop-name [k]\n (if (named? k)\n (if-some [k' (cache-get custom-prop-name-cache (name k))]\n k'\n (let [v (util/dash-to-prop-name k)]\n (gobj/set custom-prop-name-cache (name k) v)\n v))\n k))\n\n(defn custom-kv-conv [o k v]\n (doto o\n (gobj/set (cached-custom-prop-name k) (convert-prop-value v))))\n\n(defn convert-custom-prop-value [x]\n (cond (util/js-val? x) x\n (named? x) (name x)\n (map? x) (reduce-kv custom-kv-conv #js{} x)\n (coll? x) (clj->js x)\n (ifn? x) (fn [& args]\n (apply x args))\n :else (clj->js x)))\n\n(defn set-id-class\n \"Takes the id and class from tag keyword, and adds them to the\n other props. Parsed tag is JS object with :id and :class properties.\"\n [props id-class]\n (let [id (.-id id-class)\n class (.-className id-class)]\n (cond-> props\n ;; Only use ID from tag keyword if no :id in props already\n (and (some? id)\n (nil? (:id props)))\n (assoc :id id)\n\n ;; Merge classes\n class\n ;; Note: someone might use React-style :className property,\n ;; this is the only place where that needs special case. Using\n ;; :class and :className together is not supported.\n (assoc :class (util/class-names class (or (:class props) (:className props)))))))\n\n(defn convert-props [props ^clj id-class]\n (let [class (:class props)\n props (-> props\n (cond-> class (assoc :class (util/class-names class)))\n (set-id-class id-class))]\n (if (.-custom id-class)\n (convert-custom-prop-value props)\n (convert-prop-value props))))\n\n;;; Conversion from Hiccup forms\n\n(defn make-element [this argv component jsprops first-child]\n (case (- (count argv) first-child)\n ;; Optimize cases of zero or one child\n 0 (react/createElement component jsprops)\n\n 1 (react/createElement component jsprops\n (p/as-element this (nth argv first-child nil)))\n\n (.apply react/createElement nil\n (reduce-kv (fn [a k v]\n (when (>= k first-child)\n (.push a (p/as-element this v)))\n a)\n #js [component jsprops] argv))))\n\n(deftype HiccupTag [tag id className custom])\n\n(defn parse-tag [hiccup-tag]\n (let [[tag id className] (->> hiccup-tag name (re-matches re-tag) next)\n className (when-not (nil? className)\n (string/replace className #\"\\.\" \" \"))]\n (assert tag (str \"Invalid tag: '\" hiccup-tag \"'\" (comp/comp-name)))\n (->HiccupTag tag\n id\n className\n ;; Custom element names must contain hyphen\n ;; https://www.w3.org/TR/custom-elements/#custom-elements-core-concepts\n (not= -1 (.indexOf tag \"-\")))))\n\n(defn reag-element [tag v compiler]\n (let [c (comp/as-class tag compiler)\n jsprops #js {}]\n (set! (.-argv jsprops) v)\n (when-some [key (util/react-key-from-vec v)]\n (set! (.-key jsprops) key))\n (react/createElement c jsprops)))\n\n(defn function-element [tag v first-arg compiler]\n (let [jsprops #js {}]\n (set! (.-reagentRender jsprops) tag)\n (set! (.-argv jsprops) (subvec v first-arg))\n ; (set! (.-opts jsprops) opts)\n (when-some [key (util/react-key-from-vec v)]\n (set! (.-key jsprops) key))\n (react/createElement (comp/functional-render-fn compiler tag) jsprops)))\n\n(defn maybe-function-element\n \"If given tag is a Class, use it as a class,\n else wrap in Reagent function wrapper.\"\n [tag v compiler]\n (if (comp/react-class? tag)\n (reag-element tag v compiler)\n (function-element tag v 1 compiler)))\n\n(defn fragment-element [argv compiler]\n (let [props (nth argv 1 nil)\n hasprops (or (nil? props) (map? props))\n jsprops (or (convert-prop-value (if hasprops props))\n #js {})\n first-child (+ 1 (if hasprops 1 0))]\n (when-some [key (util/react-key-from-vec argv)]\n (set! (.-key jsprops) key))\n (p/make-element compiler argv react/Fragment jsprops first-child)))\n\n(def tag-name-cache #js {})\n\n(defn cached-parse [x]\n (if-some [s (cache-get tag-name-cache x)]\n s\n (let [v (parse-tag x)]\n (gobj/set tag-name-cache x v)\n v)))\n\n(defn native-element [parsed argv first compiler]\n (let [component (.-tag parsed)\n props (nth argv first nil)\n hasprops (or (nil? props) (map? props))\n jsprops (or (convert-props (if hasprops props) parsed)\n #js {})\n first-child (+ first (if hasprops 1 0))]\n (if (input/input-component? component)\n (let [input-class (or (.-reagentInput compiler)\n (let [x (comp/create-class input/input-spec compiler)]\n (set! (.-reagentInput compiler) x)\n x))]\n (-> [input-class argv component jsprops first-child compiler]\n (with-meta (meta argv))\n (->> (p/as-element compiler))))\n (do\n (when-some [key (-> (meta argv) util/get-react-key)]\n (set! (.-key jsprops) key))\n (p/make-element compiler argv component jsprops first-child)))))\n\n(defn raw-element [comp argv compiler]\n (let [props (nth argv 2 nil)\n jsprops (or props #js {})]\n (when-some [key (-> (meta argv) util/get-react-key)]\n (set! (.-key jsprops) key))\n (p/make-element compiler argv comp jsprops 3)))\n\n(defn expand-seq [s compiler]\n (into-array (map #(p/as-element compiler %) s)))\n\n(defn expand-seq-dev [s ^clj o compiler]\n (into-array (map (fn [val]\n (when (and (vector? val)\n (nil? (util/react-key-from-vec val)))\n (set! (.-no-key o) true))\n (p/as-element compiler val))\n s)))\n\n(defn expand-seq-check [x compiler]\n (let [ctx #js {}\n [res derefed] (ratom/check-derefs #(expand-seq-dev x ctx compiler))]\n (when derefed\n (warn (util/hiccup-err x (comp/comp-name) \"Reactive deref not supported in lazy seq, \"\n \"it should be wrapped in doall\")))\n (when (.-no-key ctx)\n (warn (util/hiccup-err x (comp/comp-name) \"Every element in a seq should have a unique :key\")))\n res))\n\n(defn hiccup-element [v compiler]\n (let [tag (nth v 0 nil)\n n (name tag)\n pos (.indexOf n \">\")]\n (case pos\n -1 (native-element (cached-parse n) v 1 compiler)\n 0 (assert (= \">\" n) (util/hiccup-err v (comp/comp-name) \"Invalid Hiccup tag\"))\n ;; Support extended hiccup syntax, i.e :div.bar>a.foo\n ;; Apply metadata (e.g. :key) to the outermost element.\n ;; Metadata is probably used only with sequeneces, and in that case\n ;; only the key of the outermost element matters.\n (recur (with-meta [(subs n 0 pos)\n (assoc (with-meta v nil) 0 (subs n (inc pos)))]\n (meta v))\n compiler))))\n\n(defn vec-to-elem [v compiler fn-to-element]\n (when (nil? compiler)\n (js/console.error \"vec-to-elem\" (pr-str v)))\n (assert (pos? (count v)) (util/hiccup-err v (comp/comp-name) \"Hiccup form should not be empty\"))\n (let [tag (nth v 0 nil)]\n (assert (valid-tag? tag) (util/hiccup-err v (comp/comp-name) \"Invalid Hiccup form\"))\n (case tag\n :> (native-element (->HiccupTag (nth v 1 nil) nil nil nil) v 2 compiler)\n :r> (raw-element (nth v 1 nil) v compiler)\n :f> (function-element (nth v 1 nil) v 2 compiler)\n :<> (fragment-element v compiler)\n (cond\n (hiccup-tag? tag)\n (hiccup-element v compiler)\n\n (instance? NativeWrapper tag)\n (native-element tag v 1 compiler)\n\n :else (fn-to-element tag v compiler)))))\n\n(defn as-element [this x fn-to-element]\n (cond (util/js-val? x) x\n (vector? x) (vec-to-elem x this fn-to-element)\n (seq? x) (if (dev?)\n (expand-seq-check x this)\n (expand-seq x this))\n (named? x) (name x)\n (satisfies? IPrintWithWriter x) (pr-str x)\n :else x))\n\n(defn create-compiler [opts]\n (let [id (gensym)\n fn-to-element (if (:function-components opts)\n maybe-function-element\n reag-element)]\n (reify p/Compiler\n ;; This is used to as cache key to cache component fns per compiler\n (get-id [this] id)\n (as-element [this x]\n (as-element this x fn-to-element))\n (make-element [this argv component jsprops first-child]\n (make-element this argv component jsprops first-child)))))\n\n(def default-compiler* (create-compiler {}))\n(def ^:dynamic default-compiler default-compiler*)\n\n(defn set-default-compiler! [compiler]\n (set! default-compiler compiler))\n","~:reader-features",["^I",["~:cljs"]],"~:cljc",false,"~:source-map-compact",["^ ","mappings","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","names",["reagent.impl.template/re-tag","this__4369__auto__","writer__4370__auto__","o