Files
nothoughts/public/js/cljs-runtime/emptyhead.idea.crud.js
2025-02-06 19:47:55 +01:00

150 lines
7.0 KiB
JavaScript

goog.provide('emptyhead.idea.crud');
/**
* Helper function to scaffold an 'empty' idea.
*/
emptyhead.idea.crud.register_idea_BANG_ = (function emptyhead$idea$crud$register_idea_BANG_(ref){
cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(emptyhead.idea.state.state,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [ref,new cljs.core.Keyword(null,"_meta","_meta",937543236),new cljs.core.Keyword(null,"_properties","_properties",-1501471594)], null),cljs.core.PersistentHashSet.EMPTY);
cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(emptyhead.idea.state.state,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [ref,new cljs.core.Keyword(null,"_meta","_meta",937543236),new cljs.core.Keyword(null,"_reference","_reference",-253513596)], null),ref);
return ref;
});
/**
* Swap data inside `idea` with given `data`.
* Returns a reference to `idea`.
*/
emptyhead.idea.crud.swap_idea_BANG_ = (function emptyhead$idea$crud$swap_idea_BANG_(idea,data){
cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(emptyhead.idea.state.state,cljs.core.assoc,emptyhead.idea.protocol.reference(idea),cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([data,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"_meta","_meta",937543236),emptyhead.idea.protocol.val_fn(new cljs.core.Keyword(null,"_meta","_meta",937543236),idea)], null)], 0)));
return emptyhead.idea.protocol.reference(idea);
});
/**
* Merge `data` into state of `idea`.
* Returns a reference to `idea`.
*/
emptyhead.idea.crud.extend_idea_BANG_ = (function emptyhead$idea$crud$extend_idea_BANG_(idea,data){
cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(emptyhead.idea.state.state,cljs.core.assoc,emptyhead.idea.protocol.reference(idea),emptyhead.idea.protocol.val_fn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.merge,idea,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([data], 0)));
return emptyhead.idea.protocol.reference(idea);
});
/**
* Evaluate `fun` on `idea` with optional extra `args`, then replace `idea` by the result.
* Returns a reference to `idea`.
*/
emptyhead.idea.crud.mutate_idea_BANG_ = (function emptyhead$idea$crud$mutate_idea_BANG_(var_args){
var args__5732__auto__ = [];
var len__5726__auto___30841 = arguments.length;
var i__5727__auto___30842 = (0);
while(true){
if((i__5727__auto___30842 < len__5726__auto___30841)){
args__5732__auto__.push((arguments[i__5727__auto___30842]));
var G__30843 = (i__5727__auto___30842 + (1));
i__5727__auto___30842 = G__30843;
continue;
} else {
}
break;
}
var argseq__5733__auto__ = ((((2) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((2)),(0),null)):null);
return emptyhead.idea.crud.mutate_idea_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__5733__auto__);
});
(emptyhead.idea.crud.mutate_idea_BANG_.cljs$core$IFn$_invoke$arity$variadic = (function (fun,idea,args){
emptyhead.idea.crud.swap_idea_BANG_(idea,emptyhead.idea.protocol.val_fn.cljs$core$IFn$_invoke$arity$variadic(fun,idea,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([args], 0)));
return emptyhead.idea.protocol.reference(idea);
}));
(emptyhead.idea.crud.mutate_idea_BANG_.cljs$lang$maxFixedArity = (2));
/** @this {Function} */
(emptyhead.idea.crud.mutate_idea_BANG_.cljs$lang$applyTo = (function (seq30832){
var G__30833 = cljs.core.first(seq30832);
var seq30832__$1 = cljs.core.next(seq30832);
var G__30834 = cljs.core.first(seq30832__$1);
var seq30832__$2 = cljs.core.next(seq30832__$1);
var self__5711__auto__ = this;
return self__5711__auto__.cljs$core$IFn$_invoke$arity$variadic(G__30833,G__30834,seq30832__$2);
}));
/**
* Delete `idea` from the state.
* Returns a copy of the `idea`.
*/
emptyhead.idea.crud.forget_idea_BANG_ = (function emptyhead$idea$crud$forget_idea_BANG_(idea){
var val = emptyhead.idea.protocol.value(idea);
cljs.core.apply.cljs$core$IFn$_invoke$arity$3(emptyhead.idea.property.remove_property_BANG_,idea,emptyhead.idea.property.properties(idea));
emptyhead.idea.protocol.ref_fn((function (p1__30835_SHARP_){
return cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(emptyhead.idea.state.state,cljs.core.dissoc,p1__30835_SHARP_);
}),idea);
return emptyhead.idea.protocol.copy(val);
});
/**
* Instantiate up to `count` new ideas, optionally prefixing reference symbol with `prefix`.
* Additionally allows you to immediately attach `properties` and `data`.
* Returns a single idea or a list of ideas depending on whether `count` was given.
*/
emptyhead.idea.crud.have_idea_BANG_ = (function emptyhead$idea$crud$have_idea_BANG_(var_args){
var args__5732__auto__ = [];
var len__5726__auto___30844 = arguments.length;
var i__5727__auto___30845 = (0);
while(true){
if((i__5727__auto___30845 < len__5726__auto___30844)){
args__5732__auto__.push((arguments[i__5727__auto___30845]));
var G__30846 = (i__5727__auto___30845 + (1));
i__5727__auto___30845 = G__30846;
continue;
} else {
}
break;
}
var argseq__5733__auto__ = ((((0) < args__5732__auto__.length))?(new cljs.core.IndexedSeq(args__5732__auto__.slice((0)),(0),null)):null);
return emptyhead.idea.crud.have_idea_BANG_.cljs$core$IFn$_invoke$arity$variadic(argseq__5733__auto__);
});
(emptyhead.idea.crud.have_idea_BANG_.cljs$core$IFn$_invoke$arity$variadic = (function (p__30839){
var map__30840 = p__30839;
var map__30840__$1 = cljs.core.__destructure_map(map__30840);
var prefix = cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__30840__$1,new cljs.core.Keyword(null,"prefix","prefix",-265908465),"idea_");
var count = cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__30840__$1,new cljs.core.Keyword(null,"count","count",2139924085),(1));
var properties = cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__30840__$1,new cljs.core.Keyword(null,"properties","properties",685819552),cljs.core.PersistentVector.EMPTY);
var data = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840__$1,new cljs.core.Keyword(null,"data","data",-232669377));
var fun = (function (){
return emptyhead.idea.crud.register_idea_BANG_(cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(prefix));
});
var ideas = cljs.core.take.cljs$core$IFn$_invoke$arity$2(count,cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$1(fun));
cljs.core.run_BANG_((function (p1__30836_SHARP_){
return cljs.core.apply.cljs$core$IFn$_invoke$arity$3(emptyhead.idea.property.register_property_BANG_,p1__30836_SHARP_,properties);
}),ideas);
if(cljs.core.truth_(data)){
cljs.core.run_BANG_((function (p1__30837_SHARP_){
return emptyhead.idea.crud.extend_idea_BANG_(p1__30837_SHARP_,data);
}),ideas);
} else {
}
if(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(count,(1))){
return cljs.core.first(ideas);
} else {
return ideas;
}
}));
(emptyhead.idea.crud.have_idea_BANG_.cljs$lang$maxFixedArity = (0));
/** @this {Function} */
(emptyhead.idea.crud.have_idea_BANG_.cljs$lang$applyTo = (function (seq30838){
var self__5712__auto__ = this;
return self__5712__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq30838));
}));
//# sourceMappingURL=emptyhead.idea.crud.js.map