squint-cljs 0.12.192 → 0.12.193
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cli.js +45 -45
- package/lib/cljs.pprint.js +258 -258
- package/lib/compiler.js +741 -741
- package/lib/compiler.node.js +34 -31
- package/lib/compiler.sci.js +1135 -1138
- package/lib/node.nrepl_server.js +27 -19
- package/lib/squint.core.umd.js +1 -1
- package/package.json +1 -1
- package/src/squint/core.js +32 -18
- package/src/squint/multi.js +10 -10
- package/src/squint/set.js +3 -3
- package/src/squint/string.js +20 -3
- package/src/squint/test.js +42 -42
- package/vite.js +25 -1
package/lib/node.nrepl_server.js
CHANGED
|
@@ -4,24 +4,32 @@ import "./node.js";
|
|
|
4
4
|
import "./compiler.node.js";
|
|
5
5
|
const shadow_esm_import = function(x) { return import(x) };
|
|
6
6
|
import*as esm_import$fs from"fs";import*as esm_import$net from"net";
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
"version-string",a)},
|
|
10
|
-
$APP.li=b;$APP.ji=e;$APP.
|
|
11
|
-
$APP.Lh.j(f,$APP.Nv,!0)}(),d=$APP.p(b)?$APP.Fi.g(b):null;b=function(){var f=new $APP.G(null,4,[$APP.sq,$APP.Hv,$APP.Mv,!0,$APP.ms,!0,$APP.Bq,!0],null);f=$APP.p(c)?$APP.Lh.j(f,$APP.sr,c):f;f=$APP.p($APP.Db(
|
|
12
|
-
"%s",b)},
|
|
13
|
-
|
|
14
|
-
b)
|
|
15
|
-
return
|
|
16
|
-
|
|
17
|
-
new $APP.
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
7
|
+
var z9=function(a,b){a=a.indexOf(b);if(a<0)throw Error("out of input");return a},A9=function(a,b){if(a.length<b)throw Error("out of input");return a.slice(b)},B9=function(a,b){if(b>a.length)throw Error("out of input");return a.slice(0,b)},C9=function(a){return console.debug($APP.rq.h(" ",a))},Uka=function(a){return function(b,c){b=$APP.$e(b);var d=$APP.Vd.h(b,$APP.at),e=$APP.Vd.h(b,D9);c=$APP.Lh.j(c,"id",d);c=$APP.p(e)?$APP.Lh.j(c,"session",e):c;return a.h?a.h(b,c):a.call(null,b,c)}},Wka=function(){var a=
|
|
8
|
+
Vka;return function(b,c){b=$APP.en.j(b,E9,$APP.wi);return a.h?a.h(b,c):a.call(null,b,c)}},Yka=function(){var a=Xka();return function(b,c){C9($APP.z(["request",b]));return a.h?a.h(b,c):a.call(null,b,c)}},Zka=function(a){return function(b,c){C9($APP.z(["response",c]));return a.h?a.h(b,c):a.call(null,b,c)}},Xka=function(){var a=Wka();return function(b,c){return a.h?a.h(b,c):a.call(null,b,c)}},F9=function(a){return $APP.Lh.j($APP.Wh(new $APP.E(null,3,5,$APP.F,["major","minor","incremental"],null),$APP.Vv.g(a.split("."))),
|
|
9
|
+
"version-string",a)},I9=function(){var a=function(){var b=$APP.Db(G9);b=b==null?null:$APP.Wo.g(b);b=b==null?null:$APP.Db(b);return b==null?null:$APP.Vn.g(b)}();if($APP.p(a))return a;a=function(){var b=$APP.Db(H9);b=b==null?null:$APP.Db(b);return b==null?null:$APP.Vn.g(b)}();return $APP.p(a)?a:$APP.Rq},$ka=function(a,b,c){if($APP.p(a)){var d=J9.g?J9.g(a):J9.call(null,a);if($APP.p(d)){var e=$APP.$e(b);a=$APP.Vd.h(e,$APP.h9);b=$APP.Vd.h(e,$APP.b9);e=$APP.Vd.h(e,$APP.j9);var f=$APP.li,h=$APP.ji,k=$APP.K6;
|
|
10
|
+
$APP.li=b;$APP.ji=e;$APP.K6=a;try{return Promise.resolve(function(){var m=new $APP.ya,n=$APP.Ba,l=$APP.Ca;$APP.Ba=!0;$APP.Ca=function(q){return m.append(q)};try{d.g?d.g(c):d.call(null,c)}finally{$APP.Ca=l,$APP.Ba=n}return""+$APP.H.g(m)}())}finally{$APP.K6=k,$APP.ji=h,$APP.li=f}}else return C9($APP.z(["Pretty-Printing is only supported for cider.nrepl.pprint/pprint"])),$APP.pJ(c)}else return $APP.pJ(c)},ala=function(a,b){var c=function(){var f=$APP.SI();f=f==null?null:$APP.sr.g(f);return f==null?null:
|
|
11
|
+
$APP.Lh.j(f,$APP.Nv,!0)}(),d=$APP.p(b)?$APP.Fi.g(b):null;b=function(){var f=new $APP.G(null,4,[$APP.sq,$APP.Hv,$APP.Mv,!0,$APP.ms,!0,$APP.Bq,!0],null);f=$APP.p(c)?$APP.Lh.j(f,$APP.sr,c):f;f=$APP.p($APP.Db(H9))?$APP.Lh.j(f,$APP.Wo,$APP.Db(H9)):f;f=$APP.p(d)?$APP.Lh.j(f,$APP.T,d):f;var h=$APP.Db(G9);return $APP.Kv?$APP.Kv(a,f,h):$APP.OI.call(null,a,f,h)}();b=$APP.$e(b);var e=$APP.Vd.h(b,$APP.Tv);$APP.Cf(G9,b);b=""+$APP.H.g(e)+"\n;return [undefined];";return $APP.ar("(async function () {\n%s\n}) ()",
|
|
12
|
+
"%s",b)},K9=function(a,b){return Promise.resolve(eval(a)).then(function(c){c=c[0];return $ka(bla.g(b),cla.g(b),c)})},dla=function(a,b){return new Promise(function(c,d){var e=$APP.at.g(b);$APP.Xi.A(L9,$APP.Lh,e,{resolve:function(k){k=k.value;return c.g?c.g(k):c.call(null,k)},reject:d});setTimeout(function(){if($APP.p($APP.Vd.h($APP.Db(L9),e))){$APP.Xi.j(L9,$APP.Zk,e);var k=$APP.Db(M9);k=$APP.p(k)?k.v?k.v():k.call(null):null;k=$APP.p(k)?"Open "+$APP.H.g(k)+" in a browser tab.":"Open the dev server URL in a browser tab.";
|
|
13
|
+
k=Error("No response from the browser within "+$APP.H.g(8E3)+"ms. "+$APP.H.g(k)+" The REPL evaluates in the page.");return d.g?d.g(k):d.call(null,k)}return null},8E3);var f=$APP.Db(N9);if($APP.p(f)){var h={op:"eval",code:a,id:e,session:D9.g(b)};return f.g?f.g(h):f.call(null,h)}$APP.Xi.j(L9,$APP.Zk,e);f=Error("No browser transport connected");return d.g?d.g(f):d.call(null,f)})},ela=function(a){for(var b=new Set;;)if(a!=null){for(var c=$APP.t(Object.getOwnPropertyNames(a)),d=null,e=0,f=0;;)if(f<e){var h=
|
|
14
|
+
d.ea(null,f);b.add(h);f+=1}else if(c=$APP.t(c))d=c,$APP.Od(d)?(c=$APP.ic(d),f=$APP.jc(d),d=c,e=$APP.nd(c),c=f):(c=$APP.u(d),b.add(c),c=$APP.w(d),d=null,e=0),f=0;else break;a=Object.getPrototypeOf(a)}else break;return Array.from(b)},fla=function(a){if($APP.la(a,"js/")){a=$APP.hi.h(a,3).split(".");var b=a[a.length-1];a=a.slice(0,a.length-1);var c=$APP.de.j(function(e,f){return e!=null?e[f]:null},globalThis,Array.from(a));if(c==null)return[];var d="js/"+$APP.H.g(a.length>0?""+$APP.H.g(a.join("."))+".":
|
|
15
|
+
null);return $APP.bw.g($APP.jk.h(function(e){return""+$APP.H.g(d)+$APP.H.g(e)},$APP.Ff.h(100,$APP.qJ.g($APP.Ln.h(function(e){return $APP.la(e,b)},ela(c))))))}return[]},gla=function(a,b){return new Promise(function(c){var d=$APP.at.g(b);$APP.Xi.A(L9,$APP.Lh,d,{resolve:function(h){h=h.completions;h=$APP.p(h)?h:[];return c.g?c.g(h):c.call(null,h)},reject:function(){var h=[];return c.g?c.g(h):c.call(null,h)}});setTimeout(function(){if($APP.p($APP.Vd.h($APP.Db(L9),d))){$APP.Xi.j(L9,$APP.Zk,d);var h=[];
|
|
16
|
+
return c.g?c.g(h):c.call(null,h)}return null},8E3);var e=$APP.Db(N9);if($APP.p(e)){var f={op:"complete-js",prefix:a,id:d,session:D9.g(b)};return e.g?e.g(f):e.call(null,f)}$APP.Xi.j(L9,$APP.Zk,d);e=[];return c.g?c.g(e):c.call(null,e)})},P9=function(a,b){return Promise.resolve(a).then(function(c){return ala(c,$APP.T.g(b))}).then(function(c){var d=$APP.Db(O9);return d.h?d.h(c,b):d.call(null,c,b)})},R9=function(a,b){var c=$APP.$e(a);$APP.Vd.h(c,$APP.T);a=$APP.Vd.h(c,Q9);$APP.Vd.h(c,$APP.jl);$APP.Vd.h(c,
|
|
17
|
+
hla);$APP.Vd.h(c,ila);return P9(a,c).then(function(d){d=new $APP.G(null,2,["ns",""+$APP.H.g(I9()),"value",d],null);return b.h?b.h(c,d):b.call(null,c,d)}).catch(function(d){console.error(d);var e=$APP.Iu.g($APP.uj(d));e=$APP.p(e)?e:d.message;$APP.p(e)&&(e=new $APP.G(null,1,["err",""+$APP.H.g(e)+"\n"],null),b.h?b.h(c,e):b.call(null,c,e));d=new $APP.G(null,2,["ex",""+$APP.H.g(d),"ns",""+$APP.H.g(I9())],null);return b.h?b.h(c,d):b.call(null,c,d)}).finally(function(){var d=new $APP.G(null,2,["ns",""+$APP.H.g(I9()),
|
|
18
|
+
"status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);return b.h?b.h(c,d):b.call(null,c,d)})},S9=function(){var a=$APP.Db(G9);a=a==null?null:$APP.Wo.g(a);a=a==null?null:$APP.Db(a);if($APP.p(a))return a;a=$APP.Db(H9);return a==null?null:$APP.Db(a)},T9=function(a,b){var c=$APP.$e(a),d=$APP.Vd.h(c,E9),e=$APP.Vd.h(c,$APP.T);a=function(){var v=$APP.jaa.g(c);return $APP.p(v)?v:$APP.wm.g(c)}();e=$APP.Fi.g($APP.p(e)?e:""+$APP.H.g(I9()));var f=$APP.p($APP.p(a)?a.indexOf("/")==-1:a)?$APP.Op.h(S9(),new $APP.E(null,
|
|
19
|
+
2,5,$APP.F,[e,$APP.Fi.g(a)],null)):null,h=$APP.$e(f),k=$APP.Vd.h(h,$APP.V),m=$APP.Vd.h(h,$APP.Q),n=$APP.Vd.h(h,$APP.kl),l=$APP.Vd.h(h,$APP.jl);if($APP.p(f)){var q=new $APP.G(null,3,["ns",""+$APP.H.g(e),"name",""+$APP.H.g(a),"status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);a=function(){switch(d instanceof $APP.D?d.aa:null){case "eldoc":var v=$APP.Lh.l(q,"eldoc",$APP.vw.h(function(C){return $APP.vw.h($APP.H,C)},k),$APP.z(["type",$APP.p(k)?"function":"variable"]));return $APP.p(m)?$APP.Lh.j(v,
|
|
20
|
+
"docstring",m):v;default:return v=$APP.p(k)?$APP.Lh.j(q,"arglists-str",$APP.rq.h("\n",$APP.jk.h($APP.Si,k))):q,v=$APP.p(m)?$APP.Lh.j(v,"doc",m):v,v=$APP.p(l)?$APP.Lh.j(v,"file",l):v,$APP.p(n)?$APP.Lh.j(v,"line",n):v}}();return b.h?b.h(c,a):b.call(null,c,a)}a:switch(d instanceof $APP.D?d.aa:null){case "eldoc":a=new $APP.E(null,2,5,$APP.F,["no-eldoc","done"],null);break a;default:a=new $APP.E(null,2,5,$APP.F,["no-info","done"],null)}a=new $APP.G(null,1,["status",a],null);return b.h?b.h(c,a):b.call(null,
|
|
21
|
+
c,a)},Vka=function(a,b){a=$APP.$e(a);var c=$APP.Vd.h(a,E9),d=$APP.Vd.h(U9,c);if($APP.p(d))return d.h?d.h(a,b):d.call(null,a,b);console.warn($APP.rq.h(" ",$APP.z(["Unhandled operation",c])));c=new $APP.G(null,1,["status",new $APP.E(null,3,5,$APP.F,["error","unknown-op","done"],null)],null);return b.h?b.h(a,c):b.call(null,a,c)},jla=function(a){return function(b,c){return a.write(V9(c))}},kla=function(a,b){C9($APP.z(["Connection accepted"]));b.setNoDelay(!0);var c=Yka(),d=Uka(Zka(jla(b))),e=$APP.Wi.g(null);
|
|
22
|
+
b.on("data",function(f){var h=$APP.Db(e);if($APP.p(h)){f=""+$APP.H.g(h)+$APP.H.g(f);$APP.Cf(e,null);var k=f}else k=f;a:{f=$APP.z([$APP.Wv,!0]);for(h=$APP.dg;;){var m=$APP.zf.j(W9,k,f);k=$APP.y.j(m,0,null);m=$APP.y.j(m,1,null);if(k==null){h=new $APP.E(null,2,5,$APP.F,[h,m],null);break a}h=$APP.ve.h(h,k);k=m}h=void 0}f=$APP.y.j(h,0,null);h=$APP.y.j(h,1,null);$APP.nk(h)||$APP.Cf(e,h);f=$APP.t(f);h=null;for(var n=m=0;;)if(n<m)k=h.ea(null,n),c(k,d),n+=1;else if(f=$APP.t(f))h=f,$APP.Od(h)?(f=$APP.ic(h),
|
|
23
|
+
m=$APP.jc(h),h=f,k=$APP.nd(f),f=m,m=k):(k=$APP.u(h),c(k,d),f=$APP.w(h),h=null,m=0),n=0;else return null});return b.on("close",function(f){return $APP.p(f)?C9($APP.z(["Connection lost"])):C9($APP.z(["Connection closed"]))})},ila=new $APP.D(null,"_line","_line",232847719),cla=new $APP.D("nrepl.middleware.print","options","nrepl.middleware.print/options",868480159),D9=new $APP.D(null,"session","session",1008279103),lla=new $APP.D(null,"lookup","lookup",1225356838),mla=new $APP.D(null,"browser-transport",
|
|
24
|
+
"browser-transport",-653558483),nla=new $APP.D(null,"load-file","load-file",-424586670),hla=new $APP.D(null,"_load-file?","_load-file?",-1198848711),E9=new $APP.D(null,"op","op",-1882987955),ola=new $APP.D(null,"describe","describe",1369790582),Q9=new $APP.D(null,"code","code",1586293142),pla=new $APP.D(null,"eldoc","eldoc",-1321421900),qla=new $APP.D(null,"log_level","log_level",-1756736313),bla=new $APP.D("nrepl.middleware.print","print","nrepl.middleware.print/print",-1616742548),rla=new $APP.D(null,
|
|
25
|
+
"clone","clone",711747572),sla=new $APP.D(null,"close","close",1835149582),tla=new $APP.D(null,"info","info",-317069002),ula=new $APP.D(null,"host","host",-1558485167),vla=new $APP.D(null,"complete","complete",-500388775),wla=new $APP.D(null,"load-file?","load-file?",1892536169);var X9=function X9(a,b){switch(""+$APP.H.g(B9(a,1))){case "i":return a=A9(a,1),b=z9(a,"e"),new $APP.E(null,2,5,$APP.F,[parseInt(B9(a,b)),A9(a,b+1)],null);case "l":var d=a=A9(a,1);for(a=$APP.$b($APP.dg);;){if($APP.x.h(""+$APP.H.g(B9(d,1)),"e"))return new $APP.E(null,2,5,$APP.F,[$APP.cc(a),A9(d,1)],null);var e=X9.h?X9.h(d,b):X9.call(null,d,b),f=$APP.y.j(e,0,null),h=$APP.y.j(e,1,null);e=h;a=$APP.Zf.h(a,f);d=e}break;case "d":a=A9(a,1);f=$APP.$e(b);f=$APP.Vd.h(f,$APP.Wv);d=a;for(e=$APP.$b($APP.Ze);;){if($APP.x.h(""+
|
|
26
|
+
$APP.H.g(B9(d,1)),"e"))return new $APP.E(null,2,5,$APP.F,[$APP.cc(e),A9(d,1)],null);a=X9.h?X9.h(d,b):X9.call(null,d,b);d=$APP.y.j(a,0,null);h=$APP.y.j(a,1,null);h=X9.h?X9.h(h,b):X9.call(null,h,b);a=$APP.y.j(h,0,null);h=$APP.y.j(h,1,null);d=$APP.p(f)?$APP.wi.g(d):d;a=$APP.Pg.j(e,d,a);d=h;e=a}break;default:return b=z9(a,":"),f=parseInt(B9(a,b)),a=A9(a,b+1),new $APP.E(null,2,5,$APP.F,[""+$APP.H.g(B9(a,f)),A9(a,f)],null)}},W9=function W9(a){for(var c=[],d=arguments.length,e=0;;)if(e<d)c.push(arguments[e]),
|
|
21
27
|
e+=1;else break;return W9.l(arguments[0],1<c.length?new $APP.Lc(c.slice(1),0,null):null)};W9.l=function(a,b){try{return X9(a,b)}catch(c){if(c instanceof Error)return new $APP.E(null,2,5,$APP.F,[null,a],null);throw c;}};W9.m=1;W9.o=function(a){var b=$APP.u(a);a=$APP.w(a);return this.l(b,a)};
|
|
22
28
|
var V9=function V9(a){for(;;){if(typeof a==="string")return""+$APP.H.g(Buffer.from(a).length)+":"+$APP.H.g(a);if(a instanceof $APP.D||a instanceof $APP.r)a=""+$APP.H.g(function(){var c=$APP.De(a);return $APP.p(c)?""+$APP.H.g(c)+"/":null}())+$APP.H.g($APP.Vh(a));else return typeof a==="number"?"i"+$APP.H.g(a)+"e":$APP.Jd(a)||$APP.Nd(a)||a==null?"l"+$APP.H.g($APP.zf.h($APP.H,$APP.jk.h(V9,a)))+"e":$APP.Ld(a)?"d"+$APP.H.g($APP.zf.h($APP.H,$APP.jk.h(function(){return function(c){var d=$APP.y.j(c,0,null);
|
|
23
|
-
c=$APP.y.j(c,1,null);return""+$APP.H.g(V9.g?V9.g(d):V9.call(null,d))+$APP.H.g(V9.g?V9.g(c):V9.call(null,c))}}(a),$APP.
|
|
24
|
-
var
|
|
25
|
-
a,c)},function(a,b){var c=new $APP.G(null,4,["versions",new $APP.G(null,2,["nbb-nrepl",
|
|
26
|
-
$APP.
|
|
27
|
-
|
|
29
|
+
c=$APP.y.j(c,1,null);return""+$APP.H.g(V9.g?V9.g(d):V9.call(null,d))+$APP.H.g(V9.g?V9.g(c):V9.call(null,c))}}(a),$APP.rJ.h($APP.u,a))))+"e":null}};var G9=$APP.Wi.g(null),H9=$APP.Wi.g(null),J9=new $APP.G(null,1,["cider.nrepl.pprint/pprint",$APP.q9],null);$APP.Wi.g(!1);
|
|
30
|
+
var N9=$APP.Wi.g(null),M9=$APP.Wi.g(null),L9=$APP.Wi.g($APP.Ze),O9=$APP.Wi.g(K9),U9=$APP.rh([lla,sla,nla,pla,rla,ola,tla,vla,$APP.Lba],[T9,function(a,b){var c=new $APP.G(null,1,["status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);return b.h?b.h(a,c):b.call(null,a,c)},function(a,b){a=$APP.$e(a);var c=$APP.Vd.h(a,$APP.jl);return R9($APP.Lh.l(a,Q9,c,$APP.z([wla,!0])),b)},T9,function(a,b){var c=new $APP.G(null,2,["new-session",""+$APP.H.g($APP.II()),"status",new $APP.E(null,1,5,$APP.F,["done"],
|
|
31
|
+
null)],null);return b.h?b.h(a,c):b.call(null,a,c)},function(a,b){var c=new $APP.G(null,4,["versions",new $APP.G(null,2,["nbb-nrepl",F9("TODO"),"node",F9(process.version)],null),"aux",$APP.Ze,"ops",$APP.Wh($APP.jk.h($APP.Vh,$APP.Gh(U9)),$APP.On.g($APP.Ze)),"status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);return b.h?b.h(a,c):b.call(null,a,c)},T9,function(a,b){var c=$APP.$e(a);a=$APP.Vd.h(c,$APP.T);var d=function(){var f=$APP.c9.g(c);if($APP.p(f))return f;f=$APP.wm.g(c);return $APP.p(f)?f:""}();
|
|
32
|
+
a=$APP.Fi.g($APP.p(a)?a:""+$APP.H.g(I9()));a=$APP.Vd.h(S9(),a);a=$APP.O.l($APP.Ln.h($APP.Fc,$APP.Gh(a)),$APP.Gh($APP.ws.g(a)),$APP.z([$APP.Gh($APP.Xn.g(a))]));var e=$APP.Ln.h(function(f){return $APP.la(f,d)},$APP.xs.h(function(f){return f.indexOf("_DOT_")!=-1},$APP.jk.h($APP.H,a)));return($APP.la(d,"js/")?$APP.p($APP.Db(N9))?gla(d,c):Promise.resolve(fla(d)):Promise.resolve([])).then(function(f){f=$APP.vw.h(function(h){return new $APP.G(null,1,["candidate",h],null)},$APP.qJ.g($APP.uJ.g($APP.O.h(e,
|
|
33
|
+
Array.from(f)))));f=new $APP.G(null,2,["completions",f,"status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);return b.h?b.h(c,f):b.call(null,c,f)}).catch(function(){var f=new $APP.G(null,2,["completions",$APP.vw.h(function(h){return new $APP.G(null,1,["candidate",h],null)},$APP.qJ.g(e)),"status",new $APP.E(null,1,5,$APP.F,["done"],null)],null);return b.h?b.h(c,f):b.call(null,c,f)})},function(a,b){a=$APP.$e(a);var c=$APP.Vd.h(a,$APP.T);return R9($APP.Lh.j(a,$APP.T,$APP.p(c)?c:I9()),b)}]),xla=$APP.Wi.g(null);export const startServer=function(a){return Promise.resolve(null).then(function(){var b=function(){var h=$APP.La(a)?a.port:$APP.vJ.g(a);return $APP.p(h)?h:0}(),c=function(){var h=$APP.La(a)?a.host:ula.g(a);return $APP.p(h)?h:"127.0.0.1"}();(function(){var h=$APP.La(a)?a.log_level:qla.g(a);return $APP.p(h)?h:"info"})();var d=function(){var h=mla.g(a);return $APP.p(h)?h:$APP.La(a)?a.browserTransport:null}(),e=function(){var h=$APP.Wo.g(a);return $APP.p(h)?h:$APP.La(a)?a.nsState:null}(),f=esm_import$net.createServer($APP.bl.h(kla,
|
|
34
|
+
$APP.Ze));$APP.p(e)&&$APP.Cf(H9,e);$APP.p(d)?($APP.Cf(N9,d.send),$APP.Cf(M9,d.url),$APP.Cf(O9,dla)):$APP.Cf(O9,K9);f.listen(b,c,function(){var h=f.address(),k=h.port;h=h.address;$APP.tJ.l($APP.z(["nREPL server started on port "+$APP.H.g(k)+" on host "+$APP.H.g(h)+" - nrepl://"+$APP.H.g(h)+":"+$APP.H.g(k)]));try{return esm_import$fs.writeFileSync(".nrepl-port",""+$APP.H.g(k))}catch(m){return console.warn($APP.rq.h(" ",$APP.z(["Could not write .nrepl-port",m])))}});return $APP.Cf(xla,f)})};
|
|
35
|
+
export const handleBrowserMessage=function(a){a=typeof a==="string"?JSON.parse(a):a;var b=a.id,c=$APP.Vd.h($APP.Db(L9),b);if($APP.p(c)){$APP.Xi.j(L9,$APP.Zk,b);b=a.ex;if(b==null)return c=c.resolve,c.g?c.g(a):c.call(null,a);a=Error(""+$APP.H.g(b));c=c.reject;return c.g?c.g(a):c.call(null,a)}return null};export const evalString=function(a){return P9(a,new $APP.G(null,2,[$APP.at,""+$APP.H.g($APP.II()),D9,"http"],null)).then(function(b){return{value:b,ns:""+$APP.H.g(I9())}})};
|
package/lib/squint.core.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var squint;(squint||={}).core=(()=>{var ct=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var Te=Object.prototype.hasOwnProperty;var $e=(t,e)=>{for(var n in e)ct(t,n,{get:e[n],enumerable:!0})},Ge=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Oe(e))!Te.call(t,o)&&o!==n&&ct(t,o,{get:()=>e[o],enumerable:!(r=Ie(e,o))||r.enumerable});return t};var Be=t=>Ge(ct({},"__esModule",{value:!0}),t);var nu={};$e(nu,{Atom:()=>Wt,Cons:()=>Vt,Delay:()=>Uo,IIterable:()=>ht,IIterable__iterator:()=>Dt,LazySeq:()=>Qr,NaN_QMARK_:()=>io,PROTOCOL_SENTINEL:()=>wn,_:()=>Pe,_EQ_:()=>T,_GT_:()=>kt,_GT__EQ_:()=>Kt,_LT_:()=>ze,_LT__EQ_:()=>qe,_PLUS_:()=>Le,_STAR_:()=>Fe,__protocol_satisfies:()=>De,__toFn:()=>f,_iterator:()=>U,abs:()=>zo,aclone:()=>Yr,add_watch:()=>Cr,alength:()=>Lr,any_QMARK_:()=>ro,apply:()=>Zt,array:()=>kn,array_QMARK_:()=>et,aset:()=>Fr,assoc:()=>j,assoc_BANG_:()=>A,assoc_in:()=>It,assoc_in_BANG_:()=>Ot,atom:()=>gn,boolean$:()=>$r,boolean_QMARK_:()=>bo,bounded_count:()=>vo,butlast:()=>Nr,cat:()=>Qe,clj__GT_js:()=>Wo,coll_QMARK_:()=>fo,comp:()=>Tt,compare:()=>b,compare_and_set_BANG_:()=>Mn,complement:()=>L,concat:()=>ee,conj:()=>Gt,conj_BANG_:()=>V,cons:()=>sn,constantly:()=>Tn,contains_QMARK_:()=>zt,count:()=>P,counted_QMARK_:()=>Ae,cycle:()=>rr,dec:()=>He,dedupe:()=>fr,deref:()=>N,disj:()=>Je,disj_BANG_:()=>Bt,dissoc:()=>Ze,dissoc_BANG_:()=>Xe,distinct:()=>cr,distinct_QMARK_:()=>oo,doall:()=>Dr,dorun:()=>Pr,drop:()=>ut,drop_last:()=>kr,drop_while:()=>ae,empty:()=>nt,empty_QMARK_:()=>Ar,ensure_reduced:()=>le,es6_iterator:()=>W,even_QMARK_:()=>Ht,every_QMARK_:()=>pe,every_pred:()=>Wr,ex_cause:()=>ho,ex_data:()=>ao,ex_info:()=>_o,ex_message:()=>po,false_QMARK_:()=>Or,ffirst:()=>nn,filter:()=>Z,filterv:()=>fn,find:()=>Mo,first:()=>I,flatten:()=>jo,fn_QMARK_:()=>Mt,fnil:()=>gt,frequencies:()=>Sr,get:()=>w,get_in:()=>wt,group_by:()=>Rr,identical_QMARK_:()=>Jn,identity:()=>ne,ifn_QMARK_:()=>no,inc:()=>qt,int_QMARK_:()=>B,integer_QMARK_:()=>xo,interleave:()=>re,interpose:()=>qn,into:()=>fe,into_array:()=>ye,iterable:()=>s,iterate:()=>Xr,js_keys:()=>co,js_obj:()=>qr,juxt:()=>Zr,keep:()=>_r,keep_indexed:()=>dn,key:()=>ce,keys:()=>ge,last:()=>rn,lazy:()=>l,list:()=>te,list_QMARK_:()=>$n,list_STAR_:()=>Gn,long$:()=>qo,map:()=>Q,map_QMARK_:()=>xe,map_indexed:()=>pn,mapcat:()=>Bn,mapv:()=>tt,max:()=>de,max_key:()=>So,memoize:()=>Po,merge:()=>Vn,merge_with:()=>Un,meta:()=>go,min:()=>Ur,min_key:()=>Ro,mod:()=>Eo,name:()=>yn,nat_int_QMARK_:()=>mo,neg_QMARK_:()=>Br,neg_int_QMARK_:()=>wo,next:()=>ft,nil_QMARK_:()=>mn,nnext:()=>Hr,not:()=>dt,not_EQ_:()=>Xo,not_any_QMARK_:()=>wr,not_empty:()=>Ko,not_every_QMARK_:()=>pr,nth:()=>Lt,number_QMARK_:()=>we,object_QMARK_:()=>Ue,odd_QMARK_:()=>On,parse_double:()=>No,parse_long:()=>Qo,partial:()=>nr,partition:()=>ue,partition_all:()=>oe,partition_by:()=>Cn,partitionv:()=>Pn,partitionv_all:()=>Dn,peek:()=>Do,persistent_BANG_:()=>Oo,pop:()=>Yo,pos_QMARK_:()=>zr,pos_int_QMARK_:()=>yo,pr_str:()=>Ke,println:()=>tn,prn:()=>eu,quot:()=>Me,rand:()=>br,rand_int:()=>_e,rand_nth:()=>vr,random_uuid:()=>Vo,range:()=>En,re_find:()=>Sn,re_matches:()=>Rn,re_pattern:()=>Qn,re_seq:()=>uo,reduce:()=>S,reduce_kv:()=>vt,reduced:()=>X,reduced_QMARK_:()=>R,reductions:()=>un,regexp_QMARK_:()=>lo,rem:()=>Ne,remove:()=>ln,remove_watch:()=>Vr,repeat:()=>mt,repeatedly:()=>Er,replace:()=>gr,reset_BANG_:()=>Jt,reset_vals_BANG_:()=>vn,rest:()=>J,reverse:()=>dr,run_BANG_:()=>Jo,satisfies_QMARK_:()=>Ye,second:()=>en,select_keys:()=>Ln,seq:()=>E,seq_QMARK_:()=>Ft,seqable_QMARK_:()=>Pt,sequential_QMARK_:()=>st,set:()=>jn,set_QMARK_:()=>In,shuffle:()=>mr,some:()=>he,some_QMARK_:()=>Tr,some_fn:()=>Jr,sort:()=>At,sort_by:()=>yr,sorted_set:()=>To,split_at:()=>Kr,split_with:()=>jr,str:()=>xn,string_QMARK_:()=>it,subs:()=>me,subseq:()=>Bo,subvec:()=>Nn,swap_BANG_:()=>An,swap_vals_BANG_:()=>bn,system_time:()=>Wn,t:()=>eo,take:()=>rt,take_last:()=>Zn,take_nth:()=>er,take_while:()=>ot,to_array:()=>to,trampoline:()=>Ee,transduce:()=>Rt,transient$:()=>Io,tree_seq:()=>Re,true_QMARK_:()=>Ir,truth_:()=>h,type:()=>Lo,unreduced:()=>yt,update:()=>lr,update_BANG_:()=>bt,update_in:()=>ar,update_keys:()=>Co,update_vals:()=>ke,val:()=>se,vals:()=>so,vec:()=>k,vector:()=>H,vector_QMARK_:()=>Kn,volatile_BANG_:()=>Ho,vreset_BANG_:()=>tu,warn_on_lazy_reusage_BANG_:()=>cn,with_meta:()=>Ao,zero_QMARK_:()=>Gr,zipmap:()=>ko});function f(t){if(t==null||typeof t=="function")return t;const e=typeof t;return e==="string"?(n,r)=>w(n,t,r):e==="object"?(n,r)=>w(t,n,r):t}var Qt=Object.prototype.hasOwnProperty;function Nt(t,e,n){for(n of t.keys())if(K(n,e))return n}function K(t,e){if(t===e)return!0;var n,r,o;if(t&&e&&(n=t.constructor)===e.constructor){if(n===Array){if((r=t.length)===e.length)for(;r--&&K(t[r],e[r]););return r===-1}if(n===Set){if(t.size!==e.size)return!1;for(const u of t)if(o=u,o&&typeof o=="object"&&(o=Nt(e,o),!o)||!e.has(o))return!1;return!0}if(n===Map){if(t.size!==e.size)return!1;for(const u of t)if(o=u[0],o&&typeof o=="object"&&(o=Nt(e,o),!o)||!K(u[1],e.get(o)))return!1;return!0}if(!n||typeof t=="object"){r=0;for(const u in t)if(Qt.call(t,u)&&++r&&!Qt.call(e,u)||!(u in e)||!K(t[u],e[u]))return!1;return Object.keys(e).length===r}}return!1}function O(t,e){return t.every(function(n,r){return r===0||e(t[r-1],n)})}function T(...t){return O(t,(e,n)=>K(e,n))}function kt(...t){return O(t,(e,n)=>e>n)}function Kt(...t){return O(t,(e,n)=>e>=n)}function ze(...t){return O(t,(e,n)=>e<n)}function qe(...t){return O(t,(e,n)=>e<=n)}function Le(...t){return t.reduce((e,n)=>e+n,0)}function Fe(...t){return t.reduce((e,n)=>e*n,1)}function Pe(...t){return t.length==1?0-t[0]:t.reduce((e,n)=>e-n)}const De={};function Ye(t,e){return e==null?t[null]:typeof t=="symbol"?e[t]:e[t.__sym]}function Ce(t,e,n){return t.set(e,n),t}function Ve(t,e,n){return t[e]=n,t}function jt(t){switch(p(t)){case _:return Ce;case x:case d:return Ve}}function A(t,e,n,...r){if(r.length%2!==0)throw new Error("Illegal argument: assoc expects an odd number of arguments.");switch(p(t)){case _:t.set(e,n);for(let o=0;o<r.length;o+=2)t.set(r[o],r[o+1]);break;case x:case d:t[e]=n;for(let o=0;o<r.length;o+=2)t[r[o]]=r[o+1];break;default:throw new Error(`Illegal argument: assoc! expects a Map, Array, or Object as the first argument, but got ${typeof t}.`)}return t}function $(t){switch(p(t)){case _:return new Map(t);case m:return new t.constructor(t);case x:return[...t];case d:return{...t};default:throw new Error(`Don't know how to copy object of type ${typeof t}.`)}}function j(t,e,n,...r){t||(t={});const o=$(t);return A(o,e,n,...r),o}const _=1,x=2,d=3,M=4,m=5,D=6;function Y(t){switch(t){case _:return new Map;case x:return[];case d:return{};case M:return new G;case m:return new Set;case D:return l(function*(){})}}function C(t){return t.constructor===Object}function Ue(t){return t!=null&&C(t)}function p(t){if(t!=null){if(C(t))return d;if(t instanceof Map)return _;if(t instanceof Set)return m;if(t instanceof G)return M;if(Array.isArray(t))return x;if(t instanceof _t)return D;if(t instanceof z)return m;if(t instanceof Object)return d}}function We(t,e,n,r,o){r=k(r),n=n||{};const u=p(n);if(u!==_&&u!==x&&u!==d)throw new Error(`Illegal argument: ${e} expects the first argument to be a Map, Array, or Object.`);const i=[n];let c=n;for(let a=0;a<r.length-1;a+=1){const g=r[a];let y;c instanceof Map?y=c.get(g):y=c[g],y||(y=Y(u)),i.push(y),c=y}i.push(o);for(let a=i.length-2;a>=0;a-=1)i[a]=t(i[a],r[a],i[a+1]);return i[0]}function It(t,e,n){return We(j,"assoc-in",t,e,n)}function Ot(t,e,n){e=k(e);var r=t;const o=p(t);for(const u of e.splice(0,e.length-1)){let i=w(r,u);i===void 0&&(i=Y(o),A(r,u,i)),r=i}return A(r,e[e.length-1],n),t}function Tt(...t){if(t=t.map(f),t.length===0)return ne;if(t.length===1)return t[0];const[e,...n]=t.slice().reverse();return function(...r){let o=e(...r);for(const u of n)o=u(o);return o}}function $t(t,e){for(const n of e)t.add(n);return t}function V(...t){if(t.length===0)return H();const[e,...n]=t;let r=e;switch(r==null&&(r=[]),p(r)){case m:$t(r,n);break;case M:r.unshift(...n.reverse());break;case x:r.push(...n);break;case _:for(const o of n)Array.isArray(o)?r.set(o[0],o[1]):s(o).forEach(u=>{r.set(u[0],u[1])});break;case d:for(const o of n)Array.isArray(o)?r[o[0]]=o[1]:Object.assign(r,o);break;default:throw new Error("Illegal argument: conj! expects a Set, Array, List, Map, or Object as the first argument.")}return r}function Gt(...t){if(t.length===0)return H();const[e,...n]=t;let r=e;r==null&&(r=te());let o,u;switch(p(r)){case m:return r instanceof z?$t(new r.constructor(r),n):new r.constructor([...r,...n]);case M:return new G(...n.reverse(),...r);case x:return[...r,...n];case _:o=new Map(r);for(const i of n)Array.isArray(i)?o.set(i[0],i[1]):s(i).forEach(c=>{o.set(c[0],c[1])});return o;case D:return l(function*(){yield*n,yield*r});case d:u={...r};for(const i of n)Array.isArray(i)?u[i[0]]=i[1]:Object.assign(u,i);return u;default:throw new Error("Illegal argument: conj expects a Set, Array, List, Map, or Object as the first argument.")}}function Bt(t,...e){for(const n of e)t.delete(n);return t}function Je(t,...e){const n=new t.constructor([...t]);return Bt(n,...e)}function zt(t,e){switch(p(t)){case m:case _:return t.has(e);case void 0:return!1;default:return e in t}}function Xe(t,...e){for(const n of e)delete t[n];return t}function Ze(t,...e){if(!t)return;if(e.length===0)return t;const n=$(t);switch(p(t)){case _:for(const r of e)n.delete(r);break;default:for(const r of e)delete n[r];break}return n}function qt(t){return t+1}function He(t){return t-1}function tn(...t){console.log(...t)}function Lt(t,e,n){if(t){var r=void 0;if(Array.isArray(t))r=t[e];else{const o=s(t);let u=0;for(const i of o)if(u++==e){r=i;break}}if(r!==void 0)return r}return n}function w(t,e,n=void 0){if(t==null)return n;let r;if(C(t))return r=t[e],r===void 0?n:r;let o;switch(p(t)){case m:t.has(e)&&(r=e);break;case _:r=t.get(e);break;case x:r=t[e];break;default:if(o=t.get,typeof o=="function")try{r=t.get(e);break}catch{}r=t[e];break}return r!==void 0?r:n}function Ft(t){return t!=null&&!!t[Symbol.iterator]}const st=Ft;function Pt(t){return t==null||!!t[Symbol.iterator]}function s(t){if(t==null)return[];if(Pt(t))return t;if(t instanceof Object)return Object.entries(t);throw new TypeError(`${t} is not iterable`)}const ht=Symbol("Iterable"),Dt=Symbol.iterator;function U(t){return t[Symbol.iterator]()}const W=U;function E(t){if(t==null)return t;const e=s(t);return e.length===0||e.size===0||e[Symbol.iterator]().next().done?null:e}function I(t){const[e]=s(t);return e}function en(t){const[e,n]=s(t);return n}function nn(t){return I(I(t))}function J(t){return l(function*(){let e=!0;for(const n of s(t))e?e=!1:yield n})}class q{value;constructor(e){this.value=e}_deref(){return this.value}}function rn(t){t=s(t);let e;switch(p(t)){case x:return t[t.length-1];default:for(const n of t)e=n;return e}}function X(t){return new q(t)}function R(t){return t instanceof q}function S(t,e,n){t=f(t);let r,o;if(arguments.length===2){const u=s(e)[Symbol.iterator](),i=u.next();i.done?o=t():o=i.value,r=u}else o=e,r=s(n);if(o instanceof q)return o.value;for(const u of r)if(o=t(o,u),o instanceof q){o=o.value;break}return o}function*on(t,e){const n=e.next();n.done?yield t():yield*Yt(t,n.value,e)}function*Yt(t,e,n){let r=e,o=n;for(;;){if(R(r)){yield r.value;return}else yield r;const u=o.next();if(u.done)break;r=t(r,u.value)}}function un(t,e,n){return t=f(t),arguments.length===2?l(function*(){yield*on(t,s(e)[Symbol.iterator]())}):l(function*(){yield*Yt(t,e,s(n)[Symbol.iterator]())})}var Ct=!1;function cn(){Ct=!0}class _t{constructor(e){this.gen=e,this.usages=0}[Symbol.iterator](){if(this.usages++,this.usages>=2&&Ct)try{throw new Error}catch(e){console.warn("Re-use of lazy value",e.stack)}return this.gen()}}_t.prototype[ht]=!0;function l(t){return new _t(t)}class Vt{constructor(e,n){this.x=e,this.coll=n}*[Symbol.iterator](){yield this.x,yield*s(this.coll)}}function sn(t,e){return new Vt(t,e)}function Q(t,...e){switch(t=f(t),e.length){case 0:return n=>(...r)=>{switch(r.length){case 0:return n();case 1:return n(r[0]);case 2:return n(r[0],t(r[1]));default:return n(r[0],t(...r.slice(1)))}};case 1:return l(function*(){for(const n of s(e[0]))yield t(n)});default:return l(function*(){const n=e.map(r=>W(s(r)));for(;;){const r=[];for(const o of n){const u=o.next();if(u.done)return;r.push(u.value)}yield t(...r)}})}}function Ut(t){return e=>(...n)=>{switch(n.length){case 0:return e();case 1:return e(n[0]);case 2:{const r=n[0],o=n[1];return h(t(o))?e(r,o):r}}}}function Z(t,e){return arguments.length===1?Ut(t):(t=f(t),l(function*(){for(const n of s(e))h(t(n))&&(yield n)}))}function fn(t,e){return[...Z(t,e)]}function ln(t,e){return arguments.length===1?Ut(L(t)):Z(L(t),e)}function an(t){return e=>{let n=-1;return(...r)=>{switch(r.length){case 0:return e();case 1:return e(r[0]);case 2:return e(r[0],t((n=n+1,n),r[1]))}}}}function pn(t,e){return t=f(t),arguments.length===1?an(t):l(function*(){let n=0;for(const r of s(e))yield t(n,r),n++})}function hn(t,e){return t=f(t),l(function*(){let n=0;for(const r of s(e)){const o=t(n,r);h(o)&&(yield o),n++}})}function _n(t){return e=>{let n=-1;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1];n++;const c=t(n,i);return c==null?u:e(u,c)}}}}function dn(t,e){return arguments.length===1?_n(t):hn(t,e)}function xn(...t){return t.join("")}function yn(t){if(typeof t=="string")return t;throw new Error("Doesn't support name: "+typeof t)}function dt(t){return!h(t)}function mn(t){return t==null}const wn={};class Wt{constructor(e){this.val=e,this._watches={},this._deref=()=>this.val,this._hasWatches=!1,this._reset_BANG_=n=>{const r=this.val;if(this.val=n,this._hasWatches)for(const o of Object.entries(this._watches)){const u=o[0],i=o[1];i(u,this,r,n)}return n},this._add_watch=(n,r)=>{this._watches[n]=r,this._hasWatches=!0},this._remove_watch=n=>{delete this._watches[n]}}}function gn(t){return new Wt(t)}function N(t){return t._deref()}function Jt(t,e){t._reset_BANG_(e)}function An(t,e,...n){e=f(e);const r=e(N(t),...n);return Jt(t,r),r}function bn(t,e,...n){const r=N(t);e=f(e);const o=e(r,...n);return t._reset_BANG_(o),[r,o]}function vn(t,e){const n=N(t);return t._reset_BANG_(e),[n,e]}function Mn(t,e,n){return N(t)===e?(t._reset_BANG_(n),!0):!1}function En(t,e,n){return l(function*(){let r=t,o=e,u=n;e===void 0&&(r=0,o=t);let i=r||0;u=n??1;const c=u>=0;for(;o===void 0||c&&i<o||!c&&o<i;)yield i,i+=u})}function Rn(t,e){const n=t.exec(e);return n&&e===n[0]?n.length===1?n[0]:n:null}function Sn(t,e){if(it(e)){const n=t.exec(e);return n!=null?n.length===1?n[0]:[...n]:null}else throw new TypeError("re-find must match against a string.")}function Qn(t){if(t instanceof RegExp)return t;const e=t.match(/^\(\?([dgimsuvy]*)\)/);return e?new RegExp(t.slice(e[0].length),e[1]):new RegExp(t)}function Nn(t,e,n){return t.slice(e,n)}function H(...t){return t}const kn=H;function Kn(t){return p(t)===x}function tt(...t){if(t.length===2){const[r,o]=t,u=f(r),i=s(o);if(Array.isArray(i)){const c=new Array(i.length);for(var e=0;e<i.length;e++)c[e]=u(i[e]);return c}else{var n=[];for(const c of i)n.push(u(c));return n}}return[...Q(...t)]}function k(t){return et(t)?t:[...s(t)]}function jn(t){return new Set(s(t))}function In(t){return p(t)===m}const Xt=Symbol("IApply__apply");function Zt(t,...e){t=f(t);const n=e.slice(0,e.length-1),r=s(e[e.length-1]),o=t[Xt];return o?o(...n,r):t(...n,...r)}function Ht(t){return t%2==0}function On(t){return!Ht(t)}function L(t){return t=f(t),(...e)=>dt(t(...e))}function Tn(t){return(...e)=>t}class G extends Array{constructor(...e){super(),this.push(...e)}}function $n(t){return p(t)===M}function te(...t){return new G(...t)}function Gn(...t){const e=t.pop();return new G(...t,...s(e))}function et(t){return Array.isArray(t)}function xt(t){return l(function*(){for(const e of t)yield*s(e)})}function ee(...t){return xt(t)}ee[Xt]=t=>xt(t);function Bn(t,...e){if(e.length===0)return Tt(Q(t),Qe);{const n=Q(t,...e);return xt(n)}}function ne(t){return t}function re(...t){return l(function*(){const e=t.map(n=>W(s(n)));for(;;){const n=[];for(const r of e){const o=r.next();if(o.done)return;n.push(o.value)}yield*n}})}function zn(t){return e=>{let n=!1;return(...r)=>{switch(r.length){case 0:return e();case 1:return e(r[0]);case 2:if(n){const o=e(r[0],t);return R(o)?o:e(o,r[1])}else return n=!0,e(r[0],r[1])}}}}function qn(t,e){return arguments.length===1?zn(t):ut(1,re(mt(t),e))}function Ln(t,e){const n=p(t),r=Y(n)||{};for(const o of e){const u=w(t,o);u!=null&&A(r,o,u)}return r}function yt(t){return R(t)?N(t):t}function Fn(t){return e=>{let n=[];return(...r)=>{let o,u;switch(r.length){case 0:return e();case 1:return o=r[0],n.length!==0&&(u=[...n],n=[],o=yt(e(o,u))),e(o);case 2:return o=r[0],n.push(r[1]),t===n.length?(u=[...n],n=[],e(o,u)):o}}}}function oe(t,...e){if(arguments.length===1)return Fn(t);let n=t,r=e[0];return e.length===2&&([n,r]=e),ie(t,n,[],r,!0)}function ue(t,...e){let n=t,r=[],o=e[0];return e.length===2?[n,o]=e:e.length>2&&([n,r,o]=e),ie(t,n,r,o,!1)}const Pn=ue,Dn=oe;function ie(t,e,n,r,o){return l(function*(){let u=[],i=0;for(const c of s(r))i<t&&(u.push(c),u.length===t&&(yield u,u=e<t?u.slice(e):[])),i++,i===e&&(i=0);u.length>0&&(u.length===t||o?yield u:n.length&&(u.push(...n.slice(0,t-u.length)),yield u))})}function Yn(t){return e=>{let n=[];const r={};let o=r;return(...u)=>{const i=u.length;if(i===0)return e();if(i===1){let c=u[0];if(n.length!==0){const a=[...n];n=[],c=yt(e(c,a))}return e(c)}if(i===2){const c=u[0],a=u[1],g=o,y=t(a);if(o=y,g===r||y===g)return n.push(a),c;{const je=[...n];n=[];const St=e(c,je);return R(St)||n.push(a),St}}}}}function Cn(t,e){return t=f(t),arguments.length===1?Yn(t):l(function*(){const n=W(e),r=n.next();r.done&&(yield*null);const o=r.value;let u=t(o),i=[o],c=[];for(;;){const a=n.next();if(a.done){yield i;break}const g=a.value,y=t(g);u==y?i.push(g):(yield i,c.push(g),i=c,u=y,c=[])}})}function nt(t){const e=p(t);if(e!=null)return Y(e);throw new Error(`Can't create empty of ${typeof t}`)}function Vn(...t){const e=t[0];let n;return e==null?n={}:n=fe(nt(e),e),V(n,...t.slice(1))}function ce(t){return t[0]}function se(t){return t[1]}function Un(t,...e){t=f(t);var n=!1;for(const r of e)if(r!=null){n=!0;break}if(n){const r=(u,i)=>{const c=ce(i),a=se(i);return zt(u,c)?j(u,c,t(w(u,c),a)):j(u,c,a)};return S((u,i)=>S(r,u||{},E(i)),e)}else return null}function Wn(){return performance.now()}function fe(...t){let e,n,r,o,u;switch(t.length){case 0:return[];case 1:return t[0];case 2:return Gt(t[0]??[],...s(t[1]));case 3:return e=t[0],n=t[1],r=t[2],o=$(e),u=(i,c)=>c===void 0?i:V(i,c),Rt(n,u,o,r);default:throw TypeError(`Invalid arity call of into: ${t.length}`)}}function Jn(t,e){return t===e}function mt(...t){if(t.length==0||t.length>2)throw new Error(`Invalid arity: ${t.length}`);return{[ht]:!0,[Dt]:t.length==1?function*(){const e=t[0];for(;;)yield e}:function*(){const[e,n]=t;for(var r=0;r<e;r++)yield n}}}function le(t){return R(t)?t:X(t)}function Xn(t){return e=>{let n=t;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1){const u=r[0];return e(u)}if(o===2){let u=r[0];const i=r[1],c=n,a=(n=n-1,n);return c>0&&(u=e(u,i)),a>0?u:le(u)}}}}function rt(t,e){return arguments.length===1?Xn(t):l(function*(){let n=t-1;for(const r of s(e))if(n-->=0&&(yield r),n<0)return})}function Zn(t,e){if(t<=0)return null;if(Array.isArray(e))return E(e.slice(-t));{const n=new Array(t);let r=0;for(const o of s(e))n[r%t]=o,r++;return r%t!==0&&r>=t?n.slice(r%t).concat(n.slice(0,r%t)):(n.length=Math.min(r,t),n)}}function Hn(t){return e=>(...n)=>{const r=n.length;if(r===0)return e();if(r===1)return e(n[0]);if(r===2){const o=n[0],u=n[1];return h(t(u))?e(o,u):X(o)}}}function ot(t,e){return t=f(t),arguments.length===1?Hn(t):l(function*(){for(const n of s(e))if(h(t(n)))yield n;else return})}function tr(t){return e=>{let n=-1;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1];return n++,Ne(n,t)===0?e(u,i):u}}}}function er(t,e){return arguments.length===1?tr(t):t<=0?mt(I(e)):l(function*(){let n=0;for(const r of s(e))n%t===0&&(yield r),n++})}function nr(t,...e){return t=f(t),function(...n){return t(...e,...n)}}function rr(t){return l(function*(){for(;;)yield*t})}function or(t){return e=>{let n=t;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1],c=n;return n--,c>0?u:e(u,i)}}}}function ut(t,e){return arguments.length===1?or(t):l(function*(){const n=U(s(e));for(let r=0;r<t;r++)n.next();yield*n})}function ur(t){return e=>{let n=!0;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=n,i=r[0],c=r[1];return u&&h(t(c))?i:(n=null,e(i,c))}}}}function ae(t,e){return t=f(t),arguments.length===1?ur(t):l(function*(){const n=U(s(e));for(;;){const r=n.next();if(r.done)break;const o=r.value;if(!h(t(o))){yield o;break}}yield*n})}function ir(){return t=>{const e=new Set;return(...n)=>{const r=n.length;if(r===0)return t();if(r===1)return t(n[0]);if(r===2){const o=n[0],u=n[1];return e.has(u)?o:(e.add(u),t(o,u))}}}}function cr(t){return arguments.length===0?ir():l(function*(){const e=new Set;for(const n of s(t))e.has(n)||(yield n),e.add(n)})}const F=Symbol("dedupe-none");function sr(){return t=>{let e=F;return(...n)=>{const r=n.length;if(r===0)return t();if(r===1)return t(n[0]);if(r===2){const o=n[0],u=n[1],i=e!==F&&h(T(e,u));return e=u,i?o:t(o,u)}}}}function fr(t){return arguments.length===0?sr():l(function*(){let e=F;for(const n of s(t))(e===F||!h(T(e,n)))&&(yield n),e=n})}function lr(t,e,n,...r){return n=f(n),j(t,e,n(w(t,e),...r))}function wt(t,e,n){let r=t;for(const o of e)r=w(r,o);return r===void 0?n:r}function ar(t,e,n,...r){return n=f(n),It(t,e,n(wt(t,e),...r))}function gt(t,e,...n){return t=f(t),function(r,...o){return r?t(r,...n,...o):t(e,...n,...o)}}function pe(t,e){t=f(t);for(const n of s(e))if(!t(n))return!1;return!0}function pr(t,e){return!pe(t,e)}function hr(t){return e=>(...n)=>{const r=n.length;if(r===0)return e();if(r===1)return e(n[0]);if(r===2){const o=n[0],u=n[1],i=t(u);return i==null?o:e(o,i)}}}function _r(t,e){return t=f(t),arguments.length===1?hr(t):l(function*(){for(const n of s(e)){const r=t(n);h(r)&&(yield r)}})}function dr(t){return t=s(t),[...t].reverse()}function At(t,e){return arguments.length===1&&(e=t,t=void 0),t=f(t),e=s(e),[...e].sort(t||b)}function xr(t){return t===b?t:(e,n)=>{const r=t(e,n);return we(r)?r:r?-1:t(n,e)?1:0}}function yr(t,e,n){return arguments.length===2&&(n=e,e=b),t=f(t),e=f(e),At((r,o)=>{const u=xr(e),i=t(r),c=t(o);return u(i,c)},n)}function mr(t){const e=[...t];let n=e.length;for(;n;){const r=Math.floor(Math.random()*n--),o=e[n];e[n]=e[r],e[r]=o}return e}function he(t,e){t=f(t);for(const n of s(e)){const r=t(n);if(h(r))return r}}function wr(t,e){return t=f(t),!he(t,e)}function gr(t,e){return(Array.isArray(e)?tt:Q)(r=>{const o=t[r];return o!==void 0?o:r},e)}function Ar(t){return!E(t)}function br(t){return t===void 0&&(t=1),Math.random()*t}function _e(t){return Math.floor(Math.random()*t)}function vr(t){const e=_e(P(t));return Lt(t,e)}function Mr(t){return l(function*(){for(;;)yield t()})}function Er(t,e){arguments.length===1&&(e=t,t=void 0);const n=Mr(e);return t?rt(t,n):n}function bt(t,e,n,...r){n=f(n);const o=w(t,e);return A(t,e,n(o,...r))}function Rr(t,e){t=f(t);const n={};for(const r of s(e)){const o=t(r);bt(n,o,gt(V,[]),r)}return n}function Sr(t){const e={},n=gt(qt,0);for(const r of s(t))bt(e,r,n);return e}class Qr{constructor(e){this.f=e,this.res=void 0}*[Symbol.iterator](){this.res===void 0&&(this.res=this.f(),this.f=null),yield*s(this.res)}}function Nr(t){const e=[...s(t)];return e.pop(),e.length>0?e:null}function kr(...t){const[e,n]=t.length>1?t:[1,t[0]];return Q((r,o)=>r,n,ut(e,n))}function Kr(t,e){return[rt(t,e),ut(t,e)]}function jr(t,e){return[ot(t,e),ae(t,e)]}function P(t){if(!t)return 0;const e=t.length||t.size;if(typeof e=="number")return e;let n=0;for(const r of s(t))n++;return n}function Ir(t){return t===!0}function Or(t){return t===!1}function Tr(t){return t!=null}function $r(t){return!!t}function Gr(t){return t===0}function Br(t){return t<0}function zr(t){return t>0}function qr(...t){let e=0;const n={};for(;!(e>=t.length);)n[t[e]]=t[e+1],e=e+2;return n}function Lr(t){return t.length}function Fr(t,e,n,...r){if(r.length==0)return t[e]=n,n;{const o=[e,n,...r],u=o[o.length-1];let i=t,c=0;const a=o.length-2;for(;c<a;c++)i=i[o[c]];return i[o[c]]=u,n}}function Pr(t){for(const e of s(t));return null}function Dr(t){return k(t)}function Yr(t){return[...t]}function Cr(t,e,n){return t._add_watch(e,n)}function Vr(t,e){return t._remove_watch(e)}function vt(t,e,n){if(!n)return e;var r=e;for(const o of s(n))r=t(r,o[0],o[1]);return r}function de(t,e,...n){return e==null?t:Math.max(t,e,...n)}function Ur(t,e,...n){return e==null?t:Math.min(t,e,...n)}function xe(t){return t==null?!1:!!(C(t)||t instanceof Map)}function Wr(...t){return(...e)=>{for(const n of t)for(const r of e)if(!n(r))return!1;return!0}}function Jr(...t){return(...e)=>{for(const n of t)for(const r of e){const o=n(r);if(o)return o}}}function ye(t,e){return k(e||t)}function Xr(t,e){var n=e;return l(function*(){for(;;)yield n,n=t(n)})}function Zr(...t){return t=t.map(f),(...e)=>{const n=[];for(const r of t)n.push(r(...e));return n}}function ft(t){if(Array.isArray(t)){const e=t.slice(1);return e.length>0?e:null}else return E(J(t))}function Hr(t){return ft(ft(t))}function b(t,e){if(t===e)return 0;{if(t==null)return-1;if(e==null)return 1;const n=typeof t,r=typeof e;if(n==="number"&&r==="number"||n==="string"&&r==="string")return t===e?0:t<e?-1:1;if(Array.isArray(t)&&Array.isArray(e)){if(t.length<e.length)return-1;if(t.length>e.length)return 1;for(let o=0;o<t.length;o++){const u=b(t[o],e[o]);if(u!=0)return u}return 0}else throw new Error(`comparing ${n} to ${r}`)}}function to(t){return ye(t)}function h(t){return t!=null&&t!==!1}const eo=h;function me(t,e,n){return t.substring(e,n)}function Mt(t){return typeof t=="function"}function no(t){return Mt(t)}function ro(t){return!0}function oo(t,...e){if(e.length===0)return!0;const n=[t];for(const r of e){for(const o of n)if(h(T(o,r)))return!1;n.push(r)}return!0}function uo(t,e){return l(function*(){for(;;){const n=t.exec(e);if(n){const r=n[0];yield n.length===1?r:k(n);const u=n.index+de(1,r.length);if(u>e.length)break;e=me(e,u)}else break}})}function io(t){return Number.isNaN(t)}function we(t){return typeof t=="number"}function ge(t){if(t==null)return;switch(p(t)){case d:return Object.keys(t);case _:return Array.from(t.keys())}}function co(t){return ge(t)}function so(t){if(t==null)return;switch(p(t)){case d:return Object.values(t);case _:return Array.from(t.values())}}function it(t){return typeof t=="string"}function fo(t){return p(t)!=null}function lo(t){return t instanceof RegExp}class Et extends Error{constructor(e,n,r){super(e),this._data=n,this._cause=r}}function ao(t){return t instanceof Et?t._data:null}function po(t){return t instanceof Error?t.message:null}function ho(t){return t instanceof Et?t._cause:null}function _o(t,e,n){return new Et(t,e,n)}function B(t){return Number.isInteger(t)}const xo=B;function yo(t){return B(t)&&t>0}function mo(t){return B(t)&&t>-1}function wo(t){return B(t)&&t<0}const lt=Symbol("meta");function go(t){return t instanceof Object?t[lt]:null}function Ao(t,e){if(typeof t=="function"){const r=function(...o){return t.apply(this,o)};return r[lt]=e,r}const n=$(t);return n[lt]=e,n}function bo(t){return t===!0||t===!1}function Ae(t){switch(p(t)){case x:case _:case d:case M:case m:return!0}return!1}function vo(t,e){return Ae(e)?P(e):P(rt(t,e))}function Mo(t,e){const n=w(t,e);if(n!==void 0)return[e,n]}function Eo(t,e){return(t%e+e)%e}function Ro(t,e,...n){if(n.length==0)return e;var r=t(e),o=e;return n.forEach(u=>{var i=t(u);i<=r&&(r=i,o=u)}),o}function So(t,e,...n){if(n.length==0)return e;var r=t(e),o=e;return n.forEach(u=>{var i=t(u);i>=r&&(r=i,o=u)}),o}function be(t){throw new Error(`Expected string, got: ${typeof t}`)}function Qo(t){if(it(t)){if(/^[+-]?\d+$/.test(t)){const e=parseInt(t);if(Number.MIN_SAFE_INTEGER<=e<=Number.MAX_SAFE_INTEGER)return e}return null}return be(t)}function No(t){if(it(t))return/^[\\x00-\\x20]*[+-]?NaN[\\x00-\\x20]*$/.test(t)?NaN:/^[\\x00-\\x20]*[+-]?(Infinity|((\d+\.?\d*|\.\d+)([eE][+-]?\d+)?)[dDfF]?)[\\x00-\\x20]*$/.test(t)?parseFloat(t):null;throw new be(t)}function ve(t){return t>=0?Math.floor(t):Math.ceil(t)}function Me(t,e){const n=t%e;return ve((t-n)/e)}function Ee(t,...e){if(e.length==0)for(;;){const n=t();if(h(Mt(n))){t=n;continue}else return n}else return Ee(function(){return Zt(t,e)})}function Rt(t,...e){switch(e.length){case 2:{const n=e[0],r=e[1];return Rt(t,n,n(),r)}default:{let n=e[0];const r=e[1],o=e[2];n=t(n);const u=S(n,r,o);return n(u)}}}function ko(t,e){const n={},r=s(t)[Symbol.iterator](),o=s(e)[Symbol.iterator]();let u,i;for(;u=r.next(),!(u.done||(i=o.next(),i.done));)n[u.value]=i.value;return n}function Ko(t){return E(t)?t:null}function Re(t,e,n){const r=function*(o){if(yield o,h(t(o)))for(const u of s(e(o)))yield*r(u)};return l(function*(){yield*r(n)})}function jo(t){return Z(L(st),J(Re(st,E,t)))}function Io(t){return $(t)}function Oo(t){return Object.freeze(t)}class z{constructor(e){e instanceof z||(e=At(e));const r=new Set(e);this._elts=[...r],this._set=r}add(e){if(this._set.has(e))return this;const n=this._elts;let r=!1;for(let o=0;o<n.length;o++)if(b(e,n[o])<=0){n.splice(o,0,e),r=!0;break}return r?this._set=new Set(n):(n.push(e),this._set.add(e)),this.size=n.length,this}delete(e){if(!this._set.has(e))return this;const n=this._elts,r=n.indexOf(e);return n.splice(r,1),this._set=new Set(n),this.size=n.length,this}has(e){return this._set.has(e)}keys(){return this.values()}values(){return this._elts[Symbol.iterator]()}entries(){return this._set.entries()}forEach(...e){return this.set.forEach(...e)}clear(){this._elts=[],this._set=new Set(this._elts)}[Symbol.iterator](){return this.keys()}}function To(...t){return new z(t)}function at(t,e,n){return r=>e(b(r,n),0)}function Se(t,e,n=!0){let r=0;for(;r<t.length&&b(e,t[r])>0;r++);return r}function $o([t,e,n]){const r=at(t,e,n);if(e===kt||e===Kt){const o=[...t],u=Se(o,n,!0);return o.splice(0,u),r(o[0])||o.splice(0,1),o}else return[...ot(r,t)]}function Go([t,e,n,r,o]){const u=[...t],i=Se(u,n,!0);u.splice(0,i);const c=at(t,r,o);return at(t,e,n)(u[0])||u.splice(0,1),[...ot(c,u)]}function Bo(...t){if(t.length===3)return $o(t);if(t.length===5)return Go(t)}function zo(t){return Math.abs(t)}function qo(t){return ve(t)}function Lo(t){return t!=null&&t.constructor}function Fo(t){return(e,n)=>{const r=t(e,n);return R(r)?X(r):r}}function Qe(t){return t=Fo(t),(...e)=>{switch(e.length){case 0:return t();case 1:return t(e[0]);case 2:return S(t,e[0],e[1])}}}function Ne(t,e){const n=Me(t,e);return t-e*n}function Po(t){const e=new Map;return(...n)=>{const r=[n.length,...n],o=wt(e,r);if(o===void 0){const u=t(...n);return Ot(e,r,u),u}else return o}}function Do(t){return et(t)?t[t.length-1]:I(t)}function Yo(t){if(et(t)){const e=[...t];return e.pop(),e}else return J(t)}function Co(t,e){const n=nt(t),r=jt(t)||A;return vt((o,u,i)=>r(o,e(u),i),n,t),n}function ke(t,e){const n=nt(t),r=jt(t)||A;return vt((o,u,i)=>r(o,u,e(i)),n,t),n}function Vo(){return crypto.randomUUID()}class Uo{constructor(e){this.f=e}_deref(){return this.realized?this.v:(this.v=this.f(),this.realized=!0,this.v)}}function pt(t,e){if(e.has(t))return t;if(e.add(t),xe(t))return ke(t,r=>pt(r,e));const n=p(t);return n&&n!=d?tt(r=>pt(r,e),t):t}function Wo(t){return pt(t,new Set)}function Jo(t,e){S((n,r)=>t(r),null,e)}function Xo(...t){return dt(T(...t))}class Zo{constructor(e){this.v=e}_deref(){return this.v}}function Ho(t){return new Zo(t)}function tu(t,e){t.v=e}function v(t,e=new WeakSet){if(t==null)return"nil";if(typeof t=="number"||typeof t=="boolean")return String(t);if(typeof t=="string")return JSON.stringify(t);if(typeof t=="bigint")return`${t}N`;if(typeof t=="object"){if(e.has(t))return"#object[circular]";e.add(t);const n=p(t);let r;switch(n){case x:return`[${t.map(o=>v(o,e)).join(" ")}]`;case m:return`#{${Array.from(t).map(o=>v(o,e)).join(" ")}}`;case _:return`#js/Map {${Array.from(t.entries()).map(([o,u])=>`${v(o,e)} ${v(u,e)}`).join(", ")}}`;case D:case M:return`(${tt(o=>`${v(o,e)}`,t).join(", ")})`;default:return t.constructor&&t.constructor!==Object?`#<${t.constructor.name}>`:(r=Object.keys(t),`{${r.map(o=>`:${o} ${v(t[o],e)}`).join(", ")}}`)}}return`#object[${t.constructor.name}]`}function Ke(...t){return t.map((e,n)=>v(e)).join(" ")}function eu(...t){return console.log(Ke(...t))}return Be(nu);})();
|
|
1
|
+
var squint;(squint||={}).core=(()=>{var ct=Object.defineProperty;var Ie=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var Te=Object.prototype.hasOwnProperty;var $e=(t,e)=>{for(var n in e)ct(t,n,{get:e[n],enumerable:!0})},Ge=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Oe(e))!Te.call(t,o)&&o!==n&&ct(t,o,{get:()=>e[o],enumerable:!(r=Ie(e,o))||r.enumerable});return t};var Be=t=>Ge(ct({},"__esModule",{value:!0}),t);var nu={};$e(nu,{Atom:()=>Wt,Cons:()=>Vt,Delay:()=>Uo,IIterable:()=>ht,IIterable__iterator:()=>Dt,LazySeq:()=>Nr,NaN_QMARK_:()=>io,PROTOCOL_SENTINEL:()=>wn,_:()=>Pe,_EQ_:()=>T,_GT_:()=>kt,_GT__EQ_:()=>Kt,_LT_:()=>ze,_LT__EQ_:()=>qe,_PLUS_:()=>Le,_STAR_:()=>Fe,__protocol_satisfies:()=>De,__toFn:()=>f,_iterator:()=>U,abs:()=>zo,aclone:()=>Yr,add_watch:()=>Cr,alength:()=>Lr,any_QMARK_:()=>ro,apply:()=>Zt,array:()=>kn,array_QMARK_:()=>et,aset:()=>Fr,assoc:()=>j,assoc_BANG_:()=>A,assoc_in:()=>Ot,assoc_in_BANG_:()=>Tt,atom:()=>gn,boolean$:()=>$r,boolean_QMARK_:()=>bo,bounded_count:()=>vo,butlast:()=>Qr,cat:()=>Ne,clj__GT_js:()=>Wo,coll_QMARK_:()=>fo,comp:()=>$t,compare:()=>b,compare_and_set_BANG_:()=>Mn,complement:()=>L,concat:()=>ee,conj:()=>Bt,conj_BANG_:()=>V,cons:()=>sn,constantly:()=>Tn,contains_QMARK_:()=>qt,count:()=>P,counted_QMARK_:()=>Ae,cycle:()=>rr,dec:()=>Ze,dedupe:()=>fr,deref:()=>Q,disj:()=>We,disj_BANG_:()=>zt,dissoc:()=>Xe,dissoc_BANG_:()=>Je,distinct:()=>cr,distinct_QMARK_:()=>oo,doall:()=>Dr,dorun:()=>Pr,drop:()=>ut,drop_last:()=>kr,drop_while:()=>ae,empty:()=>nt,empty_QMARK_:()=>Ar,ensure_reduced:()=>le,es6_iterator:()=>W,even_QMARK_:()=>Ht,every_QMARK_:()=>pe,every_pred:()=>Wr,ex_cause:()=>ho,ex_data:()=>ao,ex_info:()=>_o,ex_message:()=>po,false_QMARK_:()=>Or,ffirst:()=>nn,filter:()=>Z,filterv:()=>fn,find:()=>Mo,first:()=>I,flatten:()=>jo,fn_QMARK_:()=>Mt,fnil:()=>gt,frequencies:()=>Sr,get:()=>w,get_in:()=>wt,group_by:()=>Rr,identical_QMARK_:()=>Jn,identity:()=>ne,ifn_QMARK_:()=>no,inc:()=>Lt,int_QMARK_:()=>B,integer_QMARK_:()=>xo,interleave:()=>re,interpose:()=>qn,into:()=>fe,into_array:()=>ye,iterable:()=>s,iterate:()=>Xr,js_keys:()=>co,js_obj:()=>qr,juxt:()=>Zr,keep:()=>_r,keep_indexed:()=>dn,key:()=>ce,keys:()=>ge,last:()=>rn,lazy:()=>l,list:()=>te,list_QMARK_:()=>$n,list_STAR_:()=>Gn,long$:()=>qo,map:()=>N,map_QMARK_:()=>xe,map_indexed:()=>pn,mapcat:()=>Bn,mapv:()=>tt,max:()=>de,max_key:()=>So,memoize:()=>Po,merge:()=>Vn,merge_with:()=>Un,meta:()=>go,min:()=>Ur,min_key:()=>Ro,mod:()=>Eo,name:()=>yn,nat_int_QMARK_:()=>mo,neg_QMARK_:()=>Br,neg_int_QMARK_:()=>wo,next:()=>ft,nil_QMARK_:()=>mn,nnext:()=>Hr,not:()=>dt,not_EQ_:()=>Xo,not_any_QMARK_:()=>wr,not_empty:()=>Ko,not_every_QMARK_:()=>pr,nth:()=>Ft,number_QMARK_:()=>we,object_QMARK_:()=>It,odd_QMARK_:()=>On,parse_double:()=>Qo,parse_long:()=>No,partial:()=>nr,partition:()=>ue,partition_all:()=>oe,partition_by:()=>Cn,partitionv:()=>Pn,partitionv_all:()=>Dn,peek:()=>Do,persistent_BANG_:()=>Oo,pop:()=>Yo,pos_QMARK_:()=>zr,pos_int_QMARK_:()=>yo,pr_str:()=>Ke,println:()=>He,prn:()=>eu,quot:()=>Me,rand:()=>br,rand_int:()=>_e,rand_nth:()=>vr,random_uuid:()=>Vo,range:()=>En,re_find:()=>Sn,re_matches:()=>Rn,re_pattern:()=>Nn,re_seq:()=>uo,reduce:()=>S,reduce_kv:()=>vt,reduced:()=>X,reduced_QMARK_:()=>R,reductions:()=>un,regexp_QMARK_:()=>lo,rem:()=>Qe,remove:()=>ln,remove_watch:()=>Vr,repeat:()=>mt,repeatedly:()=>Er,replace:()=>gr,reset_BANG_:()=>Jt,reset_vals_BANG_:()=>vn,rest:()=>J,reverse:()=>dr,run_BANG_:()=>Jo,satisfies_QMARK_:()=>Ye,second:()=>en,select_keys:()=>Ln,seq:()=>E,seq_QMARK_:()=>Pt,seqable_QMARK_:()=>tn,sequential_QMARK_:()=>st,set:()=>jn,set_QMARK_:()=>In,shuffle:()=>mr,some:()=>he,some_QMARK_:()=>Tr,some_fn:()=>Jr,sort:()=>At,sort_by:()=>yr,sorted_set:()=>To,split_at:()=>Kr,split_with:()=>jr,str:()=>xn,string_QMARK_:()=>it,subs:()=>me,subseq:()=>Bo,subvec:()=>Qn,swap_BANG_:()=>An,swap_vals_BANG_:()=>bn,system_time:()=>Wn,t:()=>eo,take:()=>rt,take_last:()=>Zn,take_nth:()=>er,take_while:()=>ot,to_array:()=>to,trampoline:()=>Ee,transduce:()=>Rt,transient$:()=>Io,tree_seq:()=>Re,true_QMARK_:()=>Ir,truth_:()=>h,type:()=>Lo,unreduced:()=>yt,update:()=>lr,update_BANG_:()=>bt,update_in:()=>ar,update_keys:()=>Co,update_vals:()=>ke,val:()=>se,vals:()=>so,vec:()=>k,vector:()=>H,vector_QMARK_:()=>Kn,volatile_BANG_:()=>Ho,vreset_BANG_:()=>tu,warn_on_lazy_reusage_BANG_:()=>cn,with_meta:()=>Ao,zero_QMARK_:()=>Gr,zipmap:()=>ko});function f(t){if(t==null||typeof t=="function")return t;const e=typeof t;return e==="string"?(n,r)=>w(n,t,r):e==="object"?(n,r)=>w(t,n,r):t}var Nt=Object.prototype.hasOwnProperty;function Qt(t,e,n){for(n of t.keys())if(K(n,e))return n}function K(t,e){if(t===e)return!0;var n,r,o;if(t&&e&&(n=t.constructor)===e.constructor){if(n===Array){if((r=t.length)===e.length)for(;r--&&K(t[r],e[r]););return r===-1}if(n===Set){if(t.size!==e.size)return!1;for(const u of t)if(o=u,o&&typeof o=="object"&&(o=Qt(e,o),!o)||!e.has(o))return!1;return!0}if(n===Map){if(t.size!==e.size)return!1;for(const u of t)if(o=u[0],o&&typeof o=="object"&&(o=Qt(e,o),!o)||!K(u[1],e.get(o)))return!1;return!0}if(!n||typeof t=="object"){r=0;for(const u in t)if(Nt.call(t,u)&&++r&&!Nt.call(e,u)||!(u in e)||!K(t[u],e[u]))return!1;return Object.keys(e).length===r}}return!1}function O(t,e){return t.every(function(n,r){return r===0||e(t[r-1],n)})}function T(...t){return O(t,(e,n)=>K(e,n))}function kt(...t){return O(t,(e,n)=>e>n)}function Kt(...t){return O(t,(e,n)=>e>=n)}function ze(...t){return O(t,(e,n)=>e<n)}function qe(...t){return O(t,(e,n)=>e<=n)}function Le(...t){return t.reduce((e,n)=>e+n,0)}function Fe(...t){return t.reduce((e,n)=>e*n,1)}function Pe(...t){return t.length==1?0-t[0]:t.reduce((e,n)=>e-n)}const De={};function Ye(t,e){return e==null?t[null]:typeof t=="symbol"?e[t]:e[t.__sym]}function Ce(t,e,n){return t.set(e,n),t}function Ve(t,e,n){return t[e]=n,t}function jt(t){switch(p(t)){case _:return Ce;case x:case d:return Ve}}function A(t,e,n,...r){if(r.length%2!==0)throw new Error("Illegal argument: assoc expects an odd number of arguments.");switch(p(t)){case _:t.set(e,n);for(let o=0;o<r.length;o+=2)t.set(r[o],r[o+1]);break;case x:case d:t[e]=n;for(let o=0;o<r.length;o+=2)t[r[o]]=r[o+1];break;default:throw new Error(`Illegal argument: assoc! expects a Map, Array, or Object as the first argument, but got ${typeof t}.`)}return t}function $(t){switch(p(t)){case _:return new Map(t);case m:return new t.constructor(t);case x:return[...t];case d:return{...t};default:throw new Error(`Don't know how to copy object of type ${typeof t}.`)}}function j(t,e,n,...r){t||(t={});const o=$(t);return A(o,e,n,...r),o}const _=1,x=2,d=3,M=4,m=5,D=6;function Y(t){switch(t){case _:return new Map;case x:return[];case d:return{};case M:return new G;case m:return new Set;case D:return l(function*(){})}}function C(t){return t.constructor===Object}function It(t){return t!=null&&C(t)}function p(t){if(t!=null){if(C(t))return d;if(t instanceof Map)return _;if(t instanceof Set)return m;if(t instanceof G)return M;if(Array.isArray(t))return x;if(t instanceof _t)return D;if(t instanceof z)return m;if(t instanceof Object)return d}}function Ue(t,e,n,r,o){r=k(r),n=n||{};const u=p(n);if(u!==_&&u!==x&&u!==d)throw new Error(`Illegal argument: ${e} expects the first argument to be a Map, Array, or Object.`);const i=[n];let c=n;for(let a=0;a<r.length-1;a+=1){const g=r[a];let y;c instanceof Map?y=c.get(g):y=c[g],y||(y=Y(u)),i.push(y),c=y}i.push(o);for(let a=i.length-2;a>=0;a-=1)i[a]=t(i[a],r[a],i[a+1]);return i[0]}function Ot(t,e,n){return Ue(j,"assoc-in",t,e,n)}function Tt(t,e,n){e=k(e);var r=t;const o=p(t);for(const u of e.splice(0,e.length-1)){let i=w(r,u);i===void 0&&(i=Y(o),A(r,u,i)),r=i}return A(r,e[e.length-1],n),t}function $t(...t){if(t=t.map(f),t.length===0)return ne;if(t.length===1)return t[0];const[e,...n]=t.slice().reverse();return function(...r){let o=e(...r);for(const u of n)o=u(o);return o}}function Gt(t,e){for(const n of e)t.add(n);return t}function V(...t){if(t.length===0)return H();const[e,...n]=t;let r=e;switch(r==null&&(r=[]),p(r)){case m:Gt(r,n);break;case M:r.unshift(...n.reverse());break;case x:r.push(...n);break;case _:for(const o of n)Array.isArray(o)?r.set(o[0],o[1]):s(o).forEach(u=>{r.set(u[0],u[1])});break;case d:for(const o of n)Array.isArray(o)?r[o[0]]=o[1]:Object.assign(r,o);break;default:throw new Error("Illegal argument: conj! expects a Set, Array, List, Map, or Object as the first argument.")}return r}function Bt(...t){if(t.length===0)return H();const[e,...n]=t;let r=e;r==null&&(r=te());let o,u;switch(p(r)){case m:return r instanceof z?Gt(new r.constructor(r),n):new r.constructor([...r,...n]);case M:return new G(...n.reverse(),...r);case x:return[...r,...n];case _:o=new Map(r);for(const i of n)Array.isArray(i)?o.set(i[0],i[1]):s(i).forEach(c=>{o.set(c[0],c[1])});return o;case D:return l(function*(){yield*n,yield*r});case d:u={...r};for(const i of n)Array.isArray(i)?u[i[0]]=i[1]:Object.assign(u,i);return u;default:throw new Error("Illegal argument: conj expects a Set, Array, List, Map, or Object as the first argument.")}}function zt(t,...e){for(const n of e)t.delete(n);return t}function We(t,...e){const n=new t.constructor([...t]);return zt(n,...e)}function qt(t,e){switch(p(t)){case m:case _:return t.has(e);case void 0:return!1;default:return e in t}}function Je(t,...e){for(const n of e)delete t[n];return t}function Xe(t,...e){if(!t)return;if(e.length===0)return t;const n=$(t);switch(p(t)){case _:for(const r of e)n.delete(r);break;default:for(const r of e)delete n[r];break}return n}function Lt(t){return t+1}function Ze(t){return t-1}function He(...t){console.log(...t)}function Ft(t,e,n){if(t)if(Array.isArray(t)){if(e>=0&&e<t.length)return t[e]}else{const r=s(t);let o=0;for(const u of r)if(o++===e)return u}return n}function w(t,e,n=void 0){if(t==null)return n;let r;if(C(t))return r=t[e],r===void 0?n:r;let o;switch(p(t)){case m:t.has(e)&&(r=e);break;case _:r=t.get(e);break;case x:r=t[e];break;default:if(o=t.get,typeof o=="function")try{r=t.get(e);break}catch{}r=t[e];break}return r!==void 0?r:n}function Pt(t){return t!=null&&!!t[Symbol.iterator]}const st=Pt;function tn(t){return t==null||It(t)||!!t[Symbol.iterator]}function s(t){if(t==null)return[];if(t[Symbol.iterator])return t;if(t instanceof Object)return Object.entries(t);throw new TypeError(`${t} is not iterable`)}const ht=Symbol("Iterable"),Dt=Symbol.iterator;function U(t){return t[Symbol.iterator]()}const W=U;function E(t){if(t==null)return t;const e=s(t);return e.length===0||e.size===0||e[Symbol.iterator]().next().done?null:e}function I(t){const[e]=s(t);return e}function en(t){const[e,n]=s(t);return n}function nn(t){return I(I(t))}function J(t){return l(function*(){let e=!0;for(const n of s(t))e?e=!1:yield n})}class q{value;constructor(e){this.value=e}_deref(){return this.value}}function rn(t){t=s(t);let e;switch(p(t)){case x:return t[t.length-1];default:for(const n of t)e=n;return e}}function X(t){return new q(t)}function R(t){return t instanceof q}function S(t,e,n){t=f(t);let r,o;if(arguments.length===2){const u=s(e)[Symbol.iterator](),i=u.next();i.done?o=t():o=i.value,r=u}else o=e,r=s(n);if(o instanceof q)return o.value;for(const u of r)if(o=t(o,u),o instanceof q){o=o.value;break}return o}function*on(t,e){const n=e.next();n.done?yield t():yield*Yt(t,n.value,e)}function*Yt(t,e,n){let r=e,o=n;for(;;){if(R(r)){yield r.value;return}else yield r;const u=o.next();if(u.done)break;r=t(r,u.value)}}function un(t,e,n){return t=f(t),arguments.length===2?l(function*(){yield*on(t,s(e)[Symbol.iterator]())}):l(function*(){yield*Yt(t,e,s(n)[Symbol.iterator]())})}var Ct=!1;function cn(){Ct=!0}class _t{constructor(e){this.gen=e,this.usages=0}[Symbol.iterator](){if(this.usages++,this.usages>=2&&Ct)try{throw new Error}catch(e){console.warn("Re-use of lazy value",e.stack)}return this.gen()}}_t.prototype[ht]=!0;function l(t){return new _t(t)}class Vt{constructor(e,n){this.x=e,this.coll=n}*[Symbol.iterator](){yield this.x,yield*s(this.coll)}}function sn(t,e){return new Vt(t,e)}function N(t,...e){switch(t=f(t),e.length){case 0:return n=>(...r)=>{switch(r.length){case 0:return n();case 1:return n(r[0]);case 2:return n(r[0],t(r[1]));default:return n(r[0],t(...r.slice(1)))}};case 1:return l(function*(){for(const n of s(e[0]))yield t(n)});default:return l(function*(){const n=e.map(r=>W(s(r)));for(;;){const r=[];for(const o of n){const u=o.next();if(u.done)return;r.push(u.value)}yield t(...r)}})}}function Ut(t){return e=>(...n)=>{switch(n.length){case 0:return e();case 1:return e(n[0]);case 2:{const r=n[0],o=n[1];return h(t(o))?e(r,o):r}}}}function Z(t,e){return arguments.length===1?Ut(t):(t=f(t),l(function*(){for(const n of s(e))h(t(n))&&(yield n)}))}function fn(t,e){return[...Z(t,e)]}function ln(t,e){return arguments.length===1?Ut(L(t)):Z(L(t),e)}function an(t){return e=>{let n=-1;return(...r)=>{switch(r.length){case 0:return e();case 1:return e(r[0]);case 2:return e(r[0],t((n=n+1,n),r[1]))}}}}function pn(t,e){return t=f(t),arguments.length===1?an(t):l(function*(){let n=0;for(const r of s(e))yield t(n,r),n++})}function hn(t,e){return t=f(t),l(function*(){let n=0;for(const r of s(e)){const o=t(n,r);h(o)&&(yield o),n++}})}function _n(t){return e=>{let n=-1;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1];n++;const c=t(n,i);return c==null?u:e(u,c)}}}}function dn(t,e){return arguments.length===1?_n(t):hn(t,e)}function xn(...t){return t.join("")}function yn(t){if(typeof t=="string")return t;throw new Error("Doesn't support name: "+typeof t)}function dt(t){return!h(t)}function mn(t){return t==null}const wn={};class Wt{constructor(e){this.val=e,this._watches={},this._deref=()=>this.val,this._hasWatches=!1,this._reset_BANG_=n=>{const r=this.val;if(this.val=n,this._hasWatches)for(const o of Object.entries(this._watches)){const u=o[0],i=o[1];i(u,this,r,n)}return n},this._add_watch=(n,r)=>{this._watches[n]=r,this._hasWatches=!0},this._remove_watch=n=>{delete this._watches[n]}}}function gn(t){return new Wt(t)}function Q(t){return t._deref()}function Jt(t,e){t._reset_BANG_(e)}function An(t,e,...n){e=f(e);const r=e(Q(t),...n);return Jt(t,r),r}function bn(t,e,...n){const r=Q(t);e=f(e);const o=e(r,...n);return t._reset_BANG_(o),[r,o]}function vn(t,e){const n=Q(t);return t._reset_BANG_(e),[n,e]}function Mn(t,e,n){return Q(t)===e?(t._reset_BANG_(n),!0):!1}function En(t,e,n){return l(function*(){let r=t,o=e,u=n;e===void 0&&(r=0,o=t);let i=r||0;u=n??1;const c=u>=0;for(;o===void 0||c&&i<o||!c&&o<i;)yield i,i+=u})}function Rn(t,e){const n=t.exec(e);return n&&e===n[0]?n.length===1?n[0]:n:null}function Sn(t,e){if(it(e)){const n=t.exec(e);return n!=null?n.length===1?n[0]:[...n]:null}else throw new TypeError("re-find must match against a string.")}function Nn(t){if(t instanceof RegExp)return t;const e=t.match(/^\(\?([dgimsuvy]*)\)/);return e?new RegExp(t.slice(e[0].length),e[1]):new RegExp(t)}function Qn(t,e,n){return t.slice(e,n)}function H(...t){return t}const kn=H;function Kn(t){return p(t)===x}function tt(...t){if(t.length===2){const[r,o]=t,u=f(r),i=s(o);if(Array.isArray(i)){const c=new Array(i.length);for(var e=0;e<i.length;e++)c[e]=u(i[e]);return c}else{var n=[];for(const c of i)n.push(u(c));return n}}return[...N(...t)]}function k(t){return et(t)?t:[...s(t)]}function jn(t){return new Set(s(t))}function In(t){return p(t)===m}const Xt=Symbol("IApply__apply");function Zt(t,...e){t=f(t);const n=e.slice(0,e.length-1),r=s(e[e.length-1]),o=t[Xt];return o?o(...n,r):t(...n,...r)}function Ht(t){return t%2==0}function On(t){return!Ht(t)}function L(t){return t=f(t),(...e)=>dt(t(...e))}function Tn(t){return(...e)=>t}class G extends Array{constructor(...e){super(),this.push(...e)}}function $n(t){return p(t)===M}function te(...t){return new G(...t)}function Gn(...t){const e=t.pop();return new G(...t,...s(e))}function et(t){return Array.isArray(t)}function xt(t){return l(function*(){for(const e of t)yield*s(e)})}function ee(...t){return xt(t)}ee[Xt]=t=>xt(t);function Bn(t,...e){if(e.length===0)return $t(N(t),Ne);{const n=N(t,...e);return xt(n)}}function ne(t){return t}function re(...t){return l(function*(){const e=t.map(n=>W(s(n)));for(;;){const n=[];for(const r of e){const o=r.next();if(o.done)return;n.push(o.value)}yield*n}})}function zn(t){return e=>{let n=!1;return(...r)=>{switch(r.length){case 0:return e();case 1:return e(r[0]);case 2:if(n){const o=e(r[0],t);return R(o)?o:e(o,r[1])}else return n=!0,e(r[0],r[1])}}}}function qn(t,e){return arguments.length===1?zn(t):ut(1,re(mt(t),e))}function Ln(t,e){const n=p(t),r=Y(n)||{};for(const o of e){const u=w(t,o);u!==void 0&&A(r,o,u)}return r}function yt(t){return R(t)?Q(t):t}function Fn(t){return e=>{let n=[];return(...r)=>{let o,u;switch(r.length){case 0:return e();case 1:return o=r[0],n.length!==0&&(u=[...n],n=[],o=yt(e(o,u))),e(o);case 2:return o=r[0],n.push(r[1]),t===n.length?(u=[...n],n=[],e(o,u)):o}}}}function oe(t,...e){if(arguments.length===1)return Fn(t);let n=t,r=e[0];return e.length===2&&([n,r]=e),ie(t,n,[],r,!0)}function ue(t,...e){let n=t,r=[],o=e[0];return e.length===2?[n,o]=e:e.length>2&&([n,r,o]=e),ie(t,n,r,o,!1)}const Pn=ue,Dn=oe;function ie(t,e,n,r,o){return l(function*(){let u=[],i=0;for(const c of s(r))i<t&&(u.push(c),u.length===t&&(yield u,u=e<t?u.slice(e):[])),i++,i===e&&(i=0);u.length>0&&(u.length===t||o?yield u:n.length&&(u.push(...n.slice(0,t-u.length)),yield u))})}function Yn(t){return e=>{let n=[];const r={};let o=r;return(...u)=>{const i=u.length;if(i===0)return e();if(i===1){let c=u[0];if(n.length!==0){const a=[...n];n=[],c=yt(e(c,a))}return e(c)}if(i===2){const c=u[0],a=u[1],g=o,y=t(a);if(o=y,g===r||y===g)return n.push(a),c;{const je=[...n];n=[];const St=e(c,je);return R(St)||n.push(a),St}}}}}function Cn(t,e){return t=f(t),arguments.length===1?Yn(t):l(function*(){const n=W(e),r=n.next();r.done&&(yield*null);const o=r.value;let u=t(o),i=[o],c=[];for(;;){const a=n.next();if(a.done){yield i;break}const g=a.value,y=t(g);u==y?i.push(g):(yield i,c.push(g),i=c,u=y,c=[])}})}function nt(t){const e=p(t);if(e!=null)return Y(e);throw new Error(`Can't create empty of ${typeof t}`)}function Vn(...t){const e=t[0];let n;return e==null?n={}:n=fe(nt(e),e),V(n,...t.slice(1))}function ce(t){return t[0]}function se(t){return t[1]}function Un(t,...e){t=f(t);var n=!1;for(const r of e)if(r!=null){n=!0;break}if(n){const r=(u,i)=>{const c=ce(i),a=se(i);return qt(u,c)?j(u,c,t(w(u,c),a)):j(u,c,a)};return S((u,i)=>S(r,u||{},E(i)),e)}else return null}function Wn(){return performance.now()}function fe(...t){let e,n,r,o,u;switch(t.length){case 0:return[];case 1:return t[0];case 2:return Bt(t[0]??[],...s(t[1]));case 3:return e=t[0],n=t[1],r=t[2],o=$(e),u=(i,c)=>c===void 0?i:V(i,c),Rt(n,u,o,r);default:throw TypeError(`Invalid arity call of into: ${t.length}`)}}function Jn(t,e){return t===e}function mt(...t){if(t.length==0||t.length>2)throw new Error(`Invalid arity: ${t.length}`);return{[ht]:!0,[Dt]:t.length==1?function*(){const e=t[0];for(;;)yield e}:function*(){const[e,n]=t;for(var r=0;r<e;r++)yield n}}}function le(t){return R(t)?t:X(t)}function Xn(t){return e=>{let n=t;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1){const u=r[0];return e(u)}if(o===2){let u=r[0];const i=r[1],c=n,a=(n=n-1,n);return c>0&&(u=e(u,i)),a>0?u:le(u)}}}}function rt(t,e){return arguments.length===1?Xn(t):l(function*(){let n=t-1;for(const r of s(e))if(n-->=0&&(yield r),n<0)return})}function Zn(t,e){if(t<=0)return null;if(Array.isArray(e))return E(e.slice(-t));{const n=new Array(t);let r=0;for(const o of s(e))n[r%t]=o,r++;return r%t!==0&&r>=t?n.slice(r%t).concat(n.slice(0,r%t)):(n.length=Math.min(r,t),n)}}function Hn(t){return e=>(...n)=>{const r=n.length;if(r===0)return e();if(r===1)return e(n[0]);if(r===2){const o=n[0],u=n[1];return h(t(u))?e(o,u):X(o)}}}function ot(t,e){return t=f(t),arguments.length===1?Hn(t):l(function*(){for(const n of s(e))if(h(t(n)))yield n;else return})}function tr(t){return e=>{let n=-1;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1];return n++,Qe(n,t)===0?e(u,i):u}}}}function er(t,e){return arguments.length===1?tr(t):t<=0?mt(I(e)):l(function*(){let n=0;for(const r of s(e))n%t===0&&(yield r),n++})}function nr(t,...e){return t=f(t),function(...n){return t(...e,...n)}}function rr(t){return l(function*(){for(;;)yield*t})}function or(t){return e=>{let n=t;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=r[0],i=r[1],c=n;return n--,c>0?u:e(u,i)}}}}function ut(t,e){return arguments.length===1?or(t):l(function*(){const n=U(s(e));for(let r=0;r<t;r++)n.next();yield*n})}function ur(t){return e=>{let n=!0;return(...r)=>{const o=r.length;if(o===0)return e();if(o===1)return e(r[0]);if(o===2){const u=n,i=r[0],c=r[1];return u&&h(t(c))?i:(n=null,e(i,c))}}}}function ae(t,e){return t=f(t),arguments.length===1?ur(t):l(function*(){const n=U(s(e));for(;;){const r=n.next();if(r.done)break;const o=r.value;if(!h(t(o))){yield o;break}}yield*n})}function ir(){return t=>{const e=new Set;return(...n)=>{const r=n.length;if(r===0)return t();if(r===1)return t(n[0]);if(r===2){const o=n[0],u=n[1];return e.has(u)?o:(e.add(u),t(o,u))}}}}function cr(t){return arguments.length===0?ir():l(function*(){const e=new Set;for(const n of s(t))e.has(n)||(yield n),e.add(n)})}const F=Symbol("dedupe-none");function sr(){return t=>{let e=F;return(...n)=>{const r=n.length;if(r===0)return t();if(r===1)return t(n[0]);if(r===2){const o=n[0],u=n[1],i=e!==F&&h(T(e,u));return e=u,i?o:t(o,u)}}}}function fr(t){return arguments.length===0?sr():l(function*(){let e=F;for(const n of s(t))(e===F||!h(T(e,n)))&&(yield n),e=n})}function lr(t,e,n,...r){return n=f(n),j(t,e,n(w(t,e),...r))}function wt(t,e,n){let r=t;for(const o of e)r=w(r,o);return r===void 0?n:r}function ar(t,e,n,...r){return n=f(n),Ot(t,e,n(wt(t,e),...r))}function gt(t,e,...n){return t=f(t),function(r,...o){return r?t(r,...n,...o):t(e,...n,...o)}}function pe(t,e){t=f(t);for(const n of s(e))if(!t(n))return!1;return!0}function pr(t,e){return!pe(t,e)}function hr(t){return e=>(...n)=>{const r=n.length;if(r===0)return e();if(r===1)return e(n[0]);if(r===2){const o=n[0],u=n[1],i=t(u);return i==null?o:e(o,i)}}}function _r(t,e){return t=f(t),arguments.length===1?hr(t):l(function*(){for(const n of s(e)){const r=t(n);h(r)&&(yield r)}})}function dr(t){return t=s(t),[...t].reverse()}function At(t,e){return arguments.length===1&&(e=t,t=void 0),t=f(t),e=s(e),[...e].sort(t||b)}function xr(t){return t===b?t:(e,n)=>{const r=t(e,n);return we(r)?r:r?-1:t(n,e)?1:0}}function yr(t,e,n){return arguments.length===2&&(n=e,e=b),t=f(t),e=f(e),At((r,o)=>{const u=xr(e),i=t(r),c=t(o);return u(i,c)},n)}function mr(t){const e=[...t];let n=e.length;for(;n;){const r=Math.floor(Math.random()*n--),o=e[n];e[n]=e[r],e[r]=o}return e}function he(t,e){t=f(t);for(const n of s(e)){const r=t(n);if(h(r))return r}}function wr(t,e){return t=f(t),!he(t,e)}function gr(t,e){return(Array.isArray(e)?tt:N)(r=>{const o=t[r];return o!==void 0?o:r},e)}function Ar(t){return!E(t)}function br(t){return t===void 0&&(t=1),Math.random()*t}function _e(t){return Math.floor(Math.random()*t)}function vr(t){const e=_e(P(t));return Ft(t,e)}function Mr(t){return l(function*(){for(;;)yield t()})}function Er(t,e){arguments.length===1&&(e=t,t=void 0);const n=Mr(e);return t?rt(t,n):n}function bt(t,e,n,...r){n=f(n);const o=w(t,e);return A(t,e,n(o,...r))}function Rr(t,e){t=f(t);const n={};for(const r of s(e)){const o=t(r);bt(n,o,gt(V,[]),r)}return n}function Sr(t){const e={},n=gt(Lt,0);for(const r of s(t))bt(e,r,n);return e}class Nr{constructor(e){this.f=e,this.res=void 0}*[Symbol.iterator](){this.res===void 0&&(this.res=this.f(),this.f=null),yield*s(this.res)}}function Qr(t){const e=[...s(t)];return e.pop(),e.length>0?e:null}function kr(...t){const[e,n]=t.length>1?t:[1,t[0]];return N((r,o)=>r,n,ut(e,n))}function Kr(t,e){return[rt(t,e),ut(t,e)]}function jr(t,e){return[ot(t,e),ae(t,e)]}function P(t){if(!t)return 0;const e=t.length||t.size;if(typeof e=="number")return e;let n=0;for(const r of s(t))n++;return n}function Ir(t){return t===!0}function Or(t){return t===!1}function Tr(t){return t!=null}function $r(t){return!!t}function Gr(t){return t===0}function Br(t){return t<0}function zr(t){return t>0}function qr(...t){let e=0;const n={};for(;!(e>=t.length);)n[t[e]]=t[e+1],e=e+2;return n}function Lr(t){return t.length}function Fr(t,e,n,...r){if(r.length==0)return t[e]=n,n;{const o=[e,n,...r],u=o[o.length-1];let i=t,c=0;const a=o.length-2;for(;c<a;c++)i=i[o[c]];return i[o[c]]=u,n}}function Pr(t){for(const e of s(t));return null}function Dr(t){return k(t)}function Yr(t){return[...t]}function Cr(t,e,n){return t._add_watch(e,n)}function Vr(t,e){return t._remove_watch(e)}function vt(t,e,n){if(!n)return e;var r=e;for(const o of s(n))r=t(r,o[0],o[1]);return r}function de(t,e,...n){return e==null?t:Math.max(t,e,...n)}function Ur(t,e,...n){return e==null?t:Math.min(t,e,...n)}function xe(t){return t==null?!1:!!(C(t)||t instanceof Map)}function Wr(...t){return(...e)=>{for(const n of t)for(const r of e)if(!n(r))return!1;return!0}}function Jr(...t){return(...e)=>{for(const n of t)for(const r of e){const o=n(r);if(o)return o}}}function ye(t,e){return k(e||t)}function Xr(t,e){var n=e;return l(function*(){for(;;)yield n,n=t(n)})}function Zr(...t){return t=t.map(f),(...e)=>{const n=[];for(const r of t)n.push(r(...e));return n}}function ft(t){if(Array.isArray(t)){const e=t.slice(1);return e.length>0?e:null}else return E(J(t))}function Hr(t){return ft(ft(t))}function b(t,e){if(t===e)return 0;{if(t==null)return-1;if(e==null)return 1;const n=typeof t,r=typeof e;if(n==="number"&&r==="number"||n==="string"&&r==="string"||n==="boolean"&&r==="boolean")return t===e?0:t<e?-1:1;if(Array.isArray(t)&&Array.isArray(e)){if(t.length<e.length)return-1;if(t.length>e.length)return 1;for(let o=0;o<t.length;o++){const u=b(t[o],e[o]);if(u!=0)return u}return 0}else throw new Error(`comparing ${n} to ${r}`)}}function to(t){return ye(t)}function h(t){return t!=null&&t!==!1}const eo=h;function me(t,e,n){return t.substring(e,n)}function Mt(t){return typeof t=="function"}function no(t){return Mt(t)}function ro(t){return!0}function oo(t,...e){if(e.length===0)return!0;const n=[t];for(const r of e){for(const o of n)if(h(T(o,r)))return!1;n.push(r)}return!0}function uo(t,e){return l(function*(){for(;;){const n=t.exec(e);if(n){const r=n[0];yield n.length===1?r:k(n);const u=n.index+de(1,r.length);if(u>e.length)break;e=me(e,u)}else break}})}function io(t){return Number.isNaN(t)}function we(t){return typeof t=="number"}function ge(t){if(t==null)return;switch(p(t)){case d:return Object.keys(t);case _:return Array.from(t.keys())}}function co(t){return ge(t)}function so(t){if(t==null)return;switch(p(t)){case d:return Object.values(t);case _:return Array.from(t.values())}}function it(t){return typeof t=="string"}function fo(t){return p(t)!=null}function lo(t){return t instanceof RegExp}class Et extends Error{constructor(e,n,r){super(e),this._data=n,this._cause=r}}function ao(t){return t instanceof Et?t._data:null}function po(t){return t instanceof Error?t.message:null}function ho(t){return t instanceof Et?t._cause:null}function _o(t,e,n){return new Et(t,e,n)}function B(t){return Number.isInteger(t)}const xo=B;function yo(t){return B(t)&&t>0}function mo(t){return B(t)&&t>-1}function wo(t){return B(t)&&t<0}const lt=Symbol("meta");function go(t){return t instanceof Object?t[lt]:null}function Ao(t,e){if(typeof t=="function"){const r=function(...o){return t.apply(this,o)};return r[lt]=e,r}const n=$(t);return n[lt]=e,n}function bo(t){return t===!0||t===!1}function Ae(t){switch(p(t)){case x:case _:case d:case M:case m:return!0}return!1}function vo(t,e){return Ae(e)?P(e):P(rt(t,e))}function Mo(t,e){const n=w(t,e);if(n!==void 0)return[e,n]}function Eo(t,e){return(t%e+e)%e}function Ro(t,e,...n){if(n.length==0)return e;var r=t(e),o=e;return n.forEach(u=>{var i=t(u);i<=r&&(r=i,o=u)}),o}function So(t,e,...n){if(n.length==0)return e;var r=t(e),o=e;return n.forEach(u=>{var i=t(u);i>=r&&(r=i,o=u)}),o}function be(t){throw new Error(`Expected string, got: ${typeof t}`)}function No(t){if(it(t)){if(/^[+-]?\d+$/.test(t)){const e=parseInt(t);if(Number.MIN_SAFE_INTEGER<=e&&e<=Number.MAX_SAFE_INTEGER)return e}return null}return be(t)}function Qo(t){return it(t)?/^[\x00-\x20]*[+-]?NaN[\x00-\x20]*$/.test(t)?NaN:/^[\x00-\x20]*[+-]?(Infinity|((\d+\.?\d*|\.\d+)([eE][+-]?\d+)?)[dDfF]?)[\x00-\x20]*$/.test(t)?parseFloat(t):null:be(t)}function ve(t){return t>=0?Math.floor(t):Math.ceil(t)}function Me(t,e){const n=t%e;return ve((t-n)/e)}function Ee(t,...e){if(e.length==0)for(;;){const n=t();if(h(Mt(n))){t=n;continue}else return n}else return Ee(function(){return Zt(t,e)})}function Rt(t,...e){switch(e.length){case 2:{const n=e[0],r=e[1];return Rt(t,n,n(),r)}default:{let n=e[0];const r=e[1],o=e[2];n=t(n);const u=S(n,r,o);return n(u)}}}function ko(t,e){const n={},r=s(t)[Symbol.iterator](),o=s(e)[Symbol.iterator]();let u,i;for(;u=r.next(),!(u.done||(i=o.next(),i.done));)n[u.value]=i.value;return n}function Ko(t){return E(t)?t:null}function Re(t,e,n){const r=function*(o){if(yield o,h(t(o)))for(const u of s(e(o)))yield*r(u)};return l(function*(){yield*r(n)})}function jo(t){return Z(L(st),J(Re(st,E,t)))}function Io(t){return $(t)}function Oo(t){return Object.freeze(t)}class z{constructor(e){e instanceof z||(e=At(e));const r=new Set(e);this._elts=[...r],this._set=r}add(e){if(this._set.has(e))return this;const n=this._elts;let r=!1;for(let o=0;o<n.length;o++)if(b(e,n[o])<=0){n.splice(o,0,e),r=!0;break}return r?this._set=new Set(n):(n.push(e),this._set.add(e)),this.size=n.length,this}delete(e){if(!this._set.has(e))return this;const n=this._elts,r=n.indexOf(e);return n.splice(r,1),this._set=new Set(n),this.size=n.length,this}has(e){return this._set.has(e)}keys(){return this.values()}values(){return this._elts[Symbol.iterator]()}entries(){return this._set.entries()}forEach(...e){return this.set.forEach(...e)}clear(){this._elts=[],this._set=new Set(this._elts)}[Symbol.iterator](){return this.keys()}}function To(...t){return new z(t)}function at(t,e,n){return r=>e(b(r,n),0)}function Se(t,e,n=!0){let r=0;for(;r<t.length&&b(e,t[r])>0;r++);return r}function $o([t,e,n]){const r=at(t,e,n);if(e===kt||e===Kt){const o=[...t],u=Se(o,n,!0);return o.splice(0,u),r(o[0])||o.splice(0,1),o}else return[...ot(r,t)]}function Go([t,e,n,r,o]){const u=[...t],i=Se(u,n,!0);u.splice(0,i);const c=at(t,r,o);return at(t,e,n)(u[0])||u.splice(0,1),[...ot(c,u)]}function Bo(...t){if(t.length===3)return $o(t);if(t.length===5)return Go(t)}function zo(t){return Math.abs(t)}function qo(t){return ve(t)}function Lo(t){return t!=null&&t.constructor}function Fo(t){return(e,n)=>{const r=t(e,n);return R(r)?X(r):r}}function Ne(t){return t=Fo(t),(...e)=>{switch(e.length){case 0:return t();case 1:return t(e[0]);case 2:return S(t,e[0],e[1])}}}function Qe(t,e){const n=Me(t,e);return t-e*n}function Po(t){const e=new Map;return(...n)=>{const r=[n.length,...n],o=wt(e,r);if(o===void 0){const u=t(...n);return Tt(e,r,u),u}else return o}}function Do(t){return et(t)?t[t.length-1]:I(t)}function Yo(t){if(et(t)){const e=[...t];return e.pop(),e}else return J(t)}function Co(t,e){const n=nt(t),r=jt(t)||A;return vt((o,u,i)=>r(o,e(u),i),n,t),n}function ke(t,e){const n=nt(t),r=jt(t)||A;return vt((o,u,i)=>r(o,u,e(i)),n,t),n}function Vo(){return crypto.randomUUID()}class Uo{constructor(e){this.f=e}_deref(){return this.realized?this.v:(this.v=this.f(),this.realized=!0,this.v)}}function pt(t,e){if(e.has(t))return t;if(e.add(t),xe(t))return ke(t,r=>pt(r,e));const n=p(t);return n&&n!=d?tt(r=>pt(r,e),t):t}function Wo(t){return pt(t,new Set)}function Jo(t,e){S((n,r)=>t(r),null,e)}function Xo(...t){return dt(T(...t))}class Zo{constructor(e){this.v=e}_deref(){return this.v}}function Ho(t){return new Zo(t)}function tu(t,e){t.v=e}function v(t,e=new WeakSet){if(t==null)return"nil";if(typeof t=="number")return t===1/0?"##Inf":t===-1/0?"##-Inf":Number.isNaN(t)?"##NaN":String(t);if(typeof t=="boolean")return String(t);if(typeof t=="string")return JSON.stringify(t);if(typeof t=="bigint")return`${t}N`;if(typeof t=="object"){if(e.has(t))return"#object[circular]";e.add(t);const n=p(t);let r;switch(n){case x:return`[${t.map(o=>v(o,e)).join(" ")}]`;case m:return`#{${Array.from(t).map(o=>v(o,e)).join(" ")}}`;case _:return`#js/Map {${Array.from(t.entries()).map(([o,u])=>`${v(o,e)} ${v(u,e)}`).join(", ")}}`;case D:case M:return`(${tt(o=>`${v(o,e)}`,t).join(", ")})`;default:return t.constructor&&t.constructor!==Object?`#<${t.constructor.name}>`:(r=Object.keys(t),`{${r.map(o=>`:${o} ${v(t[o],e)}`).join(", ")}}`)}}return`#object[${t.constructor.name}]`}function Ke(...t){return t.map((e,n)=>v(e)).join(" ")}function eu(...t){return console.log(Ke(...t))}return Be(nu);})();
|
package/package.json
CHANGED
package/src/squint/core.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*eslint no-unused-vars: ["error", { "varsIgnorePattern": "^_", "argsIgnorePattern": "^_", "destructuredArrayIgnorePattern": "^_"}]*/
|
|
2
2
|
|
|
3
|
-
// __toFn is not public API
|
|
3
|
+
// __toFn is not public API - the leading underscores mark it as an
|
|
4
4
|
// implementation helper shared with other squint runtime modules
|
|
5
5
|
// (e.g. multi.js). Signature and semantics may change without notice.
|
|
6
6
|
export function __toFn(x) {
|
|
@@ -504,22 +504,23 @@ export function println(...args) {
|
|
|
504
504
|
|
|
505
505
|
export function nth(coll, idx, orElse) {
|
|
506
506
|
if (coll) {
|
|
507
|
-
|
|
507
|
+
// "found" must be decided by the index bound, not by the value: an
|
|
508
|
+
// in-bounds element that happens to be `undefined` is still found.
|
|
508
509
|
if (Array.isArray(coll)) {
|
|
509
|
-
|
|
510
|
+
if (idx >= 0 && idx < coll.length) {
|
|
511
|
+
return coll[idx];
|
|
512
|
+
}
|
|
510
513
|
} else {
|
|
514
|
+
// iterables may lack .length and can be infinite, so iterate and stop
|
|
515
|
+
// at idx rather than computing a bound.
|
|
511
516
|
const iter = iterable(coll);
|
|
512
517
|
let i = 0;
|
|
513
518
|
for (const value of iter) {
|
|
514
|
-
if (i++
|
|
515
|
-
|
|
516
|
-
break;
|
|
519
|
+
if (i++ === idx) {
|
|
520
|
+
return value;
|
|
517
521
|
}
|
|
518
522
|
}
|
|
519
523
|
}
|
|
520
|
-
if (elt !== undefined) {
|
|
521
|
-
return elt;
|
|
522
|
-
}
|
|
523
524
|
}
|
|
524
525
|
return orElse;
|
|
525
526
|
}
|
|
@@ -576,6 +577,9 @@ export function seqable_QMARK_(x) {
|
|
|
576
577
|
return (
|
|
577
578
|
x === null ||
|
|
578
579
|
x === undefined ||
|
|
580
|
+
// plain objects (squint maps) are seqable via Object.entries in `iterable`,
|
|
581
|
+
// even though they lack Symbol.iterator.
|
|
582
|
+
object_QMARK_(x) ||
|
|
579
583
|
// we used to check instanceof Object but this returns false for TC39 Records
|
|
580
584
|
// also we used to write `Symbol.iterator in` but this does not work for strings and some other types
|
|
581
585
|
!!x[Symbol.iterator]
|
|
@@ -587,7 +591,10 @@ export function iterable(x) {
|
|
|
587
591
|
if (x === null || x === undefined) {
|
|
588
592
|
return [];
|
|
589
593
|
}
|
|
590
|
-
|
|
594
|
+
// fast path: anything with Symbol.iterator (arrays, strings, sets, maps,
|
|
595
|
+
// lazy seqs). Inlined rather than calling seqable?, which also reports plain
|
|
596
|
+
// objects as seqable; those are handled by the Object.entries branch below.
|
|
597
|
+
if (x[Symbol.iterator]) {
|
|
591
598
|
return x;
|
|
592
599
|
}
|
|
593
600
|
if (x instanceof Object) return Object.entries(x);
|
|
@@ -1301,7 +1308,7 @@ export function select_keys(o, ks) {
|
|
|
1301
1308
|
const ret = emptyOfType(type) || {};
|
|
1302
1309
|
for (const k of ks) {
|
|
1303
1310
|
const v = get(o, k);
|
|
1304
|
-
if (v
|
|
1311
|
+
if (v !== undefined) {
|
|
1305
1312
|
assoc_BANG_(ret, k, v);
|
|
1306
1313
|
}
|
|
1307
1314
|
}
|
|
@@ -2372,7 +2379,8 @@ export function compare(x, y) {
|
|
|
2372
2379
|
}
|
|
2373
2380
|
const tx = typeof x;
|
|
2374
2381
|
const ty = typeof y;
|
|
2375
|
-
if ((tx === 'number' && ty === 'number') || (tx === 'string' && ty === 'string')
|
|
2382
|
+
if ((tx === 'number' && ty === 'number') || (tx === 'string' && ty === 'string') ||
|
|
2383
|
+
(tx === 'boolean' && ty === 'boolean')) {
|
|
2376
2384
|
if (x === y) {
|
|
2377
2385
|
return 0;
|
|
2378
2386
|
}
|
|
@@ -2557,7 +2565,7 @@ export function meta(x) {
|
|
|
2557
2565
|
export function with_meta(x, m) {
|
|
2558
2566
|
// For functions, wrap in a new callable that forwards to the original
|
|
2559
2567
|
// so fn? stays true and the original isn't mutated. copy() can't handle
|
|
2560
|
-
// functions
|
|
2568
|
+
// functions - a {...x} spread loses the call signature.
|
|
2561
2569
|
if (typeof x === 'function') {
|
|
2562
2570
|
const wrapped = function (...args) { return x.apply(this, args); };
|
|
2563
2571
|
wrapped[_metaSym] = m;
|
|
@@ -2644,7 +2652,7 @@ export function parse_long(s) {
|
|
|
2644
2652
|
if (string_QMARK_(s)) {
|
|
2645
2653
|
if (/^[+-]?\d+$/.test(s)) {
|
|
2646
2654
|
const i = parseInt(s);
|
|
2647
|
-
if (Number.MIN_SAFE_INTEGER <= i <= Number.MAX_SAFE_INTEGER) {
|
|
2655
|
+
if (Number.MIN_SAFE_INTEGER <= i && i <= Number.MAX_SAFE_INTEGER) {
|
|
2648
2656
|
return i;
|
|
2649
2657
|
}
|
|
2650
2658
|
}
|
|
@@ -2655,10 +2663,10 @@ export function parse_long(s) {
|
|
|
2655
2663
|
|
|
2656
2664
|
export function parse_double(s) {
|
|
2657
2665
|
if (string_QMARK_(s)) {
|
|
2658
|
-
if (/^[
|
|
2666
|
+
if (/^[\x00-\x20]*[+-]?NaN[\x00-\x20]*$/.test(s)) {
|
|
2659
2667
|
return NaN;
|
|
2660
2668
|
} else if (
|
|
2661
|
-
/^[
|
|
2669
|
+
/^[\x00-\x20]*[+-]?(Infinity|((\d+\.?\d*|\.\d+)([eE][+-]?\d+)?)[dDfF]?)[\x00-\x20]*$/.test(
|
|
2662
2670
|
s
|
|
2663
2671
|
)
|
|
2664
2672
|
) {
|
|
@@ -2667,7 +2675,7 @@ export function parse_double(s) {
|
|
|
2667
2675
|
return null;
|
|
2668
2676
|
}
|
|
2669
2677
|
} else {
|
|
2670
|
-
|
|
2678
|
+
return parsing_err(s);
|
|
2671
2679
|
}
|
|
2672
2680
|
}
|
|
2673
2681
|
|
|
@@ -3056,7 +3064,13 @@ export function vreset_BANG_(vol, v) {
|
|
|
3056
3064
|
|
|
3057
3065
|
function toEDN(value, seen = new WeakSet()) {
|
|
3058
3066
|
if (value == null) return 'nil';
|
|
3059
|
-
if (typeof value === 'number'
|
|
3067
|
+
if (typeof value === 'number') {
|
|
3068
|
+
if (value === Infinity) return '##Inf';
|
|
3069
|
+
if (value === -Infinity) return '##-Inf';
|
|
3070
|
+
if (Number.isNaN(value)) return '##NaN';
|
|
3071
|
+
return String(value);
|
|
3072
|
+
}
|
|
3073
|
+
if (typeof value === 'boolean') return String(value);
|
|
3060
3074
|
if (typeof value === 'string') return JSON.stringify(value);
|
|
3061
3075
|
if (typeof value === 'bigint') return `${value}N`;
|
|
3062
3076
|
|
package/src/squint/multi.js
CHANGED
|
@@ -22,7 +22,7 @@ function setHasEquiv(s, v) {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
// Map<any, Set<any>> insert with value equality on both keys and
|
|
25
|
-
// members
|
|
25
|
+
// members - so a preference/ancestry relation expressed with freshly
|
|
26
26
|
// allocated vectors like [:km :m] reads back the same as the original.
|
|
27
27
|
// Without this, everything that keys on dispatch values (prefer tables,
|
|
28
28
|
// hierarchy maps) silently loses entries for compound keys.
|
|
@@ -77,9 +77,9 @@ function _deriveInto(h, tag, parent) {
|
|
|
77
77
|
}
|
|
78
78
|
addRel(h.parents, tag, parent);
|
|
79
79
|
// Matches Clojure's derive: new ancestor relations flow to
|
|
80
|
-
// { tag and everything under tag }
|
|
80
|
+
// { tag and everything under tag } x { parent and everything above parent }.
|
|
81
81
|
// Crucially, the left side is the DESCENDANTS of tag (plus tag), not
|
|
82
|
-
// its ancestors
|
|
82
|
+
// its ancestors - deriving 'tag isa parent' must not make tag's
|
|
83
83
|
// existing ancestors also isa parent.
|
|
84
84
|
const withSelf = (m, t) => {
|
|
85
85
|
const acc = new Set([t]);
|
|
@@ -195,7 +195,7 @@ class MultiFn {
|
|
|
195
195
|
this.methodCache = new Map();
|
|
196
196
|
this.cachedHierarchy = this.hierarchy.deref();
|
|
197
197
|
// defaultDispatchVal is immutable after construction, so the
|
|
198
|
-
// resolved default fn only changes when methodTable changes
|
|
198
|
+
// resolved default fn only changes when methodTable changes -
|
|
199
199
|
// which always routes through resetCache. Memoize here so
|
|
200
200
|
// getMethod's no-match branch is O(1).
|
|
201
201
|
const defKey = findKeyByEquiv(this.methodTable, this.defaultDispatchVal);
|
|
@@ -238,8 +238,8 @@ class MultiFn {
|
|
|
238
238
|
// Two-path cache read: primitives hit Map.get in O(1); non-primitive
|
|
239
239
|
// dispatch values (typically vectors) scan the cache with _EQ_ so
|
|
240
240
|
// freshly-allocated structurally-equal vectors hit prior entries.
|
|
241
|
-
// Previously non-primitives skipped the cache entirely
|
|
242
|
-
// dispatch redid findBest, which scans methodTable
|
|
241
|
+
// Previously non-primitives skipped the cache entirely - every
|
|
242
|
+
// dispatch redid findBest, which scans methodTable x _isa cost.
|
|
243
243
|
if (isPrimitive(val)) {
|
|
244
244
|
const cached = this.methodCache.get(val);
|
|
245
245
|
if (cached !== undefined) return cached;
|
|
@@ -270,10 +270,10 @@ class MultiFn {
|
|
|
270
270
|
export function defmulti(name, dispatchFn, opts) {
|
|
271
271
|
opts = opts || {};
|
|
272
272
|
const defaultVal = 'default' in opts ? opts.default : 'default';
|
|
273
|
-
// Accept three shapes for :hierarchy
|
|
274
|
-
// (a) omitted
|
|
275
|
-
// (b) a deref-able ref (atom/var-like)
|
|
276
|
-
// (c) a plain hierarchy (the result of make-hierarchy)
|
|
273
|
+
// Accept three shapes for :hierarchy -
|
|
274
|
+
// (a) omitted -> defer to the global hierarchy
|
|
275
|
+
// (b) a deref-able ref (atom/var-like) -> use as-is
|
|
276
|
+
// (c) a plain hierarchy (the result of make-hierarchy) -> wrap so
|
|
277
277
|
// MultiFn can call .deref() on it uniformly. The wrapped form
|
|
278
278
|
// is a frozen snapshot of that hierarchy at defmulti time.
|
|
279
279
|
let hierarchy;
|
package/src/squint/set.js
CHANGED
|
@@ -24,7 +24,7 @@ export function intersection(...xs) {
|
|
|
24
24
|
switch (xs.length) {
|
|
25
25
|
case 0: return null;
|
|
26
26
|
case 1: return xs[0];
|
|
27
|
-
case 2: return xs[0].
|
|
27
|
+
case 2: return xs[0].size > xs[1].size ?
|
|
28
28
|
_intersection2(xs[0], xs[1]) :
|
|
29
29
|
_intersection2(xs[1], xs[0]);
|
|
30
30
|
default: return _bubble_max_key((x) => 0 - x.size, xs).reduce(_intersection2);
|
|
@@ -62,8 +62,8 @@ export function union(...xs) {
|
|
|
62
62
|
switch (xs.length) {
|
|
63
63
|
case 0: return null;
|
|
64
64
|
case 1: return xs[0];
|
|
65
|
-
case 2: return xs[0].
|
|
66
|
-
_union2(xs[0], xs[1]) :
|
|
65
|
+
case 2: return xs[0].size > xs[1].size ?
|
|
66
|
+
_union2(xs[0], xs[1]) :
|
|
67
67
|
_union2(xs[1], xs[0]);
|
|
68
68
|
default: return _bubble_max_key((x) => x.size, xs).reduce(_union2);
|
|
69
69
|
}
|
package/src/squint/string.js
CHANGED
|
@@ -40,7 +40,7 @@ export function trimr(s) {
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
function discardTrailingIfNeeded(limit, v) {
|
|
43
|
-
if (limit == null && v.length > 1) {
|
|
43
|
+
if ((limit == null || limit === 0) && v.length > 1) {
|
|
44
44
|
for (;;)
|
|
45
45
|
if (v[v.length - 1] === "") {
|
|
46
46
|
v.pop();
|
|
@@ -50,8 +50,25 @@ function discardTrailingIfNeeded(limit, v) {
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
export function split(s, re, limit) {
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
// Clojure's limit caps the number of splits and keeps the remainder, unlike
|
|
54
|
+
// JS String.prototype.split which truncates the result. Only a positive
|
|
55
|
+
// limit changes behaviour; <1 (or unset) does a full split, with trailing
|
|
56
|
+
// empties discarded when the limit is 0 / unset.
|
|
57
|
+
if (limit == null || limit < 1) {
|
|
58
|
+
return discardTrailingIfNeeded(limit, s.split(re));
|
|
59
|
+
}
|
|
60
|
+
const parts = [];
|
|
61
|
+
let rem = s;
|
|
62
|
+
while (limit > 1) {
|
|
63
|
+
const m = rem.match(re);
|
|
64
|
+
if (m == null) break;
|
|
65
|
+
const idx = m.index;
|
|
66
|
+
parts.push(rem.substring(0, idx));
|
|
67
|
+
rem = rem.substring(idx + m[0].length);
|
|
68
|
+
limit--;
|
|
69
|
+
}
|
|
70
|
+
parts.push(rem);
|
|
71
|
+
return parts;
|
|
55
72
|
}
|
|
56
73
|
|
|
57
74
|
export function starts_with_QMARK_(s, substr) {
|