@atomist/clj-editors
Version:
editor functions that use rewrite-clj and other important things from the clojurescript ecosystem
176 lines (161 loc) • 6.12 kB
JavaScript
// Compiled by ClojureScript 1.10.238 {:target :nodejs}
goog.provide('atomist.deps');
goog.require('cljs.core');
goog.require('clojure.data');
goog.require('cljs_node_io.core');
goog.require('cljs_node_io.file');
goog.require('atomist.json');
goog.require('atomist.cljs_log');
goog.require('atomist.fingerprint');
goog.require('atomist.npm');
goog.require('atomist.maven');
goog.require('atomist.promise');
goog.require('cljs.pprint');
goog.require('cljs.core.async');
goog.require('cljs.test');
goog.require('goog.string');
goog.require('goog.string.format');
goog.require('editors.core');
atomist.deps.get_file = (function atomist$deps$get_file(basedir,path){
var file = cljs_node_io.core.file.call(null,basedir,path);
if(cljs.core.truth_(file.exists())){
return file;
} else {
return null;
}
});
atomist.deps.file_type = (function atomist$deps$file_type(f){
if(cljs.core._EQ_.call(null,f.getName(),"project.clj")){
return new cljs.core.Keyword(null,"lein","lein",-1911371426);
} else {
if(cljs.core._EQ_.call(null,f.getName(),"pom.xml")){
return new cljs.core.Keyword(null,"pom","pom",569805085);
} else {
if(cljs.core._EQ_.call(null,f.getName(),"package.json")){
return new cljs.core.Keyword(null,"npm","npm",785664792);
} else {
return new cljs.core.Keyword(null,"unknown","unknown",-935977881);
}
}
}
});
atomist.deps.get_deps = (function atomist$deps$get_deps(basedir){
var temp__5455__auto__ = (function (){var or__3922__auto__ = atomist.deps.get_file.call(null,basedir,"package.json");
if(cljs.core.truth_(or__3922__auto__)){
return or__3922__auto__;
} else {
var or__3922__auto____$1 = atomist.deps.get_file.call(null,basedir,"project.clj");
if(cljs.core.truth_(or__3922__auto____$1)){
return or__3922__auto____$1;
} else {
return atomist.deps.get_file.call(null,basedir,"pom.xml");
}
}
})();
if(cljs.core.truth_(temp__5455__auto__)){
var f = temp__5455__auto__;
var G__22770 = atomist.deps.file_type.call(null,f);
var G__22770__$1 = (((G__22770 instanceof cljs.core.Keyword))?G__22770.fqn:null);
switch (G__22770__$1) {
case "npm":
return atomist.npm.packages.call(null,f);
break;
case "lein":
return atomist.fingerprint.project_dependencies.call(null,f);
break;
case "pom":
return "";
break;
default:
return cljs.core.PersistentVector.EMPTY;
}
} else {
return null;
}
});
/**
* extract library fingerprint data from a basedir containing some sort of project manifest and possibly
* a project lock file (depending on the system)
* TODO - should we support projects with multiple manifest types (ie project.clj package.json combos for clojurescript)
*/
atomist.deps.get_fingerprint = (function atomist$deps$get_fingerprint(basedir){
return (new Promise((function (accept,reject){
return accept.call(null,(function (){var temp__5455__auto__ = (function (){var or__3922__auto__ = atomist.deps.get_file.call(null,basedir,"package.json");
if(cljs.core.truth_(or__3922__auto__)){
return or__3922__auto__;
} else {
var or__3922__auto____$1 = atomist.deps.get_file.call(null,basedir,"project.clj");
if(cljs.core.truth_(or__3922__auto____$1)){
return or__3922__auto____$1;
} else {
return atomist.deps.get_file.call(null,basedir,"pom.xml");
}
}
})();
if(cljs.core.truth_(temp__5455__auto__)){
var f = temp__5455__auto__;
var data = (function (){var G__22773 = atomist.deps.file_type.call(null,f);
var G__22773__$1 = (((G__22773 instanceof cljs.core.Keyword))?G__22773.fqn:null);
switch (G__22773__$1) {
case "npm":
return atomist.npm.run.call(null,f);
break;
case "lein":
return atomist.fingerprint.run.call(null,f);
break;
case "pom":
return atomist.maven.run.call(null,f);
break;
default:
return cljs.core.empty.call(null,cljs.core.PersistentVector.EMPTY);
}
})();
return cljs.core.clj__GT_js.call(null,cljs.core.into.call(null,cljs.core.PersistentVector.EMPTY,cljs.core.map.call(null,((function (data,f,temp__5455__auto__){
return (function (p1__22772_SHARP_){
return cljs.core.assoc.call(null,p1__22772_SHARP_,new cljs.core.Keyword(null,"sha","sha",-950317251),atomist.fingerprint.sha_256.call(null,atomist.json.json_str.call(null,new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(p1__22772_SHARP_))),new cljs.core.Keyword(null,"data","data",-232669377),atomist.json.json_str.call(null,new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(p1__22772_SHARP_)),new cljs.core.Keyword(null,"value","value",305978217),atomist.json.json_str.call(null,new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(p1__22772_SHARP_)));
});})(data,f,temp__5455__auto__))
,data)));
} else {
return null;
}
})());
})));
});
/**
* edit a dependency in a project manifest
*/
atomist.deps.edit = (function atomist$deps$edit(basedir,n,v){
var temp__5455__auto__ = (function (){var or__3922__auto__ = atomist.deps.get_file.call(null,basedir,"package.json");
if(cljs.core.truth_(or__3922__auto__)){
return or__3922__auto__;
} else {
var or__3922__auto____$1 = atomist.deps.get_file.call(null,basedir,"project.clj");
if(cljs.core.truth_(or__3922__auto____$1)){
return or__3922__auto____$1;
} else {
return atomist.deps.get_file.call(null,basedir,"pom.xml");
}
}
})();
if(cljs.core.truth_(temp__5455__auto__)){
var f = temp__5455__auto__;
var G__22775 = atomist.deps.file_type.call(null,f);
var G__22775__$1 = (((G__22775 instanceof cljs.core.Keyword))?G__22775.fqn:null);
switch (G__22775__$1) {
case "npm":
return atomist.npm.edit.call(null,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"basedir","basedir",2135113679),basedir,new cljs.core.Keyword(null,"path","path",-188191168),"package.json"], null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"name","name",1843675177),n,new cljs.core.Keyword(null,"version","version",425292698),v], null));
break;
case "lein":
return cljs_node_io.core.spit.call(null,f,editors.core.edit_library.call(null,cljs_node_io.core.slurp.call(null,f),n,v));
break;
case "pom":
return atomist.maven.edit.call(null,basedir,n,v);
break;
default:
return cljs.core.PersistentVector.EMPTY;
}
} else {
return null;
}
});
//# sourceMappingURL=deps.js.map