UNPKG

@atomist/clj-editors

Version:

We build a node module `@atomist/clj-editors` here. This allows us to construct clojure editors using `rewrite-cljs`. After adding this dependency, the node application will have access to javascript functions transpiled from clojurescript.

70 lines (68 loc) 3.05 kB
// Compiled by ClojureScript 1.9.946 {:target :nodejs} goog.provide('editors.core'); goog.require('cljs.core'); goog.require('clojure.string'); goog.require('cljs.reader'); goog.require('cljs_node_io.core'); goog.require('rewrite_clj.parser'); goog.require('rewrite_clj.node'); goog.require('rewrite_clj.zip'); goog.require('cljs.nodejs'); cljs.nodejs.enable_util_print_BANG_.call(null); editors.core.getVersion = (function editors$core$getVersion(f){ return cljs.core.nth.call(null,cljs.reader.read_string.call(null,cljs_node_io.core.slurp.call(null,f)),(2)); }); goog.exportSymbol('editors.core.getVersion', editors.core.getVersion); /** * Make sure x is a vector. Create one containing x if it isn't */ editors.core.to_seq = (function editors$core$to_seq(x){ if(cljs.core.sequential_QMARK_.call(null,x)){ return x; } else { return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [x], null); } }); /** * Return the key/loc pair (if any) that matches one of the keys in somekey-or-keys. If only a key, then return only the value */ editors.core.find_loc = (function editors$core$find_loc(zipper,somekey_or_keys){ var thekeys = editors.core.to_seq.call(null,somekey_or_keys); while(true){ var temp__4657__auto__ = cljs.core.first.call(null,thekeys); if(cljs.core.truth_(temp__4657__auto__)){ var thekey = temp__4657__auto__; var temp__4655__auto__ = rewrite_clj.zip.find_depth_first.call(null,zipper,((function (thekeys,thekey,temp__4657__auto__){ return (function (p1__14701_SHARP_){ return cljs.core._EQ_.call(null,rewrite_clj.zip.sexpr.call(null,p1__14701_SHARP_),thekey); });})(thekeys,thekey,temp__4657__auto__)) ); if(cljs.core.truth_(temp__4655__auto__)){ var val = temp__4655__auto__; return val; } else { if(cljs.core.truth_(cljs.core.not_empty.call(null,thekeys))){ var G__14702 = cljs.core.rest.call(null,thekeys); thekeys = G__14702; continue; } else { return null; } } } else { return null; } break; } }); editors.core.project_dependencies = (function editors$core$project_dependencies(f){ return cljs.core.clj__GT_js.call(null,cljs.core.map.call(null,(function (p1__14703_SHARP_){ return cljs.core.conj.call(null,cljs.core.rest.call(null,p1__14703_SHARP_),[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first.call(null,p1__14703_SHARP_))].join('')); }),cljs.core.sort_by.call(null,cljs.core.comp.call(null,cljs.core.name,cljs.core.first),rewrite_clj.zip.sexpr.call(null,rewrite_clj.zip.right.call(null,editors.core.find_loc.call(null,rewrite_clj.zip.down.call(null,rewrite_clj.zip.of_string.call(null,cljs_node_io.core.slurp.call(null,"project.clj"))),new cljs.core.Keyword(null,"dependencies","dependencies",1108064605))))))); }); goog.exportSymbol('editors.core.project_dependencies', editors.core.project_dependencies); editors.core.noop = (function editors$core$noop(){ return cljs.core.println.call(null,"this module exports editors.core.getVersion and editors.core.project-dependencies"); }); cljs.core._STAR_main_cli_fn_STAR_ = editors.core.noop; //# sourceMappingURL=core.js.map