japji/resources/public/js/cljs-runtime/re_frame.utils.js

85 lines
3.1 KiB
JavaScript

goog.provide('re_frame.utils');
/**
* Dissociates an entry from a nested associative structure returning a new
* nested structure. keys is a sequence of keys. Any empty maps that result
* will not be present in the new structure.
* The key thing is that 'm' remains identical? to itself if the path was never present
*/
re_frame.utils.dissoc_in = (function re_frame$utils$dissoc_in(m,p__51877){
var vec__51880 = p__51877;
var seq__51881 = cljs.core.seq(vec__51880);
var first__51882 = cljs.core.first(seq__51881);
var seq__51881__$1 = cljs.core.next(seq__51881);
var k = first__51882;
var ks = seq__51881__$1;
var keys = vec__51880;
if(ks){
var temp__5821__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);
if(cljs.core.truth_(temp__5821__auto__)){
var nextmap = temp__5821__auto__;
var newmap = (re_frame.utils.dissoc_in.cljs$core$IFn$_invoke$arity$2 ? re_frame.utils.dissoc_in.cljs$core$IFn$_invoke$arity$2(nextmap,ks) : re_frame.utils.dissoc_in.call(null,nextmap,ks));
if(cljs.core.seq(newmap)){
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,newmap);
} else {
return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(m,k);
}
} else {
return m;
}
} else {
return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(m,k);
}
});
re_frame.utils.first_in_vector = (function re_frame$utils$first_in_vector(v){
if(cljs.core.vector_QMARK_(v)){
return cljs.core.first(v);
} else {
return re_frame.loggers.console.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,"error","error",-978969032),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["re-frame: expected a vector, but got:",v], 0));
}
});
/**
* Like apply, but f takes keyword arguments and the last argument is
* not a seq but a map with the arguments for f
*/
re_frame.utils.apply_kw = (function re_frame$utils$apply_kw(var_args){
var args__5755__auto__ = [];
var len__5749__auto___51888 = arguments.length;
var i__5750__auto___51889 = (0);
while(true){
if((i__5750__auto___51889 < len__5749__auto___51888)){
args__5755__auto__.push((arguments[i__5750__auto___51889]));
var G__51890 = (i__5750__auto___51889 + (1));
i__5750__auto___51889 = G__51890;
continue;
} else {
}
break;
}
var argseq__5756__auto__ = ((((1) < args__5755__auto__.length))?(new cljs.core.IndexedSeq(args__5755__auto__.slice((1)),(0),null)):null);
return re_frame.utils.apply_kw.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5756__auto__);
});
(re_frame.utils.apply_kw.cljs$core$IFn$_invoke$arity$variadic = (function (f,args){
if(cljs.core.map_QMARK_(cljs.core.last(args))){
} else {
throw (new Error("Assert failed: (map? (last args))"));
}
return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.concat,cljs.core.butlast(args),cljs.core.last(args)));
}));
(re_frame.utils.apply_kw.cljs$lang$maxFixedArity = (1));
/** @this {Function} */
(re_frame.utils.apply_kw.cljs$lang$applyTo = (function (seq51886){
var G__51887 = cljs.core.first(seq51886);
var seq51886__$1 = cljs.core.next(seq51886);
var self__5734__auto__ = this;
return self__5734__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51887,seq51886__$1);
}));
//# sourceMappingURL=re_frame.utils.js.map