just-bash 2.14.4 → 2.14.5
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/CHANGELOG.md +10 -0
- package/dist/bin/chunks/{awk2-RSUCURL4.js → awk2-E4ZIJMAJ.js} +1 -1
- package/dist/bin/chunks/chunk-24DJ4XAS.js +18 -0
- package/dist/bin/chunks/{chunk-BGGF3ELU.js → chunk-B5DAHNDY.js} +1 -1
- package/dist/bin/chunks/{chunk-ZUDPEMHG.js → chunk-BSEJNQWT.js} +1 -1
- package/dist/bin/chunks/{chunk-JDNI5HBX.js → chunk-C6FRS5UB.js} +3 -3
- package/dist/bin/chunks/{chunk-EONWONZV.js → chunk-DH7TPGPX.js} +1 -1
- package/dist/bin/{shell/chunks/chunk-AX6NCIX6.js → chunks/chunk-HGVUOC6C.js} +1 -1
- package/dist/bin/chunks/{chunk-WUYP7DID.js → chunk-NAOEMXWM.js} +1 -1
- package/dist/bin/{shell/chunks/chunk-PNI5NMXP.js → chunks/chunk-O6W3JFVY.js} +1 -1
- package/dist/bin/{shell/chunks/chunk-OXHVTSNH.js → chunks/chunk-P43NQKUN.js} +1 -1
- package/dist/bin/chunks/chunk-S7RKNZUQ.js +287 -0
- package/dist/bin/{shell/chunks/chunk-RA3TG4UK.js → chunks/chunk-SA4CENEN.js} +7 -7
- package/dist/bin/{shell/chunks/chunk-ARI4VLCN.js → chunks/chunk-SDOJRQF5.js} +1 -1
- package/dist/bin/{shell/chunks/chunk-S3QAKT3R.js → chunks/chunk-VECTAALH.js} +1 -1
- package/dist/bin/chunks/chunk-W47FXOOV.js +14 -0
- package/dist/bin/chunks/{chunk-EWDHVLQL.js → chunk-ZHOMXJBD.js} +1 -1
- package/dist/bin/{shell/chunks/expansion-QUT3FT7V.js → chunks/expansion-H3VFC532.js} +1 -1
- package/dist/bin/{shell/chunks/expr-G4EF4POQ.js → chunks/expr-VPJ77DR7.js} +1 -1
- package/dist/bin/chunks/find-O2KKT6KZ.js +2 -0
- package/dist/bin/{shell/chunks/flag-coverage-IK7WVGOO.js → chunks/flag-coverage-4SWQHVCF.js} +1 -1
- package/dist/bin/{shell/chunks/grep-7BJ7HFBM.js → chunks/grep-XUPY5Q52.js} +1 -1
- package/dist/bin/{shell/chunks/jq-DVZM2CEN.js → chunks/jq-A2KWQWN4.js} +1 -1
- package/dist/bin/chunks/rg-G2G2ZO5L.js +2 -0
- package/dist/bin/chunks/{sed-WWXBUNG3.js → sed-BM4W22OD.js} +1 -1
- package/dist/bin/chunks/tar-6PJ22BMV.js +2 -0
- package/dist/bin/chunks/{xan-MM3YYGD7.js → xan-D2GMWBRV.js} +1 -1
- package/dist/bin/chunks/{yq-CWUVVSHY.js → yq-EAXN747B.js} +1 -1
- package/dist/bin/just-bash.js +2 -2
- package/dist/bin/shell/chunks/{awk2-RSUCURL4.js → awk2-E4ZIJMAJ.js} +1 -1
- package/dist/bin/shell/chunks/chunk-24DJ4XAS.js +18 -0
- package/dist/bin/shell/chunks/{chunk-BGGF3ELU.js → chunk-B5DAHNDY.js} +1 -1
- package/dist/bin/shell/chunks/{chunk-ZUDPEMHG.js → chunk-BSEJNQWT.js} +1 -1
- package/dist/bin/shell/chunks/{chunk-JDNI5HBX.js → chunk-C6FRS5UB.js} +3 -3
- package/dist/bin/shell/chunks/{chunk-EONWONZV.js → chunk-DH7TPGPX.js} +1 -1
- package/dist/bin/{chunks/chunk-AX6NCIX6.js → shell/chunks/chunk-HGVUOC6C.js} +1 -1
- package/dist/bin/shell/chunks/{chunk-WUYP7DID.js → chunk-NAOEMXWM.js} +1 -1
- package/dist/bin/{chunks/chunk-PNI5NMXP.js → shell/chunks/chunk-O6W3JFVY.js} +1 -1
- package/dist/bin/{chunks/chunk-OXHVTSNH.js → shell/chunks/chunk-P43NQKUN.js} +1 -1
- package/dist/bin/shell/chunks/chunk-S7RKNZUQ.js +287 -0
- package/dist/bin/{chunks/chunk-RA3TG4UK.js → shell/chunks/chunk-SA4CENEN.js} +7 -7
- package/dist/bin/{chunks/chunk-ARI4VLCN.js → shell/chunks/chunk-SDOJRQF5.js} +1 -1
- package/dist/bin/{chunks/chunk-S3QAKT3R.js → shell/chunks/chunk-VECTAALH.js} +1 -1
- package/dist/bin/shell/chunks/chunk-W47FXOOV.js +14 -0
- package/dist/bin/shell/chunks/{chunk-EWDHVLQL.js → chunk-ZHOMXJBD.js} +1 -1
- package/dist/bin/{chunks/expansion-QUT3FT7V.js → shell/chunks/expansion-H3VFC532.js} +1 -1
- package/dist/bin/{chunks/expr-G4EF4POQ.js → shell/chunks/expr-VPJ77DR7.js} +1 -1
- package/dist/bin/shell/chunks/find-O2KKT6KZ.js +2 -0
- package/dist/bin/{chunks/flag-coverage-IK7WVGOO.js → shell/chunks/flag-coverage-4SWQHVCF.js} +1 -1
- package/dist/bin/{chunks/grep-7BJ7HFBM.js → shell/chunks/grep-XUPY5Q52.js} +1 -1
- package/dist/bin/{chunks/jq-DVZM2CEN.js → shell/chunks/jq-A2KWQWN4.js} +1 -1
- package/dist/bin/shell/chunks/rg-G2G2ZO5L.js +2 -0
- package/dist/bin/shell/chunks/{sed-WWXBUNG3.js → sed-BM4W22OD.js} +1 -1
- package/dist/bin/shell/chunks/tar-6PJ22BMV.js +2 -0
- package/dist/bin/shell/chunks/{xan-MM3YYGD7.js → xan-D2GMWBRV.js} +1 -1
- package/dist/bin/shell/chunks/{yq-CWUVVSHY.js → yq-EAXN747B.js} +1 -1
- package/dist/bin/shell/shell.js +2 -2
- package/dist/bundle/browser.js +606 -604
- package/dist/bundle/chunks/{awk2-JFGEGLFP.js → awk2-BBAGSFUB.js} +1 -1
- package/dist/bundle/chunks/chunk-2TRDZQLB.js +17 -0
- package/dist/bundle/chunks/{chunk-5KI4QWT5.js → chunk-3BS5SKQH.js} +1 -1
- package/dist/bundle/chunks/{chunk-B53Y5JFV.js → chunk-3H6UQG3A.js} +7 -7
- package/dist/bundle/chunks/chunk-6Z5SFZXK.js +286 -0
- package/dist/bundle/chunks/{chunk-YSHZL3MF.js → chunk-B74TABJS.js} +3 -3
- package/dist/bundle/chunks/{chunk-43RSSTFA.js → chunk-BGSUD5R5.js} +1 -1
- package/dist/bundle/chunks/{chunk-XIZSGUXJ.js → chunk-HKLCLINH.js} +1 -1
- package/dist/bundle/chunks/{chunk-GJTDUJ5Q.js → chunk-K6LIBGJA.js} +1 -1
- package/dist/bundle/chunks/{chunk-NRZWEENR.js → chunk-KRBPSX3W.js} +1 -1
- package/dist/bundle/chunks/{chunk-BAQA74XA.js → chunk-SNN4IESC.js} +1 -1
- package/dist/bundle/chunks/{chunk-D6EWIDSU.js → chunk-TP4BZANS.js} +1 -1
- package/dist/bundle/chunks/{chunk-5PYKJV42.js → chunk-V5MWI2OL.js} +1 -1
- package/dist/bundle/chunks/{chunk-MIMEPCXY.js → chunk-YMMW5UAP.js} +1 -1
- package/dist/bundle/chunks/chunk-YULBWSET.js +13 -0
- package/dist/bundle/chunks/{chunk-VBEY5J6R.js → chunk-ZZO3UDB3.js} +1 -1
- package/dist/bundle/chunks/{expansion-UGGADTZC.js → expansion-VBDYWVZR.js} +1 -1
- package/dist/bundle/chunks/{expr-DNFUYZGY.js → expr-YYCVMXE3.js} +1 -1
- package/dist/bundle/chunks/find-DH2ALKQS.js +1 -0
- package/dist/bundle/chunks/{flag-coverage-QFOIESUP.js → flag-coverage-6JEX67RU.js} +1 -1
- package/dist/bundle/chunks/{grep-2UMHPO7Y.js → grep-2HUTXO5U.js} +1 -1
- package/dist/bundle/chunks/{jq-LCDWFF5Y.js → jq-LYZFFBZB.js} +1 -1
- package/dist/bundle/chunks/rg-XNF3R3II.js +1 -0
- package/dist/bundle/chunks/{sed-OFX3F4FE.js → sed-JAPPVBEU.js} +1 -1
- package/dist/bundle/chunks/tar-MZQD7NO4.js +1 -0
- package/dist/bundle/chunks/{xan-X2BIJPJV.js → xan-UD7JYIL2.js} +1 -1
- package/dist/bundle/chunks/{yq-M7NFNNED.js → yq-OAKYHSXH.js} +1 -1
- package/dist/bundle/index.cjs +845 -843
- package/dist/bundle/index.js +2 -2
- package/dist/commands/search-engine/matcher.d.ts +6 -0
- package/dist/commands/search-engine/regex.d.ts +13 -0
- package/package.json +2 -2
- package/dist/bin/chunks/chunk-2HVFB2TU.js +0 -287
- package/dist/bin/chunks/chunk-DU4S5MUI.js +0 -13
- package/dist/bin/chunks/chunk-TTNNO45C.js +0 -17
- package/dist/bin/chunks/find-7CVMEZBO.js +0 -2
- package/dist/bin/chunks/rg-LA2FQFMS.js +0 -2
- package/dist/bin/chunks/tar-GTGFEWDS.js +0 -2
- package/dist/bin/shell/chunks/chunk-2HVFB2TU.js +0 -287
- package/dist/bin/shell/chunks/chunk-DU4S5MUI.js +0 -13
- package/dist/bin/shell/chunks/chunk-TTNNO45C.js +0 -17
- package/dist/bin/shell/chunks/find-7CVMEZBO.js +0 -2
- package/dist/bin/shell/chunks/rg-LA2FQFMS.js +0 -2
- package/dist/bin/shell/chunks/tar-GTGFEWDS.js +0 -2
- package/dist/bundle/chunks/chunk-75FNCC7W.js +0 -286
- package/dist/bundle/chunks/chunk-PYDZ2LCK.js +0 -16
- package/dist/bundle/chunks/chunk-RQ254MFG.js +0 -12
- package/dist/bundle/chunks/find-KNMMLVJD.js +0 -1
- package/dist/bundle/chunks/rg-RYV2N6B5.js +0 -1
- package/dist/bundle/chunks/tar-LYLTEJV3.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"./chunk-
|
|
1
|
+
import{a,b}from"./chunk-TP4BZANS.js";import"./chunk-OJDRYQWQ.js";import"./chunk-24IMIIXA.js";import"./chunk-5QMZ5MUS.js";import"./chunk-B74TABJS.js";import"./chunk-GFQRA5P5.js";import"./chunk-74CEPOFO.js";import"./chunk-DXB73IDG.js";export{a as awkCommand2,b as flagsForFuzzing};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import{a as W}from"./chunk-B74TABJS.js";function _(n,t){let e=n.ignoreCase?t.toLowerCase():t,i=n.needles;for(let l=0;l<i.length;l++)if(e.indexOf(i[l])!==-1)return!0;return!1}function D(n,t){return n.replace(/\$(&|\d+|<([^>]+)>)/g,(e,i,l)=>{if(i==="&")return t[0];if(l!==void 0)return t.groups?.[l]??"";let o=parseInt(i,10);return t[o]??""})}function Q(n,t,e={}){let{invertMatch:i=!1,showLineNumbers:l=!1,countOnly:o=!1,countMatches:u=!1,filename:a="",onlyMatching:p=!1,beforeContext:k=0,afterContext:v=0,maxCount:A=0,contextSeparator:T="--",showColumn:O=!1,vimgrep:N=!1,showByteOffset:y=!1,replace:R=null,passthru:z=!1,multiline:U=!1,kResetGroup:P,preFilter:b}=e;if(U)return X(n,t,{invertMatch:i,showLineNumbers:l,countOnly:o,countMatches:u,filename:a,onlyMatching:p,beforeContext:k,afterContext:v,maxCount:A,contextSeparator:T,showColumn:O,showByteOffset:y,replace:R,kResetGroup:P});let M=n.split(`
|
|
2
|
+
`),j=M.length,L=j>0&&M[j-1]===""?j-1:j;if(o||u){let c=0,s=(u||p)&&!i;for(let h=0;h<L;h++){let r=M[h];if(!(b&&!i&&!_(b,r)))if(t.lastIndex=0,s)for(let m=t.exec(r);m!==null;m=t.exec(r))c++,m[0].length===0&&t.lastIndex++;else t.test(r)!==i&&c++}return{output:`${a?`${a}:${c}`:String(c)}
|
|
3
|
+
`,matched:c>0,matchCount:c}}if(k===0&&v===0&&!z){let c=[],s=!1,d=0,h=0;for(let r=0;r<L&&!(A>0&&d>=A);r++){let m=M[r],I=null;if(b&&!_(b,m)||(t.lastIndex=0,I=t.exec(m)),I!==null!==i)if(s=!0,d++,p)for(let g=I;g!==null;g=t.exec(m)){let F=P!==void 0?g[P]??"":g[0],E=R!==null?D(R,g):F,x=a?`${a}:`:"";y&&(x+=`${h+g.index}:`),l&&(x+=`${r+1}:`),O&&(x+=`${g.index+1}:`),c.push(x+E),g[0].length===0&&t.lastIndex++}else if(N)for(let g=I;g!==null;g=t.exec(m)){let F=a?`${a}:`:"";y&&(F+=`${h+g.index}:`),l&&(F+=`${r+1}:`),O&&(F+=`${g.index+1}:`),c.push(F+m),g[0].length===0&&t.lastIndex++}else{let g=I?I.index+1:1,F=m;R!==null&&(t.lastIndex=0,F=t.replace(m,(...x)=>{if(x[0].length===0)return"";let G=x,B=x[x.length-1];return typeof B=="object"&&B!==null?(G.groups=B,G.input=x[x.length-2],G.index=x[x.length-3]):(G.input=x[x.length-1],G.index=x[x.length-2]),D(R,G)}));let E=a?`${a}:`:"";y&&(E+=`${h+(I?I.index:0)}:`),l&&(E+=`${r+1}:`),O&&(E+=`${g}:`),c.push(E+F)}h+=m.length+1}return{output:c.length>0?`${c.join(`
|
|
4
|
+
`)}
|
|
5
|
+
`:"",matched:s,matchCount:d}}if(z){let c=[],s=!1,d=0;for(let h=0;h<L;h++){let r=M[h],m;b&&!_(b,r)?m=!1:(t.lastIndex=0,m=t.test(r));let I=m!==i;I&&(s=!0,d++);let Z=I?":":"-",g=a?`${a}${Z}`:"";l&&(g+=`${h+1}${Z}`),c.push(g+r)}return{output:c.length>0?`${c.join(`
|
|
6
|
+
`)}
|
|
7
|
+
`:"",matched:s,matchCount:d}}let C=[],S=0,w=new Set,f=-1,$=[];for(let c=0;c<L&&!(A>0&&S>=A);c++){let s=M[c],d;b&&!_(b,s)?d=!1:(t.lastIndex=0,d=t.test(s)),d!==i&&($.push(c),S++)}for(let c of $){let s=Math.max(0,c-k);f>=0&&s>f+1&&C.push(T);for(let h=s;h<c;h++)if(!w.has(h)){w.add(h),f=h;let r=M[h];l&&(r=`${h+1}-${r}`),a&&(r=`${a}-${r}`),C.push(r)}if(!w.has(c)){w.add(c),f=c;let h=M[c];if(p){t.lastIndex=0;for(let r=t.exec(h);r!==null;r=t.exec(h)){let m=P!==void 0?r[P]??"":r[0],I=R!==null?R:m,Z=a?`${a}:`:"";l&&(Z+=`${c+1}:`),O&&(Z+=`${r.index+1}:`),C.push(Z+I),r[0].length===0&&t.lastIndex++}}else{let r=h;l&&(r=`${c+1}:${r}`),a&&(r=`${a}:${r}`),C.push(r)}}let d=Math.min(L-1,c+v);for(let h=c+1;h<=d;h++)if(!w.has(h)){w.add(h),f=h;let r=M[h];l&&(r=`${h+1}-${r}`),a&&(r=`${a}-${r}`),C.push(r)}}return{output:C.length>0?`${C.join(`
|
|
8
|
+
`)}
|
|
9
|
+
`:"",matched:S>0,matchCount:S}}function X(n,t,e){let{invertMatch:i,showLineNumbers:l,countOnly:o,countMatches:u,filename:a,onlyMatching:p,beforeContext:k,afterContext:v,maxCount:A,contextSeparator:T,showColumn:O,showByteOffset:N,replace:y,kResetGroup:R}=e,z=n.split(`
|
|
10
|
+
`),U=z.length,P=U>0&&z[U-1]===""?U-1:U,b=[0];for(let f=0;f<n.length;f++)n[f]===`
|
|
11
|
+
`&&b.push(f+1);let M=f=>{let $=0;for(let c=0;c<b.length&&!(b[c]>f);c++)$=c;return $},j=f=>{let $=M(f);return f-b[$]+1},L=[];t.lastIndex=0;for(let f=t.exec(n);f!==null&&!(A>0&&L.length>=A);f=t.exec(n)){let $=M(f.index),c=M(f.index+Math.max(0,f[0].length-1)),s=R!==void 0?f[R]??"":f[0];L.push({startLine:$,endLine:c,byteOffset:f.index,column:j(f.index),matchText:s}),f[0].length===0&&t.lastIndex++}if(o||u){let f;if(u)f=i?0:L.length;else{let c=new Set;for(let s of L)for(let d=s.startLine;d<=s.endLine;d++)c.add(d);f=i?P-c.size:c.size}return{output:`${a?`${a}:${f}`:String(f)}
|
|
12
|
+
`,matched:f>0,matchCount:f}}if(i){let f=new Set;for(let c of L)for(let s=c.startLine;s<=c.endLine;s++)f.add(s);let $=[];for(let c=0;c<P;c++)if(!f.has(c)){let s=z[c];l&&(s=`${c+1}:${s}`),a&&(s=`${a}:${s}`),$.push(s)}return{output:$.length>0?`${$.join(`
|
|
13
|
+
`)}
|
|
14
|
+
`:"",matched:$.length>0,matchCount:$.length}}if(L.length===0)return{output:"",matched:!1,matchCount:0};let C=new Set,S=-1,w=[];for(let f of L){let $=Math.max(0,f.startLine-k),c=Math.min(P-1,f.endLine+v);S>=0&&$>S+1&&w.push(T);for(let s=$;s<f.startLine;s++)if(!C.has(s)){C.add(s),S=s;let d=z[s];l&&(d=`${s+1}-${d}`),a&&(d=`${a}-${d}`),w.push(d)}if(p){let s=y!==null?y:f.matchText,d=a?`${a}:`:"";N&&(d+=`${f.byteOffset}:`),l&&(d+=`${f.startLine+1}:`),O&&(d+=`${f.column}:`),w.push(d+s);for(let h=f.startLine;h<=f.endLine;h++)C.add(h),S=h}else for(let s=f.startLine;s<=f.endLine&&s<P;s++)if(!C.has(s)){C.add(s),S=s;let d=z[s];y!==null&&s===f.startLine&&(t.lastIndex=0,d=t.replace(d,y));let h=a?`${a}:`:"";N&&s===f.startLine&&(h+=`${f.byteOffset}:`),l&&(h+=`${s+1}:`),O&&s===f.startLine&&(h+=`${f.column}:`),w.push(h+d)}for(let s=f.endLine+1;s<=c;s++)if(!C.has(s)){C.add(s),S=s;let d=z[s];l&&(d=`${s+1}-${d}`),a&&(d=`${a}-${d}`),w.push(d)}}return{output:w.length>0?`${w.join(`
|
|
15
|
+
`)}
|
|
16
|
+
`:"",matched:!0,matchCount:L.length}}var q=new Map([["alpha","a-zA-Z"],["digit","0-9"],["alnum","a-zA-Z0-9"],["lower","a-z"],["upper","A-Z"],["xdigit","0-9A-Fa-f"],["space"," \\t\\n\\r\\f\\v"],["blank"," \\t"],["punct","!-/:-@\\[-`{-~"],["graph","!-~"],["print"," -~"],["cntrl","\\x00-\\x1F\\x7F"],["ascii","\\x00-\\x7F"],["word","a-zA-Z0-9_"]]);function K(n){let t="",e=0;for(;e<n.length;){if(n.slice(e,e+7)==="[[:<:]]"){t+="\\b",e+=7;continue}if(n.slice(e,e+7)==="[[:>:]]"){t+="\\b",e+=7;continue}if(n[e]==="["){let i="[";for(e++,e<n.length&&(n[e]==="^"||n[e]==="!")&&(i+="^",e++),e<n.length&&n[e]==="]"&&(i+="\\]",e++);e<n.length&&n[e]!=="]";){if(n[e]==="["&&e+1<n.length&&n[e+1]===":"){let l=n.indexOf(":]",e+2);if(l!==-1){let o=n.slice(e+2,l),u=q.get(o);if(u){i+=u,e=l+2;continue}}}if(n[e]==="\\"&&e+1<n.length){i+=n[e]+n[e+1],e+=2;continue}i+=n[e],e++}e<n.length&&n[e]==="]"&&(i+="]",e++),t+=i;continue}if(n[e]==="\\"&&e+1<n.length){t+=n[e]+n[e+1],e+=2;continue}t+=n[e],e++}return t}function H(n,t){let e,i;switch(t.mode){case"fixed":e=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");break;case"extended":case"perl":{if(e=K(n),e=e.replace(/\(\?P<([^>]+)>/g,"(?<$1>"),t.mode==="perl"){e=ee(e),e=ne(e),e=te(e);let a=oe(e);e=a.pattern,i=a.kResetGroup}break}default:e=K(n),e=he(e);break}t.wholeWord&&(e=`\\b(?:${e})\\b`),t.lineRegexp&&(e=`^${e}$`);let l=/\\u\{[0-9A-Fa-f]+\}/.test(e),o="g"+(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.multilineDotall?"s":"")+(l?"u":""),u=J(e,t.ignoreCase??!1);return{regex:W(e,o),kResetGroup:i,preFilter:u??void 0}}function J(n,t){let e=n;if(e.startsWith("\\b(?:")&&e.endsWith(")\\b")?e=e.slice(5,e.length-3):e.startsWith("\\b")&&e.endsWith("\\b")&&e.length>=4&&(e=e.slice(2,e.length-2)),e.length===0)return null;let i=V(e);if(i===null)return null;let l=[];for(let o of i){let u=Y(o);if(u===null||u.length===0)return null;l.push(u)}return l.length===0?null:{needles:t?l.map(o=>o.toLowerCase()):l,ignoreCase:t}}function V(n){let t=[],e=0,i=!1,l=0;for(let o=0;o<n.length;o++){let u=n[o];if(u==="\\"){o++;continue}if(i){u==="]"&&(i=!1);continue}if(u==="[")i=!0;else if(u==="(")e++;else if(u===")"){if(e--,e<0)return null}else u==="|"&&e===0&&(t.push(n.slice(l,o)),l=o+1)}return e!==0||i?null:(t.push(n.slice(l)),t)}function Y(n){let t="";for(let e=0;e<n.length;e++){let i=n[e];if(i==="\\"){let l=n[e+1];if(l===void 0||/[dDwWsSbBAZzGQE0-9ckpPNXRxuU]/.test(l))return null;l==="n"?t+=`
|
|
17
|
+
`:l==="t"?t+=" ":l==="r"?t+="\r":l==="f"?t+="\f":l==="v"?t+="\v":t+=l,e++;continue}if(/[.*+?^${}()|[\]]/.test(i))return null;t+=i}return t}function ee(n){let t="",e=0;for(;e<n.length;)if(n[e]==="\\"&&e+1<n.length&&n[e+1]==="Q"){e+=2;let i="";for(;e<n.length;){if(n[e]==="\\"&&e+1<n.length&&n[e+1]==="E"){e+=2;break}i+=n[e],e++}t+=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}else t+=n[e],e++;return t}function ne(n){return n.replace(/\\x\{([0-9A-Fa-f]+)\}/g,"\\u{$1}")}function te(n){let t="",e=0;for(;e<n.length;){if(n[e]==="("&&e+1<n.length&&n[e+1]==="?"){let i=n.slice(e).match(/^\(\?([imsx]*)(-[imsx]*)?(:|$|\))/);if(i){let l=i[1]||"",o=i[2]||"",u=i[3];if(u===":"){let a=e+i[0].length-1,p=ie(n,e);if(p!==-1){let k=n.slice(a+1,p),v=le(k,l,o);t+=`(?:${v})`,e=p+1;continue}}else if(u===")"||u===""){e+=i[0].length;continue}}}t+=n[e],e++}return t}function ie(n,t){let e=0,i=t;for(;i<n.length;){if(n[i]==="\\"){i+=2;continue}if(n[i]==="["){for(i++;i<n.length&&n[i]!=="]";)n[i]==="\\"&&i++,i++;i++;continue}if(n[i]==="(")e++;else if(n[i]===")"&&(e--,e===0))return i;i++}return-1}function le(n,t,e){let i=n;return t.includes("i")&&(i=se(i)),i}function se(n){let t="",e=0;for(;e<n.length;){let i=n[e];if(i==="\\"){e+1<n.length?(t+=i+n[e+1],e+=2):(t+=i,e++);continue}if(i==="["){t+=i,e++,e<n.length&&n[e]==="^"&&(t+=n[e],e++);let l=[];for(;e<n.length&&n[e]!=="]";)if(n[e]==="\\")l.push(n[e]),e++,e<n.length&&(l.push(n[e]),e++);else if(n[e]==="-"&&l.length>0&&e+1<n.length&&n[e+1]!=="]"){let o=l[l.length-1],u=n[e+1];l.push("-"),l.push(u),/[a-z]/.test(o)&&/[a-z]/.test(u)?(l.push(o.toUpperCase()),l.push("-"),l.push(u.toUpperCase())):/[A-Z]/.test(o)&&/[A-Z]/.test(u)&&(l.push(o.toLowerCase()),l.push("-"),l.push(u.toLowerCase())),e+=2}else{let o=n[e];if(l.push(o),/[a-zA-Z]/.test(o)){let u=o===o.toLowerCase()?o.toUpperCase():o.toLowerCase();l.includes(u)||l.push(u)}e++}t+=l.join(""),e<n.length&&(t+=n[e],e++);continue}if(/[a-zA-Z]/.test(i)){let l=i.toLowerCase(),o=i.toUpperCase();t+=`[${o}${l}]`}else t+=i;e++}return t}function oe(n){let t=fe(n);if(t===-1)return{pattern:n};let e=n.slice(0,t),i=n.slice(t+2),l=ce(e);return{pattern:`(?:${e})(${i})`,kResetGroup:l+1}}function fe(n){let t=0;for(;t<n.length-1;)if(n[t]==="\\"){if(n[t+1]==="K"){let e=0,i=t-1;for(;i>=0&&n[i]==="\\";)e++,i--;if(e%2===0)return t}t+=2}else t++;return-1}function ce(n){let t=0,e=0;for(;e<n.length;){if(n[e]==="\\"){e+=2;continue}if(n[e]==="["){for(e++;e<n.length&&n[e]!=="]";)n[e]==="\\"&&e++,e++;e++;continue}if(n[e]==="(")if(e+1<n.length&&n[e+1]==="?"){if(e+2<n.length){let i=n[e+2];if(i===":"||i==="="||i==="!"){e++;continue}if(i==="<"&&e+3<n.length){let l=n[e+3];if(l==="="||l==="!"){e++;continue}t++,e++;continue}}}else t++;e++}return t}function ue(n){let t=n.replace(/\$\{0\}|\$0(?![0-9])/g,"$$&");return t=t.replace(/\$\{([^0-9}][^}]*)\}/g,"$$<$1>"),t=t.replace(/\$([a-zA-Z_][a-zA-Z0-9_]*)(?![>0-9])/g,"$$<$1>"),t}function he(n){let t="",e=0,i=!0,l=0;for(;e<n.length;){let o=n[e];if(o==="["){for(t+=o,e++,e<n.length&&(n[e]==="^"||n[e]==="!")&&(t+=n[e],e++),e<n.length&&n[e]==="]"&&(t+=n[e],e++);e<n.length&&n[e]!=="]";)n[e]==="\\"&&e+1<n.length?(t+=n[e]+n[e+1],e+=2):(t+=n[e],e++);e<n.length&&n[e]==="]"&&(t+=n[e],e++),i=!1;continue}if(o==="\\"&&e+1<n.length){let u=n[e+1];if(u==="|"){t+="|",e+=2,i=!0;continue}if(u==="("){t+="(",e+=2,l++,i=!0;continue}if(u===")"){t+=")",e+=2,l=Math.max(0,l-1),i=!1;continue}if(u==="{"){let p=n.slice(e).match(/^\\{(\d+)(,(\d*)?)?\\}/);if(p){let k=p[1],v=p[2]!==void 0,A=p[3]||"";v?t+=`{${k},${A}}`:t+=`{${k}}`,e+=p[0].length,i=!1;continue}t+="\\{",e+=2,i=!1;continue}if(u==="}"){t+="\\}",e+=2,i=!1;continue}t+=o+u,e+=2,i=!1;continue}if(o==="*"&&i){t+="\\*",e++;continue}if(o==="^"){if(i){t+="^",e++;continue}t+="\\^",e++;continue}if(o==="$"){let u=e===n.length-1,a=e+2<n.length&&n[e+1]==="\\"&&n[e+2]===")";u||a?t+="$":t+="\\$",e++,i=!1;continue}o==="+"||o==="?"||o==="|"||o==="("||o===")"||o==="{"||o==="}"?t+=`\\${o}`:t+=o,e++,i=!1}return t}export{Q as a,H as b,ue as c};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as F,b,c as M,d as qe,e as w,f as v,g as Y,h as B}from"./chunk-DBKNVD4L.js";import{a as nt}from"./chunk-PXTK5WE2.js";import{a as $}from"./chunk-
|
|
1
|
+
import{a as F,b,c as M,d as qe,e as w,f as v,g as Y,h as B}from"./chunk-DBKNVD4L.js";import{a as nt}from"./chunk-PXTK5WE2.js";import{a as $}from"./chunk-KRBPSX3W.js";import{f as _e,g as X}from"./chunk-7TSDKFEO.js";import{a as H}from"./chunk-B74TABJS.js";import{a as We}from"./chunk-7L36YK2X.js";import{a as D,b as G}from"./chunk-74CEPOFO.js";import{b as Ve,d as Qe,e as et,f as tt}from"./chunk-DXB73IDG.js";var _,He=Ve(()=>{"use strict";_=class{input;pos=0;tokens=[];constructor(n){this.input=n}tokenize(){for(;this.pos<this.input.length&&(this.skipWhitespace(),!(this.pos>=this.input.length));){let n=this.nextToken();n&&this.tokens.push(n)}return this.tokens.push({type:"eof",value:"",pos:this.pos}),this.tokens}skipWhitespace(){for(;this.pos<this.input.length;){let n=this.input[this.pos];if(n===" "||n===" "||n===`
|
|
2
2
|
`||n==="\r")this.pos++;else if(n==="#")for(;this.pos<this.input.length&&this.input[this.pos]!==`
|
|
3
3
|
`;)this.pos++;else break}}nextToken(){let n=this.pos,t=this.input[this.pos];if(t>="0"&&t<="9")return this.readNumber();if(t==='"'||t==="'"||t==="`")return this.readString(t);if(t==="b"&&this.pos+1<this.input.length){let o=this.input[this.pos+1];if(o==='"'||o==="'"||o==="`")return this.pos++,this.readString(o)}if(t==="/"){let o=this.tokens[this.tokens.length-1];return o&&(o.type==="int"||o.type==="float"||o.type==="string"||o.type==="ident"||o.type===")"||o.type==="]")?this.input[this.pos+1]==="/"?(this.pos+=2,{type:"//",value:"//",pos:n}):(this.pos++,{type:"/",value:"/",pos:n}):this.readRegex()}if(this.match("not in"))return{type:"not in",value:"not in",pos:n};if(this.match("=>"))return{type:"=>",value:"=>",pos:n};if(this.match("**"))return{type:"**",value:"**",pos:n};if(this.match("++"))return{type:"++",value:"++",pos:n};if(this.match("//"))return{type:"//",value:"//",pos:n};if(this.match("=="))return{type:"==",value:"==",pos:n};if(this.match("!="))return{type:"!=",value:"!=",pos:n};if(this.match("<="))return{type:"<=",value:"<=",pos:n};if(this.match(">="))return{type:">=",value:">=",pos:n};if(this.match("&&"))return{type:"&&",value:"&&",pos:n};if(this.match("||"))return{type:"||",value:"||",pos:n};let r=new Map([["(","("],[")",")"],["[","["],["]","]"],["{","{"],["}","}"],[",",","],[":",":"],[";",";"],["+","+"],["-","-"],["*","*"],["%","%"],["<","<"],[">",">"],["!","!"],[".","."],["|","|"],["=","="]]).get(t);if(r!==void 0)return this.pos++,{type:r,value:t,pos:n};if(this.isIdentStart(t))return this.readIdentifier();throw new Error(`Unexpected character '${t}' at position ${this.pos}`)}match(n){if(this.input.slice(this.pos,this.pos+n.length)===n){if(/^[a-zA-Z]/.test(n)){let t=this.input[this.pos+n.length];if(t&&this.isIdentChar(t))return!1}return this.pos+=n.length,!0}return!1}isIdentStart(n){return n>="a"&&n<="z"||n>="A"&&n<="Z"||n==="_"}isIdentChar(n){return this.isIdentStart(n)||n>="0"&&n<="9"}readNumber(){let n=this.pos,t=!1,s=!1;for(;this.pos<this.input.length;){let o=this.input[this.pos];if(o>="0"&&o<="9")this.pos++;else if(o==="_")this.pos++;else if(o==="."&&!t&&!s)t=!0,this.pos++;else if((o==="e"||o==="E")&&!s)s=!0,t=!0,this.pos++,this.pos<this.input.length&&(this.input[this.pos]==="+"||this.input[this.pos]==="-")&&this.pos++;else break}let r=this.input.slice(n,this.pos).replace(/_/g,"");return{type:t?"float":"int",value:r,pos:n}}readString(n){let t=this.pos;this.pos++;let s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r===n)return this.pos++,{type:"string",value:s,pos:t};if(r==="\\"){if(this.pos++,this.pos<this.input.length){let o=this.input[this.pos];switch(o){case"n":s+=`
|
|
4
4
|
`;break;case"r":s+="\r";break;case"t":s+=" ";break;case"\\":s+="\\";break;case'"':s+='"';break;case"'":s+="'";break;case"`":s+="`";break;case"0":s+="\0";break;default:s+=o}this.pos++}}else s+=r,this.pos++}throw new Error(`Unterminated string starting at position ${t}`)}readRegex(){let n=this.pos;this.pos++;let t="",s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r==="/"){for(this.pos++;this.pos<this.input.length&&this.input[this.pos]==="i";)s+=this.input[this.pos],this.pos++;return{type:"regex",value:t+(s?`/${s}`:""),pos:n}}r==="\\"?(t+=r,this.pos++,this.pos<this.input.length&&(t+=this.input[this.pos],this.pos++)):(t+=r,this.pos++)}throw new Error(`Unterminated regex starting at position ${n}`)}readIdentifier(){let n=this.pos;for(;this.pos<this.input.length&&this.isIdentChar(this.input[this.pos]);)this.pos++;let t=!1;this.pos<this.input.length&&this.input[this.pos]==="?"&&(t=!0,this.pos++);let s=this.input.slice(n,t?this.pos-1:this.pos);t&&(s+="?");let r=new Map([["true","true"],["false","false"],["null","null"],["and","and"],["or","or"],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["in","in"],["as","as"],["_","_"]]),o=s.replace(/\?$/,""),a=r.get(o);return a!==void 0&&!t?{type:a,value:o,pos:n}:{type:"ident",value:s,pos:n}}}});var Je={};Qe(Je,{parseMoonblade:()=>q,parseNamedExpressions:()=>U});function U(e){let n=[],s=new _(e).tokenize(),r=0,o=()=>s[r]||{type:"eof",value:"",pos:0},a=()=>s[r++];for(;o().type!=="eof";){if(o().type===","&&n.length>0){a();continue}let d=[],u=0,p=r;for(;o().type!=="eof";){let i=o();if((i.type===","||i.type==="as")&&u===0)break;(i.type==="("||i.type==="["||i.type==="{")&&u++,(i.type===")"||i.type==="]"||i.type==="}")&&u--,d.push(a())}d.push({type:"eof",value:"",pos:0});let h=new J(d).parse(),l;if(o().type==="as")if(a(),o().type==="("){a();let i=[];for(;o().type!==")"&&o().type!=="eof";)(o().type==="ident"||o().type==="string")&&(i.push(o().value),a()),o().type===","&&a();o().type===")"&&a(),l=i}else if(o().type==="ident"||o().type==="string")l=o().value,a();else throw new Error(`Expected name after 'as', got ${o().type}`);else l=e.slice(s[p].pos,s[r-1]?.pos||e.length).trim(),h.type==="identifier"&&(l=h.name);n.push({expr:h,name:l})}return n}function q(e){let t=new _(e).tokenize();return new J(t).parse()}var R,J,V=Ve(()=>{"use strict";He();R={PIPE:1,OR:2,AND:3,EQUALITY:4,COMPARISON:5,ADDITIVE:6,MULTIPLICATIVE:7,POWER:8,UNARY:9,POSTFIX:10},J=class{pos=0;tokens;constructor(n){this.tokens=n}parse(){let n=this.parseExpr(0);if(this.peek().type!=="eof")throw new Error(`Unexpected token: ${this.peek().value}`);return n}parseExpr(n){let t=this.parsePrefix();for(;;){let s=this.peek(),r=this.getInfixPrec(s.type);if(r<n)break;t=this.parseInfix(t,r)}return t}parsePrefix(){let n=this.peek();switch(n.type){case"int":return this.advance(),{type:"int",value:Number.parseInt(n.value,10)};case"float":return this.advance(),{type:"float",value:Number.parseFloat(n.value)};case"string":return this.advance(),{type:"string",value:n.value};case"regex":{this.advance();let t=n.value.split("/"),s=t.length>1?t[t.length-1]:"";return{type:"regex",pattern:t.slice(0,-1).join("/")||n.value,caseInsensitive:s.includes("i")}}case"true":return this.advance(),{type:"bool",value:!0};case"false":return this.advance(),{type:"bool",value:!1};case"null":return this.advance(),{type:"null"};case"_":return this.advance(),{type:"underscore"};case"ident":{let t=n.value,s=t.endsWith("?"),r=s?t.slice(0,-1):t;if(this.advance(),this.peek().type==="(")return this.parseFunctionCall(r);if(this.peek().type==="=>"){this.advance();let o=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:[r],body:o},[r])}return{type:"identifier",name:r,unsure:s}}case"(":{this.advance();let t=this.pos;if(this.peek().type===")"){if(this.advance(),this.peek().type==="=>"){this.advance();let r=this.parseExpr(0);return{type:"lambda",params:[],body:r}}throw new Error("Empty parentheses not allowed")}if(this.peek().type==="ident"){let r=[this.peek().value];this.advance();let o=!0;for(;this.peek().type===",";)if(this.advance(),this.peek().type==="ident")r.push(this.peek().value),this.advance();else{o=!1;break}if(o&&this.peek().type===")"&&this.peekAt(1).type==="=>"){this.advance(),this.advance();let a=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:r,body:a},r)}this.pos=t}let s=this.parseExpr(0);return this.expect(")"),s}case"[":return this.parseList();case"{":return this.parseMap();case"-":{this.advance();let t=this.parseExpr(R.UNARY);return t.type==="int"?{type:"int",value:-t.value}:t.type==="float"?{type:"float",value:-t.value}:{type:"func",name:"neg",args:[{expr:t}]}}case"!":return this.advance(),{type:"func",name:"not",args:[{expr:this.parseExpr(R.UNARY)}]};default:throw new Error(`Unexpected token: ${n.type} (${n.value})`)}}parseFunctionCall(n){this.expect("(");let t=[];if(this.peek().type!==")")do{t.length>0&&this.peek().type===","&&this.advance();let s;if(this.peek().type==="ident"){let o=this.peek().value,a=this.pos+1;a<this.tokens.length&&this.tokens[a].type==="="&&(s=o,this.advance(),this.advance())}let r=this.parseExpr(0);t.push({name:s,expr:r})}while(this.peek().type===",");return this.expect(")"),{type:"func",name:n.toLowerCase(),args:t}}parseList(){this.expect("[");let n=[];if(this.peek().type!=="]")do n.length>0&&this.peek().type===","&&this.advance(),n.push(this.parseExpr(0));while(this.peek().type===",");return this.expect("]"),{type:"list",elements:n}}parseMap(){this.expect("{");let n=[];if(this.peek().type!=="}")do{n.length>0&&this.peek().type===","&&this.advance();let t;if(this.peek().type==="ident")t=this.peek().value,this.advance();else if(this.peek().type==="string")t=this.peek().value,this.advance();else throw new Error(`Expected map key, got ${this.peek().type}`);this.expect(":");let s=this.parseExpr(0);n.push({key:t,value:s})}while(this.peek().type===",");return this.expect("}"),{type:"map",entries:n}}parseInfix(n,t){let s=this.peek(),o=new Map([["+","add"],["-","sub"],["*","mul"],["/","div"],["//","idiv"],["%","mod"],["**","pow"],["++","concat"],["==","=="],["!=","!="],["<","<"],["<=","<="],[">",">"],[">=",">="],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["&&","and"],["and","and"],["||","or"],["or","or"]]).get(s.type);if(o!==void 0){this.advance();let a=this.parseExpr(t+(this.isRightAssoc(s.type)?0:1));return{type:"func",name:o,args:[{expr:n},{expr:a}]}}if(s.type==="|"){this.advance();let a=this.parseExpr(t);return this.handlePipe(n,a)}if(s.type===".")return this.advance(),this.handleDot(n);if(s.type==="[")return this.advance(),this.handleIndexing(n);if(s.type==="in")return this.advance(),{type:"func",name:"contains",args:[{expr:this.parseExpr(t+1)},{expr:n}]};if(s.type==="not in")return this.advance(),{type:"func",name:"not",args:[{expr:{type:"func",name:"contains",args:[{expr:this.parseExpr(t+1)},{expr:n}]}}]};throw new Error(`Unexpected infix token: ${s.type}`)}handlePipe(n,t){if(t.type==="identifier")return{type:"func",name:t.name,args:[{expr:n}]};if(t.type==="func"){let s=this.countUnderscores(t);return s===0?t:s===1?this.fillUnderscore(t,n):{type:"pipeline",exprs:[n,t]}}return this.countUnderscores(t)===1?this.fillUnderscore(t,n):t}handleDot(n){let t=this.peek();if(t.type==="ident"){let s=t.value;if(this.advance(),this.peek().type==="("){let r=this.parseFunctionCall(s);return r.type==="func"&&r.args.unshift({expr:n}),r}return{type:"func",name:"get",args:[{expr:n},{expr:{type:"string",value:s}}]}}if(t.type==="int"){let s=Number.parseInt(t.value,10);return this.advance(),{type:"func",name:"get",args:[{expr:n},{expr:{type:"int",value:s}}]}}if(t.type==="string"){let s=t.value;return this.advance(),{type:"func",name:"get",args:[{expr:n},{expr:{type:"string",value:s}}]}}throw new Error(`Expected identifier, number, or string after dot, got ${t.type}`)}handleIndexing(n){if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:n}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:n},{expr:{type:"int",value:0}},{expr:s}]}}let t=this.parseExpr(0);if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:n},{expr:t}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:n},{expr:t},{expr:s}]}}return this.expect("]"),{type:"func",name:"get",args:[{expr:n},{expr:t}]}}countUnderscores(n){return n.type==="underscore"?1:n.type==="func"?n.args.reduce((t,s)=>t+this.countUnderscores(s.expr),0):n.type==="list"?n.elements.reduce((t,s)=>t+this.countUnderscores(s),0):n.type==="map"?n.entries.reduce((t,s)=>t+this.countUnderscores(s.value),0):0}fillUnderscore(n,t){return n.type==="underscore"?t:n.type==="func"?{...n,args:n.args.map(s=>({...s,expr:this.fillUnderscore(s.expr,t)}))}:n.type==="list"?{...n,elements:n.elements.map(s=>this.fillUnderscore(s,t))}:n.type==="map"?{...n,entries:n.entries.map(s=>({...s,value:this.fillUnderscore(s.value,t)}))}:n}bindLambdaArgs(n,t){return{...n,body:this.bindLambdaArgsInExpr(n.body,t)}}bindLambdaArgsInExpr(n,t){return n.type==="identifier"&&t.includes(n.name)?{type:"lambdaBinding",name:n.name}:n.type==="func"?{...n,args:n.args.map(s=>({...s,expr:this.bindLambdaArgsInExpr(s.expr,t)}))}:n.type==="list"?{...n,elements:n.elements.map(s=>this.bindLambdaArgsInExpr(s,t))}:n.type==="map"?{...n,entries:n.entries.map(s=>({...s,value:this.bindLambdaArgsInExpr(s.value,t)}))}:n}getInfixPrec(n){switch(n){case"|":return R.PIPE;case"||":case"or":return R.OR;case"&&":case"and":return R.AND;case"==":case"!=":case"eq":case"ne":return R.EQUALITY;case"<":case"<=":case">":case">=":case"lt":case"le":case"gt":case"ge":case"in":case"not in":return R.COMPARISON;case"+":case"-":case"++":return R.ADDITIVE;case"*":case"/":case"//":case"%":return R.MULTIPLICATIVE;case"**":return R.POWER;case".":case"[":return R.POSTFIX;default:return-1}}isRightAssoc(n){return n==="**"}peek(){return this.tokens[this.pos]||{type:"eof",value:"",pos:0}}peekAt(n){return this.tokens[this.pos+n]||{type:"eof",value:"",pos:0}}advance(){return this.tokens[this.pos++]}expect(n){let t=this.peek();if(t.type!==n)throw new Error(`Expected ${n}, got ${t.type}`);return this.advance()}}});V();function E(e,n){return n.length===0?I(e,[]):n.length===1?{type:"Pipe",left:n[0],right:I(e,[])}:{type:"Pipe",left:n[0],right:I(e,n.slice(1))}}var z={add:e=>S("+",e[0],e[1]),sub:e=>S("-",e[0],e[1]),mul:e=>S("*",e[0],e[1]),div:e=>S("/",e[0],e[1]),mod:e=>S("%",e[0],e[1]),idiv:e=>I("floor",[S("/",e[0],e[1])]),pow:e=>E("pow",e),neg:e=>({type:"UnaryOp",op:"-",operand:e[0]}),"==":e=>S("==",e[0],e[1]),"!=":e=>S("!=",e[0],e[1]),"<":e=>S("<",e[0],e[1]),"<=":e=>S("<=",e[0],e[1]),">":e=>S(">",e[0],e[1]),">=":e=>S(">=",e[0],e[1]),eq:e=>S("==",P(e[0]),P(e[1])),ne:e=>S("!=",P(e[0]),P(e[1])),lt:e=>S("<",P(e[0]),P(e[1])),le:e=>S("<=",P(e[0]),P(e[1])),gt:e=>S(">",P(e[0]),P(e[1])),ge:e=>S(">=",P(e[0]),P(e[1])),and:e=>S("and",e[0],e[1]),or:e=>S("or",e[0],e[1]),not:e=>({type:"UnaryOp",op:"not",operand:e[0]}),len:e=>E("length",e),length:e=>E("length",e),upper:e=>E("ascii_upcase",e),lower:e=>E("ascii_downcase",e),trim:e=>E("trim",e),ltrim:e=>e.length===0?I("ltrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:I("ltrimstr",[{type:"Literal",value:" "}])},rtrim:e=>e.length===0?I("rtrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:I("rtrimstr",[{type:"Literal",value:" "}])},split:e=>E("split",e),join:e=>e.length===1?I("join",[{type:"Literal",value:""}]):E("join",e),concat:e=>S("+",e[0],e[1]),startswith:e=>E("startswith",e),endswith:e=>E("endswith",e),contains:e=>E("contains",e),replace:e=>E("gsub",e),substr:e=>e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:S("+",e[1],e[2])},abs:e=>E("fabs",e),floor:e=>E("floor",e),ceil:e=>E("ceil",e),round:e=>E("round",e),sqrt:e=>E("sqrt",e),log:e=>E("log",e),log10:e=>E("log10",e),log2:e=>E("log2",e),exp:e=>E("exp",e),sin:e=>E("sin",e),cos:e=>E("cos",e),tan:e=>E("tan",e),asin:e=>E("asin",e),acos:e=>E("acos",e),atan:e=>E("atan",e),min:e=>E("min",e),max:e=>E("max",e),first:e=>e.length===0?{type:"Index",index:{type:"Literal",value:0}}:{type:"Index",index:{type:"Literal",value:0},base:e[0]},last:e=>e.length===0?{type:"Index",index:{type:"Literal",value:-1}}:{type:"Index",index:{type:"Literal",value:-1},base:e[0]},get:e=>e.length===1?{type:"Index",index:e[0]}:{type:"Index",index:e[1],base:e[0]},slice:e=>e.length===1?{type:"Slice",base:e[0]}:e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:e[2]},keys:"keys",values:"values",entries:e=>I("to_entries",e),from_entries:"from_entries",reverse:"reverse",sort:"sort",sort_by:"sort_by",group_by:"group_by",unique:"unique",unique_by:"unique_by",flatten:"flatten",map:e=>({type:"Pipe",left:e[0],right:{type:"Array",elements:e[1]}}),select:e=>I("select",e),empty:()=>I("empty",[]),count:()=>I("length",[]),sum:e=>e.length===0?I("add",[]):{type:"Pipe",left:{type:"Array",elements:e[0]},right:I("add",[])},mean:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:S("/",I("add",[]),I("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:S("/",I("add",[]),I("length",[]))},avg:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:S("/",I("add",[]),I("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:S("/",I("add",[]),I("length",[]))},type:"type",isnull:e=>e.length===0?S("==",{type:"Identity"},{type:"Literal",value:null}):S("==",e[0],{type:"Literal",value:null}),isempty:e=>e.length===0?S("==",{type:"Identity"},{type:"Literal",value:""}):S("==",e[0],{type:"Literal",value:""}),tonumber:e=>e.length===0?I("tonumber",[]):I("tonumber",e),tostring:e=>e.length===0?I("tostring",[]):I("tostring",e),if:e=>ze(e[0],e[1],e[2]),coalesce:e=>{if(e.length===0)return{type:"Literal",value:null};if(e.length===1)return e[0];let[n,...t]=e,s=S("and",S("!=",n,{type:"Literal",value:null}),S("!=",n,{type:"Literal",value:""}));return ze(s,n,t.length===1?t[0]:z.coalesce(t))},index:()=>({type:"Field",name:"_row_index"}),now:()=>I("now",[]),fmt:e=>I("tostring",e),format:e=>I("tostring",e)};Object.setPrototypeOf(z,null);function S(e,n,t){return{type:"BinaryOp",op:e,left:n,right:t}}function I(e,n){return{type:"Call",name:e,args:n}}var st="then";function ze(e,n,t){let s=_e({type:"Cond",cond:e,elifs:[],else:t||{type:"Literal",value:null}});return s[st]=n,s}function P(e){return{type:"Pipe",left:e,right:{type:"Call",name:"tostring",args:[]}}}function O(e,n=!0){switch(e.type){case"int":case"float":return{type:"Literal",value:e.value};case"string":return{type:"Literal",value:e.value};case"bool":return{type:"Literal",value:e.value};case"null":return{type:"Literal",value:null};case"underscore":return{type:"Index",base:{type:"Identity"},index:{type:"Literal",value:"_"}};case"identifier":return n?{type:"Field",name:e.name}:{type:"VarRef",name:e.name};case"lambdaBinding":return{type:"VarRef",name:e.name};case"func":{let t=e.args.map(r=>O(r.expr,n)),s=Object.hasOwn(z,e.name)?z[e.name]:void 0;return typeof s=="function"?s(t):I(typeof s=="string"?s:e.name,t)}case"list":return e.elements.length===0?{type:"Array"}:{type:"Array",elements:e.elements.reduce((t,s,r)=>{let o=O(s,n);return r===0?o:{type:"Comma",left:t,right:o}},null)};case"map":return{type:"Object",entries:e.entries.map(t=>({key:t.key,value:O(t.value,n)}))};case"regex":return{type:"Literal",value:e.pattern};case"slice":return{type:"Slice",start:e.start?O(e.start,n):void 0,end:e.end?O(e.end,n):void 0};case"lambda":return O(e.body,n);case"pipeline":return{type:"Identity"};default:throw new Error(`Unknown moonblade expression type: ${e.type}`)}}function Q(e){let n=[],t=0;for(;t<e.length;){for(;t<e.length&&(e[t]===" "||e[t]===",");)t++;if(t>=e.length)break;let s=t;for(;t<e.length&&/\w/.test(e[t]);)t++;let r=e.slice(s,t);for(;t<e.length&&e[t]===" ";)t++;if(e[t]!=="(")break;t++;let o=1,a=t;for(;t<e.length&&o>0;)e[t]==="("?o++:e[t]===")"&&o--,o>0&&t++;let d=e.slice(a,t).trim();for(t++;t<e.length&&e[t]===" ";)t++;let u="";if(e.slice(t,t+3).toLowerCase()==="as "){for(t+=3;t<e.length&&e[t]===" ";)t++;let p=t;for(;t<e.length&&/\w/.test(e[t]);)t++;u=e.slice(p,t)}u||(u=d?`${r}(${d})`:`${r}()`),n.push({func:r,expr:d,alias:u})}return n}function Ke(e){return/^\w+$/.test(e)}function Z(e,n,t){let s=O(q(n)),r=$(e,s,t);return r.length>0?r[0]:null}function ee(e,n,t={}){let{func:s,expr:r}=n;if(s==="count"&&!r)return e.length;let o;switch(Ke(r)?o=e.map(a=>a[r]).filter(a=>a!=null):o=e.map(a=>Z(a,r,t)).filter(a=>a!=null),s){case"count":return Ke(r)?o.length:o.filter(a=>!!a).length;case"sum":return o.map(d=>typeof d=="number"?d:Number.parseFloat(String(d))).reduce((d,u)=>d+u,0);case"mean":case"avg":{let a=o.map(d=>typeof d=="number"?d:Number.parseFloat(String(d)));return a.length>0?a.reduce((d,u)=>d+u,0)/a.length:0}case"min":{let a=o.map(d=>typeof d=="number"?d:Number.parseFloat(String(d)));return a.length>0?Math.min(...a):null}case"max":{let a=o.map(d=>typeof d=="number"?d:Number.parseFloat(String(d)));return a.length>0?Math.max(...a):null}case"first":return o.length>0?o[0]:null;case"last":return o.length>0?o[o.length-1]:null;case"median":{let a=o.map(u=>typeof u=="number"?u:Number.parseFloat(String(u))).filter(u=>!Number.isNaN(u)).sort((u,p)=>u-p);if(a.length===0)return null;let d=Math.floor(a.length/2);return a.length%2===0?(a[d-1]+a[d])/2:a[d]}case"mode":{let a=new Map;for(let p of o){let c=String(p);a.set(c,(a.get(c)||0)+1)}let d=0,u=null;for(let[p,c]of a)c>d&&(d=c,u=p);return u}case"cardinality":return new Set(o.map(d=>String(d))).size;case"values":return o.map(a=>String(a)).join("|");case"distinct_values":return[...new Set(o.map(d=>String(d)))].sort().join("|");case"all":{if(e.length===0)return!0;for(let a of e)if(!Z(a,r,t))return!1;return!0}case"any":{for(let a of e)if(Z(a,r,t))return!0;return!1}default:return null}}function Ge(e,n,t={}){let s=F();for(let r of n)b(s,r.alias,ee(e,r,t));return s}async function te(e,n){let t="",s=[];for(let c of e)c.startsWith("-")||(t?s.push(c):t=c);if(!t)return{stdout:"",stderr:`xan agg: no aggregation expression
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{a as x}from"./chunk-
|
|
2
|
-
`,exitCode:2};let
|
|
3
|
-
`,exitCode:2}}if(I.length===0&&s.stdin!==void 0){let r=
|
|
4
|
-
`,exitCode:2};let M="",
|
|
5
|
-
`};let
|
|
6
|
-
`}}}));for(let o of b){if(o===null)continue;if("error"in o&&o.error){
|
|
1
|
+
import{a as x}from"./chunk-SNN4IESC.js";import{a as z,b as j}from"./chunk-2TRDZQLB.js";import{a as X,b as Z,c as q}from"./chunk-74CEPOFO.js";var ne={name:"grep",summary:"print lines that match patterns",usage:"grep [OPTION]... PATTERN [FILE]...",options:["-E, --extended-regexp PATTERN is an extended regular expression","-P, --perl-regexp PATTERN is a Perl regular expression","-F, --fixed-strings PATTERN is a set of newline-separated strings","-i, --ignore-case ignore case distinctions","-v, --invert-match select non-matching lines","-w, --word-regexp match only whole words","-x, --line-regexp match only whole lines","-c, --count print only a count of matching lines","-l, --files-with-matches print only names of files with matches","-L, --files-without-match print names of files with no matches","-m NUM, --max-count=NUM stop after NUM matches","-n, --line-number print line number with output lines","-h, --no-filename suppress the file name prefix on output","-o, --only-matching show only nonempty parts of lines that match","-q, --quiet, --silent suppress all normal output","-r, -R, --recursive search directories recursively","-A NUM print NUM lines of trailing context","-B NUM print NUM lines of leading context","-C NUM print NUM lines of context","-e PATTERN use PATTERN for matching"," --include=GLOB search only files matching GLOB"," --exclude=GLOB skip files matching GLOB"," --exclude-dir=DIR skip directories matching DIR"," --help display this help and exit"]},J={name:"grep",async execute(t,s){if(Z(t))return X(ne);let l=!1,f=!1,c=!1,p=!1,m=!1,a=!1,n=!1,u=!1,y=!1,w=!1,h=!1,d=!1,F=!1,P=!1,B=!1,$=0,T=0,C=0,W=[],A=[],L=[],R=null,I=[];for(let r=0;r<t.length;r++){let i=t[r];if(i.startsWith("-")&&i!=="-"){if(i==="-e"&&r+1<t.length){R=t[++r];continue}if(i.startsWith("--include=")){W.push(i.slice(10));continue}if(i.startsWith("--exclude=")){A.push(i.slice(10));continue}if(i.startsWith("--exclude-dir=")){L.push(i.slice(14));continue}if(i.startsWith("--max-count=")){$=parseInt(i.slice(12),10);continue}let b=i.match(/^-m(\d+)$/);if(b){$=parseInt(b[1],10);continue}if(i==="-m"&&r+1<t.length){$=parseInt(t[++r],10);continue}let o=i.match(/^-([ABC])(\d+)$/);if(o){let e=parseInt(o[2],10);o[1]==="A"?C=e:o[1]==="B"?T=e:o[1]==="C"&&(T=e,C=e);continue}if((i==="-A"||i==="-B"||i==="-C")&&r+1<t.length){let e=parseInt(t[++r],10);i==="-A"?C=e:i==="-B"?T=e:(T=e,C=e);continue}let g=i.startsWith("--")?[i]:i.slice(1).split("");for(let e of g)if(e==="i"||e==="--ignore-case")l=!0;else if(e==="n"||e==="--line-number")f=!0;else if(e==="v"||e==="--invert-match")c=!0;else if(e==="c"||e==="--count")p=!0;else if(e==="l"||e==="--files-with-matches")m=!0;else if(e==="L"||e==="--files-without-match")a=!0;else if(e==="r"||e==="R"||e==="--recursive")n=!0;else if(e==="w"||e==="--word-regexp")u=!0;else if(e==="x"||e==="--line-regexp")y=!0;else if(e==="E"||e==="--extended-regexp")w=!0;else if(e==="P"||e==="--perl-regexp")h=!0;else if(e==="F"||e==="--fixed-strings")d=!0;else if(e==="o"||e==="--only-matching")F=!0;else if(e==="h"||e==="--no-filename")P=!0;else if(e==="q"||e==="--quiet"||e==="--silent")B=!0;else{if(e.startsWith("--"))return q("grep",e);if(e.length===1)return q("grep",`-${e}`)}}else R===null?R=i:I.push(i)}if(R===null)return{stdout:"",stderr:`grep: missing pattern
|
|
2
|
+
`,exitCode:2};let Y=d?"fixed":w?"extended":h?"perl":"basic",O,Q,U;try{let r=j(R,{mode:Y,ignoreCase:l,wholeWord:u,lineRegexp:y});O=r.regex,Q=r.kResetGroup,U=r.preFilter}catch{return{stdout:"",stderr:`grep: invalid regular expression: ${R}
|
|
3
|
+
`,exitCode:2}}if(I.length===0&&s.stdin!==void 0){let r=z(s.stdin,O,{invertMatch:c,showLineNumbers:f,countOnly:p,filename:"",onlyMatching:F,beforeContext:T,afterContext:C,maxCount:$,kResetGroup:Q,preFilter:U});return B?{stdout:"",stderr:"",exitCode:r.matched?0:1}:{stdout:r.output,stderr:"",exitCode:r.matched?0:1}}if(I.length===0)return{stdout:"",stderr:`grep: no input files
|
|
4
|
+
`,exitCode:2};let M="",S="",D=!1,k=!1,v=[];for(let r of I)if(r.includes("*")||r.includes("?")||r.includes("[")){let i=await ie(r,s);if(n)for(let b of i){let o=await H(b.path,s,W,A,L,b.isFile);v.push(...o)}else v.push(...i)}else if(n){let i=await H(r,s,W,A,L);v.push(...i)}else v.push({path:r});let ee=(v.length>1||n)&&!P,_=50;for(let r=0;r<v.length;r+=_){let i=v.slice(r,r+_),b=await Promise.all(i.map(async o=>{let g=o.path,e=g.split("/").pop()||g;if(A.length>0&&!n&&A.some(N=>x(e,N,{stripQuotes:!0}))||W.length>0&&!n&&!W.some(N=>x(e,N,{stripQuotes:!0})))return null;try{let N=s.fs.resolvePath(s.cwd,g),G=!1;if(o.isFile===void 0?G=(await s.fs.stat(N)).isDirectory:G=!o.isFile,G)return n?null:{error:`grep: ${g}: Is a directory
|
|
5
|
+
`};let te=await s.fs.readFile(N),se=z(te,O,{invertMatch:c,showLineNumbers:f,countOnly:p,filename:ee?g:"",onlyMatching:F,beforeContext:T,afterContext:C,maxCount:$,kResetGroup:Q,preFilter:U});return{file:g,result:se}}catch{return{error:`grep: ${g}: No such file or directory
|
|
6
|
+
`}}}));for(let o of b){if(o===null)continue;if("error"in o&&o.error){S+=o.error,o.error.includes("Is a directory")||(k=!0);continue}if(!("file"in o)||!o.result)continue;let{file:g,result:e}=o;if(e.matched){if(D=!0,B)return{stdout:"",stderr:"",exitCode:0};m?M+=`${g}
|
|
7
7
|
`:a||(M+=e.output)}else a?M+=`${g}
|
|
8
|
-
`:p&&!m&&(M+=e.output)}}let E;return
|
|
8
|
+
`:p&&!m&&(M+=e.output)}}let E;return k?E=2:a?E=M.length>0?0:1:E=D?0:1,B?{stdout:"",stderr:"",exitCode:E}:{stdout:M,stderr:S,exitCode:E}}},K=256;async function V(t,s,l,f,c=0){if(c>=K)return;let p=l.fs.resolvePath(l.cwd,t);try{if(!(await l.fs.stat(p)).isDirectory){let n=t.split("/").pop()||"";if(s){let u=s.replace(/^\//,"");x(n,u,{stripQuotes:!0})&&f.push(t)}return}let a=await l.fs.readdir(p);for(let n of a){let u=t==="."?n:`${t}/${n}`,y=l.fs.resolvePath(l.cwd,u);if((await l.fs.stat(y)).isDirectory)await V(u,s,l,f,c+1);else if(s){let h=s.replace(/^\//,"");x(n,h,{stripQuotes:!0})&&f.push(u)}}}catch{}}async function ie(t,s){let l=[],f=t.lastIndexOf("/"),c,p;if(f===-1?(c=s.cwd,p=t):(c=t.slice(0,f)||"/",p=t.slice(f+1)),t.includes("**")){let a=[],n=t.split("**"),u=n[0].replace(/\/$/,"")||".",y=n[1]||"";return await V(u,y,s,a),a.map(w=>({path:w}))}let m=s.fs.resolvePath(s.cwd,c);try{if(s.fs.readdirWithFileTypes){let a=await s.fs.readdirWithFileTypes(m);for(let n of a)if(x(n.name,p,{stripQuotes:!0})){let u=f===-1?n.name:`${c}/${n.name}`;l.push({path:u,isFile:n.isFile})}}else{let a=await s.fs.readdir(m);for(let n of a)if(x(n,p,{stripQuotes:!0})){let u=f===-1?n:`${c}/${n}`;l.push({path:u})}}}catch{}return l.sort((a,n)=>a.path.localeCompare(n.path))}async function H(t,s,l=[],f=[],c=[],p,m=0){if(m>=K)return[];let a=s.fs.resolvePath(s.cwd,t),n=[];try{let u,y;if(p!==void 0)u=p,y=!p;else{let h=await s.fs.stat(a);u=h.isFile,y=h.isDirectory}if(u){let h=t.split("/").pop()||t;return f.length>0&&f.some(d=>x(h,d,{stripQuotes:!0}))?[]:l.length>0&&!l.some(d=>x(h,d,{stripQuotes:!0}))?[]:[{path:t,isFile:!0}]}if(!y)return[];let w=t.split("/").pop()||t;if(c.length>0&&c.some(h=>x(w,h,{stripQuotes:!0})))return[];if(s.fs.readdirWithFileTypes){let h=await s.fs.readdirWithFileTypes(a);for(let d of h){if(d.name.startsWith("."))continue;let F=t==="."?d.name:`${t}/${d.name}`,P=await H(F,s,l,f,c,d.isFile,m+1);n.push(...P)}}else{let h=await s.fs.readdir(a);for(let d of h){if(d.startsWith("."))continue;let F=t==="."?d:`${t}/${d}`,P=await H(F,s,l,f,c,void 0,m+1);n.push(...P)}}}catch{}return n}var fe={name:"fgrep",async execute(t,s){return J.execute(["-F",...t],s)}},ue={name:"egrep",async execute(t,s){return J.execute(["-E",...t],s)}},ce={name:"grep",flags:[{flag:"-E",type:"boolean"},{flag:"-F",type:"boolean"},{flag:"-P",type:"boolean"},{flag:"-i",type:"boolean"},{flag:"-v",type:"boolean"},{flag:"-w",type:"boolean"},{flag:"-x",type:"boolean"},{flag:"-c",type:"boolean"},{flag:"-l",type:"boolean"},{flag:"-L",type:"boolean"},{flag:"-n",type:"boolean"},{flag:"-h",type:"boolean"},{flag:"-o",type:"boolean"},{flag:"-q",type:"boolean"},{flag:"-r",type:"boolean"},{flag:"-m",type:"value",valueHint:"number"},{flag:"-A",type:"value",valueHint:"number"},{flag:"-B",type:"value",valueHint:"number"},{flag:"-C",type:"value",valueHint:"number"},{flag:"-e",type:"value",valueHint:"pattern"}],stdinType:"text",needsArgs:!0},pe={name:"fgrep",flags:[],stdinType:"text",needsArgs:!0},he={name:"egrep",flags:[],stdinType:"text",needsArgs:!0};export{J as a,fe as b,ue as c,ce as d,pe as e,he as f};
|