monocart-coverage-reports 2.7.7 → 2.7.9

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.
@@ -79,6 +79,6 @@ if (!isNaN(pid)) {
79
79
  })
80
80
  process.on('SIGHUP', bark)
81
81
  }
82
- `,vh=t=>{let e=!1,i=(0,yh.spawn)(process.execPath,["-e",Md,String(t.pid)],{stdio:"ignore"});return i.on("exit",()=>e=!0),t.on("exit",()=>{e||i.kill("SIGTERM")}),i};var Fd=(process==null?void 0:process.platform)==="win32"?bh.default:_h.spawn,Vd=t=>{let[e,i=[],r={},s=()=>{}]=t;if(typeof i=="function"?(s=i,r={},i=[]):i&&typeof i=="object"&&!Array.isArray(i)?(typeof r=="function"&&(s=r),r=i,i=[]):typeof r=="function"&&(s=r,r={}),Array.isArray(e)){let[n,...a]=e;e=n,i=a}return[e,i,{...r},s]};function Sh(...t){let[e,i,r,s]=Vd(t);r.stdio=[0,1,2],process.send&&r.stdio.push("ipc");let n=Fd(e,i,r),a=Bd(n),u=mh(()=>{try{n.kill("SIGHUP")}catch{n.kill("SIGTERM")}}),l=vh(n),c=!1;return n.on("close",async(f,p)=>{if(l.kill("SIGKILL"),c)return;c=!0;let d=s(f,p),m=Dd(d)?await d:d;if(u(),a(),m!==!1)if(typeof m=="string"?(p=m,f=null):typeof m=="number"&&(f=m,p=null),p){setTimeout(()=>{},2e3);try{process.kill(process.pid,p)}catch{process.kill(process.pid,"SIGTERM")}}else process.exit(f||0)}),process.send&&(process.removeAllListeners("message"),n.on("message",(f,p)=>{var d;(d=process.send)==null||d.call(process,f,p)}),process.on("message",(f,p)=>{n.send(f,p)})),n}var Bd=t=>{let e=new Map;for(let i of xh){let r=()=>{try{t.kill(i)}catch{}};try{process.on(i,r),e.set(i,r)}catch{}}return()=>{for(let[i,r]of e)process.removeListener(i,r)}},Dd=t=>!!t&&typeof t=="object"&&typeof t.then=="function";var Gh=Z(Mh(),1);var ti=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var zd={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},ii=t=>t.replace(/[[\]\\-]/g,"\\$&"),Qd=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Fh=t=>t.join(""),Vh=(t,e)=>{let i=e;if(t.charAt(i)!=="[")throw new Error("not in a brace expression");let r=[],s=[],n=i+1,a=!1,o=!1,u=!1,l=!1,c=i,f="";e:for(;n<t.length;){let g=t.charAt(n);if((g==="!"||g==="^")&&n===i+1){l=!0,n++;continue}if(g==="]"&&a&&!u){c=n+1;break}if(a=!0,g==="\\"&&!u){u=!0,n++;continue}if(g==="["&&!u){for(let[x,[S,C,A]]of Object.entries(zd))if(t.startsWith(x,n)){if(f)return["$.",!1,t.length-i,!0];n+=x.length,A?s.push(S):r.push(S),o=o||C;continue e}}if(u=!1,f){g>f?r.push(ii(f)+"-"+ii(g)):g===f&&r.push(ii(g)),f="",n++;continue}if(t.startsWith("-]",n+1)){r.push(ii(g+"-")),n+=2;continue}if(t.startsWith("-",n+1)){f=g,n+=2;continue}r.push(ii(g)),n++}if(c<n)return["",!1,0,!1];if(!r.length&&!s.length)return["$.",!1,t.length-i,!0];if(s.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l){let g=r[0].length===2?r[0].slice(-1):r[0];return[Qd(g),!1,c-i,!1]}let p="["+(l?"^":"")+Fh(r)+"]",d="["+(l?"":"^")+Fh(s)+"]";return[r.length&&s.length?"("+p+"|"+d+")":r.length?p:d,o,c-i,!0]};var Qe=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var Kd=new Set(["!","?","+","*","@"]),Bh=t=>Kd.has(t),Yd="(?!(?:^|/)\\.\\.?(?:$|/))",Ji="(?!\\.)",Jd=new Set(["[","."]),Xd=new Set(["..","."]),Zd=new Set("().*{}+?[]^$\\!"),em=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Qs="[^/]",Dh=Qs+"*?",Uh=Qs+"+?",At=class t{type;#s;#e;#t=!1;#i=[];#r;#n;#a;#u=!1;#o;#h;#c=!1;constructor(e,i,r={}){this.type=e,e&&(this.#e=!0),this.#r=i,this.#s=this.#r?this.#r.#s:this,this.#o=this.#s===this?r:this.#s.#o,this.#a=this.#s===this?[]:this.#s.#a,e==="!"&&!this.#s.#u&&this.#a.push(this),this.#n=this.#r?this.#r.#i.length:0}get hasMagic(){if(this.#e!==void 0)return this.#e;for(let e of this.#i)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#e=!0;return this.#e}toString(){return this.#h!==void 0?this.#h:this.type?this.#h=this.type+"("+this.#i.map(e=>String(e)).join("|")+")":this.#h=this.#i.map(e=>String(e)).join("")}#p(){if(this!==this.#s)throw new Error("should only call on root");if(this.#u)return this;this.toString(),this.#u=!0;let e;for(;e=this.#a.pop();){if(e.type!=="!")continue;let i=e,r=i.#r;for(;r;){for(let s=i.#n+1;!r.type&&s<r.#i.length;s++)for(let n of e.#i){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(r.#i[s])}i=r,r=i.#r}}return this}push(...e){for(let i of e)if(i!==""){if(typeof i!="string"&&!(i instanceof t&&i.#r===this))throw new Error("invalid part: "+i);this.#i.push(i)}}toJSON(){var i;let e=this.type===null?this.#i.slice().map(r=>typeof r=="string"?r:r.toJSON()):[this.type,...this.#i.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#s||this.#s.#u&&((i=this.#r)==null?void 0:i.type)==="!")&&e.push({}),e}isStart(){var i;if(this.#s===this)return!0;if(!((i=this.#r)!=null&&i.isStart()))return!1;if(this.#n===0)return!0;let e=this.#r;for(let r=0;r<this.#n;r++){let s=e.#i[r];if(!(s instanceof t&&s.type==="!"))return!1}return!0}isEnd(){var i,r,s;if(this.#s===this||((i=this.#r)==null?void 0:i.type)==="!")return!0;if(!((r=this.#r)!=null&&r.isEnd()))return!1;if(!this.type)return(s=this.#r)==null?void 0:s.isEnd();let e=this.#r?this.#r.#i.length:0;return this.#n===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let i=new t(this.type,e);for(let r of this.#i)i.copyIn(r);return i}static#l(e,i,r,s){let n=!1,a=!1,o=-1,u=!1;if(i.type===null){let d=r,m="";for(;d<e.length;){let g=e.charAt(d++);if(n||g==="\\"){n=!n,m+=g;continue}if(a){d===o+1?(g==="^"||g==="!")&&(u=!0):g==="]"&&!(d===o+2&&u)&&(a=!1),m+=g;continue}else if(g==="["){a=!0,o=d,u=!1,m+=g;continue}if(!s.noext&&Bh(g)&&e.charAt(d)==="("){i.push(m),m="";let x=new t(g,i);d=t.#l(e,x,d,s),i.push(x);continue}m+=g}return i.push(m),d}let l=r+1,c=new t(null,i),f=[],p="";for(;l<e.length;){let d=e.charAt(l++);if(n||d==="\\"){n=!n,p+=d;continue}if(a){l===o+1?(d==="^"||d==="!")&&(u=!0):d==="]"&&!(l===o+2&&u)&&(a=!1),p+=d;continue}else if(d==="["){a=!0,o=l,u=!1,p+=d;continue}if(Bh(d)&&e.charAt(l)==="("){c.push(p),p="";let m=new t(d,c);c.push(m),l=t.#l(e,m,l,s);continue}if(d==="|"){c.push(p),p="",f.push(c),c=new t(null,i);continue}if(d===")")return p===""&&i.#i.length===0&&(i.#c=!0),c.push(p),p="",i.push(...f,c),l;p+=d}return i.type=null,i.#e=void 0,i.#i=[e.substring(r-1)],l}static fromGlob(e,i={}){let r=new t(null,void 0,i);return t.#l(e,r,0,i),r}toMMPattern(){if(this!==this.#s)return this.#s.toMMPattern();let e=this.toString(),[i,r,s,n]=this.toRegExpSource();if(!(s||this.#e||this.#o.nocase&&!this.#o.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return r;let o=(this.#o.nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${i}$`,o),{_src:i,_glob:e})}toRegExpSource(e){var u;let i=e??!!this.#o.dot;if(this.#s===this&&this.#p(),!this.type){let l=this.isStart()&&this.isEnd(),c=this.#i.map(m=>{let[g,x,S,C]=typeof m=="string"?t.#d(m,this.#e,l):m.toRegExpSource(e);return this.#e=this.#e||S,this.#t=this.#t||C,g}).join(""),f="";if(this.isStart()&&typeof this.#i[0]=="string"&&!(this.#i.length===1&&Xd.has(this.#i[0]))){let g=Jd,x=i&&g.has(c.charAt(0))||c.startsWith("\\.")&&g.has(c.charAt(2))||c.startsWith("\\.\\.")&&g.has(c.charAt(4)),S=!i&&!e&&g.has(c.charAt(0));f=x?Yd:S?Ji:""}let p="";return this.isEnd()&&this.#s.#u&&((u=this.#r)==null?void 0:u.type)==="!"&&(p="(?:$|\\/)"),[f+c+p,Qe(c),this.#e=!!this.#e,this.#t]}let r=this.type==="*"||this.type==="+",s=this.type==="!"?"(?:(?!(?:":"(?:",n=this.#f(i);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let l=this.toString();return this.#i=[l],this.type=null,this.#e=void 0,[l,Qe(this.toString()),!1,!1]}let a=!r||e||i||!Ji?"":this.#f(!0);a===n&&(a=""),a&&(n=`(?:${n})(?:${a})*?`);let o="";if(this.type==="!"&&this.#c)o=(this.isStart()&&!i?Ji:"")+Uh;else{let l=this.type==="!"?"))"+(this.isStart()&&!i&&!e?Ji:"")+Dh+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&a?")":this.type==="*"&&a?")?":`)${this.type}`;o=s+n+l}return[o,Qe(n),this.#e=!!this.#e,this.#t]}#f(e){return this.#i.map(i=>{if(typeof i=="string")throw new Error("string type in extglob ast??");let[r,s,n,a]=i.toRegExpSource(e);return this.#t=this.#t||a,r}).filter(i=>!(this.isStart()&&this.isEnd())||!!i).join("|")}static#d(e,i,r=!1){let s=!1,n="",a=!1;for(let o=0;o<e.length;o++){let u=e.charAt(o);if(s){s=!1,n+=(Zd.has(u)?"\\":"")+u;continue}if(u==="\\"){o===e.length-1?n+="\\\\":s=!0;continue}if(u==="["){let[l,c,f,p]=Vh(e,o);if(f){n+=l,a=a||c,o+=f-1,i=i||p;continue}}if(u==="*"){r&&e==="*"?n+=Uh:n+=Dh,i=!0;continue}if(u==="?"){n+=Qs,i=!0;continue}n+=em(u)}return[n,Qe(e),!!i,a]}};var Ks=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var J=(t,e,i={})=>(ti(e),!i.nocomment&&e.charAt(0)==="#"?!1:new Ot(e,i).match(t)),tm=/^\*+([^+@!?\*\[\(]*)$/,im=t=>e=>!e.startsWith(".")&&e.endsWith(t),rm=t=>e=>e.endsWith(t),sm=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),nm=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),am=/^\*+\.\*+$/,om=t=>!t.startsWith(".")&&t.includes("."),um=t=>t!=="."&&t!==".."&&t.includes("."),hm=/^\.\*+$/,lm=t=>t!=="."&&t!==".."&&t.startsWith("."),cm=/^\*+$/,fm=t=>t.length!==0&&!t.startsWith("."),pm=t=>t.length!==0&&t!=="."&&t!=="..",dm=/^\?+([^+@!?\*\[\(]*)?$/,mm=([t,e=""])=>{let i=Wh([t]);return e?(e=e.toLowerCase(),r=>i(r)&&r.toLowerCase().endsWith(e)):i},gm=([t,e=""])=>{let i=$h([t]);return e?(e=e.toLowerCase(),r=>i(r)&&r.toLowerCase().endsWith(e)):i},xm=([t,e=""])=>{let i=$h([t]);return e?r=>i(r)&&r.endsWith(e):i},ym=([t,e=""])=>{let i=Wh([t]);return e?r=>i(r)&&r.endsWith(e):i},Wh=([t])=>{let e=t.length;return i=>i.length===e&&!i.startsWith(".")},$h=([t])=>{let e=t.length;return i=>i.length===e&&i!=="."&&i!==".."},Hh=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",qh={win32:{sep:"\\"},posix:{sep:"/"}},vm=Hh==="win32"?qh.win32.sep:qh.posix.sep;J.sep=vm;var ve=Symbol("globstar **");J.GLOBSTAR=ve;var _m="[^/]",bm=_m+"*?",Sm="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",wm="(?:(?!(?:\\/|^)\\.).)*?",Cm=(t,e={})=>i=>J(i,t,e);J.filter=Cm;var ye=(t,e={})=>Object.assign({},t,e),Em=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return J;let e=J;return Object.assign((r,s,n={})=>e(r,s,ye(t,n)),{Minimatch:class extends e.Minimatch{constructor(s,n={}){super(s,ye(t,n))}static defaults(s){return e.defaults(ye(t,s)).Minimatch}},AST:class extends e.AST{constructor(s,n,a={}){super(s,n,ye(t,a))}static fromGlob(s,n={}){return e.AST.fromGlob(s,ye(t,n))}},unescape:(r,s={})=>e.unescape(r,ye(t,s)),escape:(r,s={})=>e.escape(r,ye(t,s)),filter:(r,s={})=>e.filter(r,ye(t,s)),defaults:r=>e.defaults(ye(t,r)),makeRe:(r,s={})=>e.makeRe(r,ye(t,s)),braceExpand:(r,s={})=>e.braceExpand(r,ye(t,s)),match:(r,s,n={})=>e.match(r,s,ye(t,n)),sep:e.sep,GLOBSTAR:ve})};J.defaults=Em;var zh=(t,e={})=>(ti(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:(0,Gh.default)(t));J.braceExpand=zh;var km=(t,e={})=>new Ot(t,e).makeRe();J.makeRe=km;var Am=(t,e,i={})=>{let r=new Ot(e,i);return t=t.filter(s=>r.match(s)),r.options.nonull&&!t.length&&t.push(e),t};J.match=Am;var jh=/[?*]|[+@!]\(.*?\)|\[|\]/,Om=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ot=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,i={}){ti(e),i=i||{},this.options=i,this.pattern=e,this.platform=i.platform||Hh,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!i.windowsPathsNoEscape||i.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!i.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!i.nonegate,this.comment=!1,this.empty=!1,this.partial=!!i.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=i.windowsNoMagicRoot!==void 0?i.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let i of e)if(typeof i!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,i=this.options;if(!i.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],i.debug&&(this.debug=(...n)=>console.error(...n)),this.debug(this.pattern,this.globSet);let r=this.globSet.map(n=>this.slashSplit(n));this.globParts=this.preprocess(r),this.debug(this.pattern,this.globParts);let s=this.globParts.map((n,a,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let u=n[0]===""&&n[1]===""&&(n[2]==="?"||!jh.test(n[2]))&&!jh.test(n[3]),l=/^[a-z]:/i.test(n[0]);if(u)return[...n.slice(0,4),...n.slice(4).map(c=>this.parse(c))];if(l)return[n[0],...n.slice(1).map(c=>this.parse(c))]}return n.map(u=>this.parse(u))});if(this.debug(this.pattern,s),this.set=s.filter(n=>n.indexOf(!1)===-1),this.isWindows)for(let n=0;n<this.set.length;n++){let a=this.set[n];a[0]===""&&a[1]===""&&this.globParts[n][2]==="?"&&typeof a[3]=="string"&&/^[a-z]:$/i.test(a[3])&&(a[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let r=0;r<e.length;r++)for(let s=0;s<e[r].length;s++)e[r][s]==="**"&&(e[r][s]="*");let{optimizationLevel:i=1}=this.options;return i>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):i>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(i=>{let r=-1;for(;(r=i.indexOf("**",r+1))!==-1;){let s=r;for(;i[s+1]==="**";)s++;s!==r&&i.splice(r,s-r)}return i})}levelOneOptimize(e){return e.map(i=>(i=i.reduce((r,s)=>{let n=r[r.length-1];return s==="**"&&n==="**"?r:s===".."&&n&&n!==".."&&n!=="."&&n!=="**"?(r.pop(),r):(r.push(s),r)},[]),i.length===0?[""]:i))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let i=!1;do{if(i=!1,!this.preserveMultipleSlashes){for(let s=1;s<e.length-1;s++){let n=e[s];s===1&&n===""&&e[0]===""||(n==="."||n==="")&&(i=!0,e.splice(s,1),s--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(i=!0,e.pop())}let r=0;for(;(r=e.indexOf("..",r+1))!==-1;){let s=e[r-1];s&&s!=="."&&s!==".."&&s!=="**"&&(i=!0,e.splice(r-1,2),r-=2)}}while(i);return e.length===0?[""]:e}firstPhasePreProcess(e){let i=!1;do{i=!1;for(let r of e){let s=-1;for(;(s=r.indexOf("**",s+1))!==-1;){let a=s;for(;r[a+1]==="**";)a++;a>s&&r.splice(s+1,a-s);let o=r[s+1],u=r[s+2],l=r[s+3];if(o!==".."||!u||u==="."||u===".."||!l||l==="."||l==="..")continue;i=!0,r.splice(s,1);let c=r.slice(0);c[s]="**",e.push(c),s--}if(!this.preserveMultipleSlashes){for(let a=1;a<r.length-1;a++){let o=r[a];a===1&&o===""&&r[0]===""||(o==="."||o==="")&&(i=!0,r.splice(a,1),a--)}r[0]==="."&&r.length===2&&(r[1]==="."||r[1]==="")&&(i=!0,r.pop())}let n=0;for(;(n=r.indexOf("..",n+1))!==-1;){let a=r[n-1];if(a&&a!=="."&&a!==".."&&a!=="**"){i=!0;let u=n===1&&r[n+1]==="**"?["."]:[];r.splice(n-1,2,...u),r.length===0&&r.push(""),n-=2}}}}while(i);return e}secondPhasePreProcess(e){for(let i=0;i<e.length-1;i++)for(let r=i+1;r<e.length;r++){let s=this.partsMatch(e[i],e[r],!this.preserveMultipleSlashes);s&&(e[i]=s,e[r]=[])}return e.filter(i=>i.length)}partsMatch(e,i,r=!1){let s=0,n=0,a=[],o="";for(;s<e.length&&n<i.length;)if(e[s]===i[n])a.push(o==="b"?i[n]:e[s]),s++,n++;else if(r&&e[s]==="**"&&i[n]===e[s+1])a.push(e[s]),s++;else if(r&&i[n]==="**"&&e[s]===i[n+1])a.push(i[n]),n++;else if(e[s]==="*"&&i[n]&&(this.options.dot||!i[n].startsWith("."))&&i[n]!=="**"){if(o==="b")return!1;o="a",a.push(e[s]),s++,n++}else if(i[n]==="*"&&e[s]&&(this.options.dot||!e[s].startsWith("."))&&e[s]!=="**"){if(o==="a")return!1;o="b",a.push(i[n]),s++,n++}else return!1;return e.length===i.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,i=!1,r=0;for(let s=0;s<e.length&&e.charAt(s)==="!";s++)i=!i,r++;r&&(this.pattern=e.slice(r)),this.negate=i}matchOne(e,i,r=!1){let s=this.options;if(this.isWindows){let g=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),x=!g&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),S=typeof i[0]=="string"&&/^[a-z]:$/i.test(i[0]),C=!S&&i[0]===""&&i[1]===""&&i[2]==="?"&&typeof i[3]=="string"&&/^[a-z]:$/i.test(i[3]),A=x?3:g?0:void 0,k=C?3:S?0:void 0;if(typeof A=="number"&&typeof k=="number"){let[R,O]=[e[A],i[k]];R.toLowerCase()===O.toLowerCase()&&(i[k]=R,k>A?i=i.slice(k):A>k&&(e=e.slice(A)))}}let{optimizationLevel:n=1}=this.options;n>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:i}),this.debug("matchOne",e.length,i.length);for(var a=0,o=0,u=e.length,l=i.length;a<u&&o<l;a++,o++){this.debug("matchOne loop");var c=i[o],f=e[a];if(this.debug(i,c,f),c===!1)return!1;if(c===ve){this.debug("GLOBSTAR",[i,c,f]);var p=a,d=o+1;if(d===l){for(this.debug("** at the end");a<u;a++)if(e[a]==="."||e[a]===".."||!s.dot&&e[a].charAt(0)===".")return!1;return!0}for(;p<u;){var m=e[p];if(this.debug(`
82
+ `,vh=t=>{let e=!1,i=(0,yh.spawn)(process.execPath,["-e",Md,String(t.pid)],{stdio:"ignore"});return i.on("exit",()=>e=!0),t.on("exit",()=>{e||i.kill("SIGTERM")}),i};var Fd=(process==null?void 0:process.platform)==="win32"?bh.default:_h.spawn,Vd=t=>{let[e,i=[],r={},s=()=>{}]=t;if(typeof i=="function"?(s=i,r={},i=[]):i&&typeof i=="object"&&!Array.isArray(i)?(typeof r=="function"&&(s=r),r=i,i=[]):typeof r=="function"&&(s=r,r={}),Array.isArray(e)){let[n,...a]=e;e=n,i=a}return[e,i,{...r},s]};function Sh(...t){let[e,i,r,s]=Vd(t);r.stdio=[0,1,2],process.send&&r.stdio.push("ipc");let n=Fd(e,i,r),a=Bd(n),u=mh(()=>{try{n.kill("SIGHUP")}catch{n.kill("SIGTERM")}}),l=vh(n),c=!1;return n.on("close",async(f,p)=>{if(l.kill("SIGKILL"),c)return;c=!0;let d=s(f,p),m=Dd(d)?await d:d;if(u(),a(),m!==!1)if(typeof m=="string"?(p=m,f=null):typeof m=="number"&&(f=m,p=null),p){setTimeout(()=>{},2e3);try{process.kill(process.pid,p)}catch{process.kill(process.pid,"SIGTERM")}}else process.exit(f||0)}),process.send&&(process.removeAllListeners("message"),n.on("message",(f,p)=>{var d;(d=process.send)==null||d.call(process,f,p)}),process.on("message",(f,p)=>{n.send(f,p)})),n}var Bd=t=>{let e=new Map;for(let i of xh){let r=()=>{try{t.kill(i)}catch{}};try{process.on(i,r),e.set(i,r)}catch{}}return()=>{for(let[i,r]of e)process.removeListener(i,r)}},Dd=t=>!!t&&typeof t=="object"&&typeof t.then=="function";var Gh=Z(Mh(),1);var ti=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var zd={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},ii=t=>t.replace(/[[\]\\-]/g,"\\$&"),Qd=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Fh=t=>t.join(""),Vh=(t,e)=>{let i=e;if(t.charAt(i)!=="[")throw new Error("not in a brace expression");let r=[],s=[],n=i+1,a=!1,o=!1,u=!1,l=!1,c=i,f="";e:for(;n<t.length;){let g=t.charAt(n);if((g==="!"||g==="^")&&n===i+1){l=!0,n++;continue}if(g==="]"&&a&&!u){c=n+1;break}if(a=!0,g==="\\"&&!u){u=!0,n++;continue}if(g==="["&&!u){for(let[x,[S,C,A]]of Object.entries(zd))if(t.startsWith(x,n)){if(f)return["$.",!1,t.length-i,!0];n+=x.length,A?s.push(S):r.push(S),o=o||C;continue e}}if(u=!1,f){g>f?r.push(ii(f)+"-"+ii(g)):g===f&&r.push(ii(g)),f="",n++;continue}if(t.startsWith("-]",n+1)){r.push(ii(g+"-")),n+=2;continue}if(t.startsWith("-",n+1)){f=g,n+=2;continue}r.push(ii(g)),n++}if(c<n)return["",!1,0,!1];if(!r.length&&!s.length)return["$.",!1,t.length-i,!0];if(s.length===0&&r.length===1&&/^\\?.$/.test(r[0])&&!l){let g=r[0].length===2?r[0].slice(-1):r[0];return[Qd(g),!1,c-i,!1]}let p="["+(l?"^":"")+Fh(r)+"]",d="["+(l?"":"^")+Fh(s)+"]";return[r.length&&s.length?"("+p+"|"+d+")":r.length?p:d,o,c-i,!0]};var Qe=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var Kd=new Set(["!","?","+","*","@"]),Bh=t=>Kd.has(t),Yd="(?!(?:^|/)\\.\\.?(?:$|/))",Ji="(?!\\.)",Jd=new Set(["[","."]),Xd=new Set(["..","."]),Zd=new Set("().*{}+?[]^$\\!"),em=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Qs="[^/]",Dh=Qs+"*?",Uh=Qs+"+?",At=class t{type;#s;#e;#t=!1;#i=[];#r;#n;#a;#u=!1;#o;#h;#c=!1;constructor(e,i,r={}){this.type=e,e&&(this.#e=!0),this.#r=i,this.#s=this.#r?this.#r.#s:this,this.#o=this.#s===this?r:this.#s.#o,this.#a=this.#s===this?[]:this.#s.#a,e==="!"&&!this.#s.#u&&this.#a.push(this),this.#n=this.#r?this.#r.#i.length:0}get hasMagic(){if(this.#e!==void 0)return this.#e;for(let e of this.#i)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#e=!0;return this.#e}toString(){return this.#h!==void 0?this.#h:this.type?this.#h=this.type+"("+this.#i.map(e=>String(e)).join("|")+")":this.#h=this.#i.map(e=>String(e)).join("")}#p(){if(this!==this.#s)throw new Error("should only call on root");if(this.#u)return this;this.toString(),this.#u=!0;let e;for(;e=this.#a.pop();){if(e.type!=="!")continue;let i=e,r=i.#r;for(;r;){for(let s=i.#n+1;!r.type&&s<r.#i.length;s++)for(let n of e.#i){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(r.#i[s])}i=r,r=i.#r}}return this}push(...e){for(let i of e)if(i!==""){if(typeof i!="string"&&!(i instanceof t&&i.#r===this))throw new Error("invalid part: "+i);this.#i.push(i)}}toJSON(){var i;let e=this.type===null?this.#i.slice().map(r=>typeof r=="string"?r:r.toJSON()):[this.type,...this.#i.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#s||this.#s.#u&&((i=this.#r)==null?void 0:i.type)==="!")&&e.push({}),e}isStart(){var i;if(this.#s===this)return!0;if(!((i=this.#r)!=null&&i.isStart()))return!1;if(this.#n===0)return!0;let e=this.#r;for(let r=0;r<this.#n;r++){let s=e.#i[r];if(!(s instanceof t&&s.type==="!"))return!1}return!0}isEnd(){var i,r,s;if(this.#s===this||((i=this.#r)==null?void 0:i.type)==="!")return!0;if(!((r=this.#r)!=null&&r.isEnd()))return!1;if(!this.type)return(s=this.#r)==null?void 0:s.isEnd();let e=this.#r?this.#r.#i.length:0;return this.#n===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let i=new t(this.type,e);for(let r of this.#i)i.copyIn(r);return i}static#l(e,i,r,s){let n=!1,a=!1,o=-1,u=!1;if(i.type===null){let d=r,m="";for(;d<e.length;){let g=e.charAt(d++);if(n||g==="\\"){n=!n,m+=g;continue}if(a){d===o+1?(g==="^"||g==="!")&&(u=!0):g==="]"&&!(d===o+2&&u)&&(a=!1),m+=g;continue}else if(g==="["){a=!0,o=d,u=!1,m+=g;continue}if(!s.noext&&Bh(g)&&e.charAt(d)==="("){i.push(m),m="";let x=new t(g,i);d=t.#l(e,x,d,s),i.push(x);continue}m+=g}return i.push(m),d}let l=r+1,c=new t(null,i),f=[],p="";for(;l<e.length;){let d=e.charAt(l++);if(n||d==="\\"){n=!n,p+=d;continue}if(a){l===o+1?(d==="^"||d==="!")&&(u=!0):d==="]"&&!(l===o+2&&u)&&(a=!1),p+=d;continue}else if(d==="["){a=!0,o=l,u=!1,p+=d;continue}if(Bh(d)&&e.charAt(l)==="("){c.push(p),p="";let m=new t(d,c);c.push(m),l=t.#l(e,m,l,s);continue}if(d==="|"){c.push(p),p="",f.push(c),c=new t(null,i);continue}if(d===")")return p===""&&i.#i.length===0&&(i.#c=!0),c.push(p),p="",i.push(...f,c),l;p+=d}return i.type=null,i.#e=void 0,i.#i=[e.substring(r-1)],l}static fromGlob(e,i={}){let r=new t(null,void 0,i);return t.#l(e,r,0,i),r}toMMPattern(){if(this!==this.#s)return this.#s.toMMPattern();let e=this.toString(),[i,r,s,n]=this.toRegExpSource();if(!(s||this.#e||this.#o.nocase&&!this.#o.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return r;let o=(this.#o.nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${i}$`,o),{_src:i,_glob:e})}get options(){return this.#o}toRegExpSource(e){var u;let i=e??!!this.#o.dot;if(this.#s===this&&this.#p(),!this.type){let l=this.isStart()&&this.isEnd(),c=this.#i.map(m=>{let[g,x,S,C]=typeof m=="string"?t.#d(m,this.#e,l):m.toRegExpSource(e);return this.#e=this.#e||S,this.#t=this.#t||C,g}).join(""),f="";if(this.isStart()&&typeof this.#i[0]=="string"&&!(this.#i.length===1&&Xd.has(this.#i[0]))){let g=Jd,x=i&&g.has(c.charAt(0))||c.startsWith("\\.")&&g.has(c.charAt(2))||c.startsWith("\\.\\.")&&g.has(c.charAt(4)),S=!i&&!e&&g.has(c.charAt(0));f=x?Yd:S?Ji:""}let p="";return this.isEnd()&&this.#s.#u&&((u=this.#r)==null?void 0:u.type)==="!"&&(p="(?:$|\\/)"),[f+c+p,Qe(c),this.#e=!!this.#e,this.#t]}let r=this.type==="*"||this.type==="+",s=this.type==="!"?"(?:(?!(?:":"(?:",n=this.#f(i);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let l=this.toString();return this.#i=[l],this.type=null,this.#e=void 0,[l,Qe(this.toString()),!1,!1]}let a=!r||e||i||!Ji?"":this.#f(!0);a===n&&(a=""),a&&(n=`(?:${n})(?:${a})*?`);let o="";if(this.type==="!"&&this.#c)o=(this.isStart()&&!i?Ji:"")+Uh;else{let l=this.type==="!"?"))"+(this.isStart()&&!i&&!e?Ji:"")+Dh+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&a?")":this.type==="*"&&a?")?":`)${this.type}`;o=s+n+l}return[o,Qe(n),this.#e=!!this.#e,this.#t]}#f(e){return this.#i.map(i=>{if(typeof i=="string")throw new Error("string type in extglob ast??");let[r,s,n,a]=i.toRegExpSource(e);return this.#t=this.#t||a,r}).filter(i=>!(this.isStart()&&this.isEnd())||!!i).join("|")}static#d(e,i,r=!1){let s=!1,n="",a=!1;for(let o=0;o<e.length;o++){let u=e.charAt(o);if(s){s=!1,n+=(Zd.has(u)?"\\":"")+u;continue}if(u==="\\"){o===e.length-1?n+="\\\\":s=!0;continue}if(u==="["){let[l,c,f,p]=Vh(e,o);if(f){n+=l,a=a||c,o+=f-1,i=i||p;continue}}if(u==="*"){r&&e==="*"?n+=Uh:n+=Dh,i=!0;continue}if(u==="?"){n+=Qs,i=!0;continue}n+=em(u)}return[n,Qe(e),!!i,a]}};var Ks=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var J=(t,e,i={})=>(ti(e),!i.nocomment&&e.charAt(0)==="#"?!1:new Ot(e,i).match(t)),tm=/^\*+([^+@!?\*\[\(]*)$/,im=t=>e=>!e.startsWith(".")&&e.endsWith(t),rm=t=>e=>e.endsWith(t),sm=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),nm=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),am=/^\*+\.\*+$/,om=t=>!t.startsWith(".")&&t.includes("."),um=t=>t!=="."&&t!==".."&&t.includes("."),hm=/^\.\*+$/,lm=t=>t!=="."&&t!==".."&&t.startsWith("."),cm=/^\*+$/,fm=t=>t.length!==0&&!t.startsWith("."),pm=t=>t.length!==0&&t!=="."&&t!=="..",dm=/^\?+([^+@!?\*\[\(]*)?$/,mm=([t,e=""])=>{let i=Wh([t]);return e?(e=e.toLowerCase(),r=>i(r)&&r.toLowerCase().endsWith(e)):i},gm=([t,e=""])=>{let i=$h([t]);return e?(e=e.toLowerCase(),r=>i(r)&&r.toLowerCase().endsWith(e)):i},xm=([t,e=""])=>{let i=$h([t]);return e?r=>i(r)&&r.endsWith(e):i},ym=([t,e=""])=>{let i=Wh([t]);return e?r=>i(r)&&r.endsWith(e):i},Wh=([t])=>{let e=t.length;return i=>i.length===e&&!i.startsWith(".")},$h=([t])=>{let e=t.length;return i=>i.length===e&&i!=="."&&i!==".."},Hh=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",qh={win32:{sep:"\\"},posix:{sep:"/"}},vm=Hh==="win32"?qh.win32.sep:qh.posix.sep;J.sep=vm;var ve=Symbol("globstar **");J.GLOBSTAR=ve;var _m="[^/]",bm=_m+"*?",Sm="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",wm="(?:(?!(?:\\/|^)\\.).)*?",Cm=(t,e={})=>i=>J(i,t,e);J.filter=Cm;var ye=(t,e={})=>Object.assign({},t,e),Em=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return J;let e=J;return Object.assign((r,s,n={})=>e(r,s,ye(t,n)),{Minimatch:class extends e.Minimatch{constructor(s,n={}){super(s,ye(t,n))}static defaults(s){return e.defaults(ye(t,s)).Minimatch}},AST:class extends e.AST{constructor(s,n,a={}){super(s,n,ye(t,a))}static fromGlob(s,n={}){return e.AST.fromGlob(s,ye(t,n))}},unescape:(r,s={})=>e.unescape(r,ye(t,s)),escape:(r,s={})=>e.escape(r,ye(t,s)),filter:(r,s={})=>e.filter(r,ye(t,s)),defaults:r=>e.defaults(ye(t,r)),makeRe:(r,s={})=>e.makeRe(r,ye(t,s)),braceExpand:(r,s={})=>e.braceExpand(r,ye(t,s)),match:(r,s,n={})=>e.match(r,s,ye(t,n)),sep:e.sep,GLOBSTAR:ve})};J.defaults=Em;var zh=(t,e={})=>(ti(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:(0,Gh.default)(t));J.braceExpand=zh;var km=(t,e={})=>new Ot(t,e).makeRe();J.makeRe=km;var Am=(t,e,i={})=>{let r=new Ot(e,i);return t=t.filter(s=>r.match(s)),r.options.nonull&&!t.length&&t.push(e),t};J.match=Am;var jh=/[?*]|[+@!]\(.*?\)|\[|\]/,Om=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ot=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,i={}){ti(e),i=i||{},this.options=i,this.pattern=e,this.platform=i.platform||Hh,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!i.windowsPathsNoEscape||i.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!i.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!i.nonegate,this.comment=!1,this.empty=!1,this.partial=!!i.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=i.windowsNoMagicRoot!==void 0?i.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let i of e)if(typeof i!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,i=this.options;if(!i.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],i.debug&&(this.debug=(...n)=>console.error(...n)),this.debug(this.pattern,this.globSet);let r=this.globSet.map(n=>this.slashSplit(n));this.globParts=this.preprocess(r),this.debug(this.pattern,this.globParts);let s=this.globParts.map((n,a,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let u=n[0]===""&&n[1]===""&&(n[2]==="?"||!jh.test(n[2]))&&!jh.test(n[3]),l=/^[a-z]:/i.test(n[0]);if(u)return[...n.slice(0,4),...n.slice(4).map(c=>this.parse(c))];if(l)return[n[0],...n.slice(1).map(c=>this.parse(c))]}return n.map(u=>this.parse(u))});if(this.debug(this.pattern,s),this.set=s.filter(n=>n.indexOf(!1)===-1),this.isWindows)for(let n=0;n<this.set.length;n++){let a=this.set[n];a[0]===""&&a[1]===""&&this.globParts[n][2]==="?"&&typeof a[3]=="string"&&/^[a-z]:$/i.test(a[3])&&(a[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let r=0;r<e.length;r++)for(let s=0;s<e[r].length;s++)e[r][s]==="**"&&(e[r][s]="*");let{optimizationLevel:i=1}=this.options;return i>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):i>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(i=>{let r=-1;for(;(r=i.indexOf("**",r+1))!==-1;){let s=r;for(;i[s+1]==="**";)s++;s!==r&&i.splice(r,s-r)}return i})}levelOneOptimize(e){return e.map(i=>(i=i.reduce((r,s)=>{let n=r[r.length-1];return s==="**"&&n==="**"?r:s===".."&&n&&n!==".."&&n!=="."&&n!=="**"?(r.pop(),r):(r.push(s),r)},[]),i.length===0?[""]:i))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let i=!1;do{if(i=!1,!this.preserveMultipleSlashes){for(let s=1;s<e.length-1;s++){let n=e[s];s===1&&n===""&&e[0]===""||(n==="."||n==="")&&(i=!0,e.splice(s,1),s--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(i=!0,e.pop())}let r=0;for(;(r=e.indexOf("..",r+1))!==-1;){let s=e[r-1];s&&s!=="."&&s!==".."&&s!=="**"&&(i=!0,e.splice(r-1,2),r-=2)}}while(i);return e.length===0?[""]:e}firstPhasePreProcess(e){let i=!1;do{i=!1;for(let r of e){let s=-1;for(;(s=r.indexOf("**",s+1))!==-1;){let a=s;for(;r[a+1]==="**";)a++;a>s&&r.splice(s+1,a-s);let o=r[s+1],u=r[s+2],l=r[s+3];if(o!==".."||!u||u==="."||u===".."||!l||l==="."||l==="..")continue;i=!0,r.splice(s,1);let c=r.slice(0);c[s]="**",e.push(c),s--}if(!this.preserveMultipleSlashes){for(let a=1;a<r.length-1;a++){let o=r[a];a===1&&o===""&&r[0]===""||(o==="."||o==="")&&(i=!0,r.splice(a,1),a--)}r[0]==="."&&r.length===2&&(r[1]==="."||r[1]==="")&&(i=!0,r.pop())}let n=0;for(;(n=r.indexOf("..",n+1))!==-1;){let a=r[n-1];if(a&&a!=="."&&a!==".."&&a!=="**"){i=!0;let u=n===1&&r[n+1]==="**"?["."]:[];r.splice(n-1,2,...u),r.length===0&&r.push(""),n-=2}}}}while(i);return e}secondPhasePreProcess(e){for(let i=0;i<e.length-1;i++)for(let r=i+1;r<e.length;r++){let s=this.partsMatch(e[i],e[r],!this.preserveMultipleSlashes);s&&(e[i]=s,e[r]=[])}return e.filter(i=>i.length)}partsMatch(e,i,r=!1){let s=0,n=0,a=[],o="";for(;s<e.length&&n<i.length;)if(e[s]===i[n])a.push(o==="b"?i[n]:e[s]),s++,n++;else if(r&&e[s]==="**"&&i[n]===e[s+1])a.push(e[s]),s++;else if(r&&i[n]==="**"&&e[s]===i[n+1])a.push(i[n]),n++;else if(e[s]==="*"&&i[n]&&(this.options.dot||!i[n].startsWith("."))&&i[n]!=="**"){if(o==="b")return!1;o="a",a.push(e[s]),s++,n++}else if(i[n]==="*"&&e[s]&&(this.options.dot||!e[s].startsWith("."))&&e[s]!=="**"){if(o==="a")return!1;o="b",a.push(i[n]),s++,n++}else return!1;return e.length===i.length&&a}parseNegate(){if(this.nonegate)return;let e=this.pattern,i=!1,r=0;for(let s=0;s<e.length&&e.charAt(s)==="!";s++)i=!i,r++;r&&(this.pattern=e.slice(r)),this.negate=i}matchOne(e,i,r=!1){let s=this.options;if(this.isWindows){let g=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),x=!g&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),S=typeof i[0]=="string"&&/^[a-z]:$/i.test(i[0]),C=!S&&i[0]===""&&i[1]===""&&i[2]==="?"&&typeof i[3]=="string"&&/^[a-z]:$/i.test(i[3]),A=x?3:g?0:void 0,k=C?3:S?0:void 0;if(typeof A=="number"&&typeof k=="number"){let[R,O]=[e[A],i[k]];R.toLowerCase()===O.toLowerCase()&&(i[k]=R,k>A?i=i.slice(k):A>k&&(e=e.slice(A)))}}let{optimizationLevel:n=1}=this.options;n>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:i}),this.debug("matchOne",e.length,i.length);for(var a=0,o=0,u=e.length,l=i.length;a<u&&o<l;a++,o++){this.debug("matchOne loop");var c=i[o],f=e[a];if(this.debug(i,c,f),c===!1)return!1;if(c===ve){this.debug("GLOBSTAR",[i,c,f]);var p=a,d=o+1;if(d===l){for(this.debug("** at the end");a<u;a++)if(e[a]==="."||e[a]===".."||!s.dot&&e[a].charAt(0)===".")return!1;return!0}for(;p<u;){var m=e[p];if(this.debug(`
83
83
  globstar while`,e,p,i,d,m),this.matchOne(e.slice(p),i.slice(d),r))return this.debug("globstar found match!",p,u,m),!0;if(m==="."||m===".."||!s.dot&&m.charAt(0)==="."){this.debug("dot detected!",e,p,i,d);break}this.debug("globstar swallow a segment, and continue"),p++}return!!(r&&(this.debug(`
84
- >>> no match, partial?`,e,p,i,d),p===u))}let g;if(typeof c=="string"?(g=f===c,this.debug("string match",c,f,g)):(g=c.test(f),this.debug("pattern match",c,f,g)),!g)return!1}if(a===u&&o===l)return!0;if(a===u)return r;if(o===l)return a===u-1&&e[a]==="";throw new Error("wtf?")}braceExpand(){return zh(this.pattern,this.options)}parse(e){ti(e);let i=this.options;if(e==="**")return ve;if(e==="")return"";let r,s=null;(r=e.match(cm))?s=i.dot?pm:fm:(r=e.match(tm))?s=(i.nocase?i.dot?nm:sm:i.dot?rm:im)(r[1]):(r=e.match(dm))?s=(i.nocase?i.dot?gm:mm:i.dot?xm:ym)(r):(r=e.match(am))?s=i.dot?um:om:(r=e.match(hm))&&(s=lm);let n=At.fromGlob(e,this.options).toMMPattern();return s?Object.assign(n,{test:s}):n}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let i=this.options,r=i.noglobstar?bm:i.dot?Sm:wm,s=new Set(i.nocase?["i"]:[]),n=e.map(u=>{let l=u.map(c=>{if(c instanceof RegExp)for(let f of c.flags.split(""))s.add(f);return typeof c=="string"?Om(c):c===ve?ve:c._src});return l.forEach((c,f)=>{let p=l[f+1],d=l[f-1];c!==ve||d===ve||(d===void 0?p!==void 0&&p!==ve?l[f+1]="(?:\\/|"+r+"\\/)?"+p:l[f]=r:p===void 0?l[f-1]=d+"(?:\\/|"+r+")?":p!==ve&&(l[f-1]=d+"(?:\\/|\\/"+r+"\\/)"+p,l[f+1]=ve))}),l.filter(c=>c!==ve).join("/")}).join("|"),[a,o]=e.length>1?["(?:",")"]:["",""];n="^"+a+n+o+"$",this.negate&&(n="^(?!"+n+").+$");try{this.regexp=new RegExp(n,[...s].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,i=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&i)return!0;let r=this.options;this.isWindows&&(e=e.split("\\").join("/"));let s=this.slashSplit(e);this.debug(this.pattern,"split",s);let n=this.set;this.debug(this.pattern,"set",n);let a=s[s.length-1];if(!a)for(let o=s.length-2;!a&&o>=0;o--)a=s[o];for(let o=0;o<n.length;o++){let u=n[o],l=s;if(r.matchBase&&u.length===1&&(l=[a]),this.matchOne(l,u,i))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return J.defaults(e).Minimatch}};J.AST=At;J.Minimatch=Ot;J.escape=Ks;J.unescape=Qe;var jg=Z(Jh(),1),Gg=Z(on(),1),Wg=Z(hn(),1),Kl=Z(gn(),1),$g=Z(Ql(),1);var Yl=Kl.default;var ac=Z(ec());var fr=Z(require("node:process"),1),ic=Z(require("node:os"),1),bn=Z(require("node:tty"),1);function be(t,e=globalThis.Deno?globalThis.Deno.args:fr.default.argv){let i=t.startsWith("-")?"":t.length===1?"-":"--",r=e.indexOf(i+t),s=e.indexOf("--");return r!==-1&&(s===-1||r<s)}var{env:U}=fr.default,cr;be("no-color")||be("no-colors")||be("color=false")||be("color=never")?cr=0:(be("color")||be("colors")||be("color=true")||be("color=always"))&&(cr=1);function Yg(){if("FORCE_COLOR"in U)return U.FORCE_COLOR==="true"?1:U.FORCE_COLOR==="false"?0:U.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(U.FORCE_COLOR,10),3)}function Jg(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Xg(t,{streamIsTTY:e,sniffFlags:i=!0}={}){let r=Yg();r!==void 0&&(cr=r);let s=i?cr:r;if(s===0)return 0;if(i){if(be("color=16m")||be("color=full")||be("color=truecolor"))return 3;if(be("color=256"))return 2}if("TF_BUILD"in U&&"AGENT_NAME"in U)return 1;if(t&&!e&&s===void 0)return 0;let n=s||0;if(U.TERM==="dumb")return n;if(fr.default.platform==="win32"){let a=ic.default.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in U)return"GITHUB_ACTIONS"in U||"GITEA_ACTIONS"in U?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in U)||U.CI_NAME==="codeship"?1:n;if("TEAMCITY_VERSION"in U)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(U.TEAMCITY_VERSION)?1:0;if(U.COLORTERM==="truecolor"||U.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in U){let a=Number.parseInt((U.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(U.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(U.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(U.TERM)||"COLORTERM"in U?1:n}function tc(t,e={}){let i=Xg(t,{streamIsTTY:t&&t.isTTY,...e});return Jg(i)}var Zg={stdout:tc({isTTY:bn.default.isatty(1)}),stderr:tc({isTTY:bn.default.isatty(2)})},rc=Zg;0&&(module.exports={WebSocket,acorn,acornLoose,acornWalk,convertSourceMap,decode,diff,foregroundChild,mergeScriptCovs,minimatch,parseCss,program,supportsColor});
84
+ >>> no match, partial?`,e,p,i,d),p===u))}let g;if(typeof c=="string"?(g=f===c,this.debug("string match",c,f,g)):(g=c.test(f),this.debug("pattern match",c,f,g)),!g)return!1}if(a===u&&o===l)return!0;if(a===u)return r;if(o===l)return a===u-1&&e[a]==="";throw new Error("wtf?")}braceExpand(){return zh(this.pattern,this.options)}parse(e){ti(e);let i=this.options;if(e==="**")return ve;if(e==="")return"";let r,s=null;(r=e.match(cm))?s=i.dot?pm:fm:(r=e.match(tm))?s=(i.nocase?i.dot?nm:sm:i.dot?rm:im)(r[1]):(r=e.match(dm))?s=(i.nocase?i.dot?gm:mm:i.dot?xm:ym)(r):(r=e.match(am))?s=i.dot?um:om:(r=e.match(hm))&&(s=lm);let n=At.fromGlob(e,this.options).toMMPattern();return s&&typeof n=="object"&&Reflect.defineProperty(n,"test",{value:s}),n}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let i=this.options,r=i.noglobstar?bm:i.dot?Sm:wm,s=new Set(i.nocase?["i"]:[]),n=e.map(u=>{let l=u.map(c=>{if(c instanceof RegExp)for(let f of c.flags.split(""))s.add(f);return typeof c=="string"?Om(c):c===ve?ve:c._src});return l.forEach((c,f)=>{let p=l[f+1],d=l[f-1];c!==ve||d===ve||(d===void 0?p!==void 0&&p!==ve?l[f+1]="(?:\\/|"+r+"\\/)?"+p:l[f]=r:p===void 0?l[f-1]=d+"(?:\\/|"+r+")?":p!==ve&&(l[f-1]=d+"(?:\\/|\\/"+r+"\\/)"+p,l[f+1]=ve))}),l.filter(c=>c!==ve).join("/")}).join("|"),[a,o]=e.length>1?["(?:",")"]:["",""];n="^"+a+n+o+"$",this.negate&&(n="^(?!"+n+").+$");try{this.regexp=new RegExp(n,[...s].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,i=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&i)return!0;let r=this.options;this.isWindows&&(e=e.split("\\").join("/"));let s=this.slashSplit(e);this.debug(this.pattern,"split",s);let n=this.set;this.debug(this.pattern,"set",n);let a=s[s.length-1];if(!a)for(let o=s.length-2;!a&&o>=0;o--)a=s[o];for(let o=0;o<n.length;o++){let u=n[o],l=s;if(r.matchBase&&u.length===1&&(l=[a]),this.matchOne(l,u,i))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return J.defaults(e).Minimatch}};J.AST=At;J.Minimatch=Ot;J.escape=Ks;J.unescape=Qe;var jg=Z(Jh(),1),Gg=Z(on(),1),Wg=Z(hn(),1),Kl=Z(gn(),1),$g=Z(Ql(),1);var Yl=Kl.default;var ac=Z(ec());var fr=Z(require("node:process"),1),ic=Z(require("node:os"),1),bn=Z(require("node:tty"),1);function be(t,e=globalThis.Deno?globalThis.Deno.args:fr.default.argv){let i=t.startsWith("-")?"":t.length===1?"-":"--",r=e.indexOf(i+t),s=e.indexOf("--");return r!==-1&&(s===-1||r<s)}var{env:U}=fr.default,cr;be("no-color")||be("no-colors")||be("color=false")||be("color=never")?cr=0:(be("color")||be("colors")||be("color=true")||be("color=always"))&&(cr=1);function Yg(){if("FORCE_COLOR"in U)return U.FORCE_COLOR==="true"?1:U.FORCE_COLOR==="false"?0:U.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(U.FORCE_COLOR,10),3)}function Jg(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Xg(t,{streamIsTTY:e,sniffFlags:i=!0}={}){let r=Yg();r!==void 0&&(cr=r);let s=i?cr:r;if(s===0)return 0;if(i){if(be("color=16m")||be("color=full")||be("color=truecolor"))return 3;if(be("color=256"))return 2}if("TF_BUILD"in U&&"AGENT_NAME"in U)return 1;if(t&&!e&&s===void 0)return 0;let n=s||0;if(U.TERM==="dumb")return n;if(fr.default.platform==="win32"){let a=ic.default.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in U)return"GITHUB_ACTIONS"in U||"GITEA_ACTIONS"in U?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in U)||U.CI_NAME==="codeship"?1:n;if("TEAMCITY_VERSION"in U)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(U.TEAMCITY_VERSION)?1:0;if(U.COLORTERM==="truecolor"||U.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in U){let a=Number.parseInt((U.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(U.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(U.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(U.TERM)||"COLORTERM"in U?1:n}function tc(t,e={}){let i=Xg(t,{streamIsTTY:t&&t.isTTY,...e});return Jg(i)}var Zg={stdout:tc({isTTY:bn.default.isatty(1)}),stderr:tc({isTTY:bn.default.isatty(2)})},rc=Zg;0&&(module.exports={WebSocket,acorn,acornLoose,acornWalk,convertSourceMap,decode,diff,foregroundChild,mergeScriptCovs,minimatch,parseCss,program,supportsColor});
@@ -1,58 +1,58 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
- const Util = require('../utils/util.js');
4
- const { convertSourceMap } = require('../packages/monocart-coverage-vendor.js');
5
-
6
- function saveFile(url, source, dir) {
7
- if (!fs.existsSync(dir)) {
8
- fs.mkdirSync(dir, {
9
- recursive: true
10
- });
11
- }
12
-
13
- const id = Util.calculateSha1(url + source);
14
- const filePath = path.resolve(dir, `source-${id}.json`);
15
- if (!fs.existsSync(filePath)) {
16
- fs.writeFileSync(filePath, JSON.stringify({
17
- url,
18
- source
19
- }));
20
- }
21
-
22
- }
23
-
24
- function saveSource(url, loaded, dir) {
25
-
26
- // filter node modules
27
- if (url.startsWith('node:')) {
28
- return;
29
- }
30
-
31
- const { source, format } = loaded;
32
- if (typeof source !== 'string' || !['module', 'commonjs'].includes(format)) {
33
- // no source or wrong format
34
- return;
35
- }
36
-
37
- if (!convertSourceMap.mapFileCommentRegex.test(source)) {
38
- // no sourcemap
39
- return;
40
- }
41
-
42
- saveFile(url, source, dir);
43
-
44
- }
45
-
46
- async function load(url, context, nextLoad) {
47
- const loaded = await nextLoad(url, context);
48
- const dir = process.env.NODE_V8_COVERAGE;
49
- if (dir) {
50
- // only for coverage enabled
51
- saveSource(url, loaded, dir);
52
- }
53
- return loaded;
54
- }
55
-
56
- module.exports = {
57
- load
58
- };
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const Util = require('../utils/util.js');
4
+ const { convertSourceMap } = require('../packages/monocart-coverage-vendor.js');
5
+
6
+ function saveFile(url, source, dir) {
7
+ if (!fs.existsSync(dir)) {
8
+ fs.mkdirSync(dir, {
9
+ recursive: true
10
+ });
11
+ }
12
+
13
+ const id = Util.calculateSha1(url + source);
14
+ const filePath = path.resolve(dir, `source-${id}.json`);
15
+ if (!fs.existsSync(filePath)) {
16
+ fs.writeFileSync(filePath, JSON.stringify({
17
+ url,
18
+ source
19
+ }));
20
+ }
21
+
22
+ }
23
+
24
+ function saveSource(url, loaded, dir) {
25
+
26
+ // filter node modules
27
+ if (url.startsWith('node:')) {
28
+ return;
29
+ }
30
+
31
+ const { source, format } = loaded;
32
+ if (typeof source !== 'string' || !['module', 'commonjs'].includes(format)) {
33
+ // no source or wrong format
34
+ return;
35
+ }
36
+
37
+ if (!convertSourceMap.mapFileCommentRegex.test(source)) {
38
+ // no sourcemap
39
+ return;
40
+ }
41
+
42
+ saveFile(url, source, dir);
43
+
44
+ }
45
+
46
+ async function load(url, context, nextLoad) {
47
+ const loaded = await nextLoad(url, context);
48
+ const dir = process.env.NODE_V8_COVERAGE;
49
+ if (dir) {
50
+ // only for coverage enabled
51
+ saveSource(url, loaded, dir);
52
+ }
53
+ return loaded;
54
+ }
55
+
56
+ module.exports = {
57
+ load
58
+ };
@@ -1,3 +1,3 @@
1
- import { load } from './hooks.js';
2
-
3
- export { load };
1
+ import { load } from './hooks.js';
2
+
3
+ export { load };
@@ -1,15 +1,10 @@
1
1
  const http = require('http');
2
2
  const https = require('https');
3
- const dns = require('dns');
4
-
5
- // fixed ECONNREFUSED on NodeJS 18
6
- dns.setDefaultResultOrder('ipv4first');
7
3
 
8
4
  // minimal http request for get sourcemap json
9
5
  // https://nodejs.org/docs/latest/api/http.html#httprequesturl-options-callback
10
- const request = (options) => {
6
+ const request = (url, options) => {
11
7
 
12
- const url = `${options.url}`;
13
8
  const HTTP = url.startsWith('https') ? https : http;
14
9
  // console.log('request', url);
15
10
 
@@ -64,4 +59,28 @@ const request = (options) => {
64
59
  });
65
60
  };
66
61
 
67
- module.exports = request;
62
+ module.exports = async (url, options = {}) => {
63
+ let urlErr;
64
+ let urlObj;
65
+ try {
66
+ urlObj = new URL(url);
67
+ } catch (err) {
68
+ // console.error('error url', input);
69
+ urlErr = err;
70
+ }
71
+
72
+ if (urlErr) {
73
+ return [urlErr];
74
+ }
75
+
76
+ const [err, res] = await request(urlObj.toString(), options);
77
+ if (err) {
78
+ // replace localhost to 127.0.0.1
79
+ // ECONNREFUSED on NodeJS 18 https://github.com/node-fetch/node-fetch/issues/1624
80
+ if (urlObj.hostname === 'localhost') {
81
+ urlObj.hostname = '127.0.0.1';
82
+ return request(urlObj.toString(), options);
83
+ }
84
+ }
85
+ return [err, res];
86
+ };
@@ -143,6 +143,14 @@ const initIstanbulSourcePath = (coverageData, fileSources, sourcePathHandler) =>
143
143
 
144
144
  const resolveSourceUrl = (sourceName, sourceRoot) => {
145
145
 
146
+ // prepend sourceRoot
147
+ if (sourceRoot && !sourceName.startsWith(sourceRoot)) {
148
+ if (!sourceRoot.endsWith('/')) {
149
+ sourceRoot += '/';
150
+ }
151
+ sourceName = sourceRoot + sourceName;
152
+ }
153
+
146
154
  // could be absolute path
147
155
  // c:\\workspace\test\\selenium.spec.js
148
156
  // a.js false
@@ -162,14 +170,13 @@ const resolveSourceUrl = (sourceName, sourceRoot) => {
162
170
  return urlObj.toString();
163
171
  }
164
172
 
165
- // as relative path, join sourceRoot
166
- if (sourceRoot && !sourceName.startsWith(sourceRoot)) {
167
- sourceName = path.join(sourceRoot, sourceName);
168
- }
173
+ // console.log('sourceName', sourceName);
169
174
 
170
- sourceName = path.normalize(sourceName);
175
+ // as relative path
171
176
  const sourceUrl = pathToFileURL(sourceName).toString();
172
177
 
178
+ // console.log('sourceUrl', sourceUrl);
179
+
173
180
  return sourceUrl;
174
181
  };
175
182
 
@@ -198,6 +205,9 @@ const initSourceMapSourcePath = (sourceMap, fileUrls, distFile, sourcePathHandle
198
205
  };
199
206
 
200
207
  module.exports = {
208
+ // for unit test
209
+ resolveSourceUrl,
210
+
201
211
  getSourcePath,
202
212
  getSourceType,
203
213
  getSourcePathHandler,
package/lib/utils/util.js CHANGED
@@ -128,8 +128,15 @@ const Util = {
128
128
  return htmlPathHandler();
129
129
  },
130
130
 
131
- resolveNodeModule: (p) => {
131
+ resolveNodeModule: (id) => {
132
132
 
133
+ // for deno npm module
134
+ const mp = require.resolve(id);
135
+ if (fs.existsSync(mp)) {
136
+ return mp;
137
+ }
138
+
139
+ const p = `${it}/dist/${it}.js`;
133
140
  // root
134
141
  const cwd = path.resolve('node_modules', p);
135
142
  if (fs.existsSync(cwd)) {
@@ -443,15 +450,18 @@ const Util = {
443
450
  },
444
451
 
445
452
  cmpVersion: (v1, v2) => {
446
- const [major1, minor1, patch1] = `${v1}`.split('.').map((s) => parseInt(s));
447
- const [major2, minor2, patch2] = `${v2}`.split('.').map((s) => parseInt(s));
453
+ const [strMajor1, strMinor1, strPatch1] = `${v1}`.split('.');
454
+ const [strMajor2, strMinor2, strPatch2] = `${v2}`.split('.');
455
+ const strList = [strMajor1, strMinor1, strPatch1, strMajor2, strMinor2, strPatch2];
456
+ const list = strList.map((str) => Util.toNum(parseInt(str)));
457
+ const [major1, minor1, patch1, major2, minor2, patch2] = list;
448
458
  if (major1 === major2) {
449
459
  if (minor1 === minor2) {
450
- return Util.toNum(patch1) - Util.toNum(patch2);
460
+ return patch1 - patch2;
451
461
  }
452
- return Util.toNum(minor1) - Util.toNum(minor2);
462
+ return minor1 - minor2;
453
463
  }
454
- return Util.toNum(major1) - Util.toNum(major2);
464
+ return major1 - major2;
455
465
  },
456
466
 
457
467
  // ==========================================================================================
@@ -514,6 +524,17 @@ const Util = {
514
524
  console.log(`[MCR] ${message}`);
515
525
  },
516
526
 
527
+ logFilter: (message, lengthBefore, lengthAfter) => {
528
+ if (Util.loggingLevel < Util.loggingLevels.debug) {
529
+ return;
530
+ }
531
+ if (lengthAfter < lengthBefore) {
532
+ lengthBefore = EC.yellow(lengthBefore);
533
+ lengthAfter = EC.yellow(lengthAfter);
534
+ }
535
+ console.log(`[MCR] ${message} before ${lengthBefore} => after ${lengthAfter}`);
536
+ },
537
+
517
538
  // time is debug level, fix the log info, for checking snapshot
518
539
  logTime: (message, time_start) => {
519
540
  if (Util.loggingLevel < Util.loggingLevels.debug) {
package/lib/v8/v8.js CHANGED
@@ -60,16 +60,16 @@ const initV8ListAndSourcemap = async (v8list, options) => {
60
60
  // entry filter
61
61
  const entryFilter = getEntryFilter(options);
62
62
 
63
+ const lengthBefore = v8list.length;
64
+ v8list = v8list.filter(entryFilter);
65
+ const lengthAfter = v8list.length;
66
+ Util.logFilter('entry filter (add):', lengthBefore, lengthAfter);
67
+
63
68
  // filter no source or text
64
69
  // init type and css source from text
65
70
  // keep functions
66
71
  v8list = v8list.filter((entry) => {
67
72
 
68
- // filter entry
69
- if (!entryFilter(entry)) {
70
- // console.log('-', entry.url);
71
- return false;
72
- }
73
73
  // console.log(entry.url);
74
74
 
75
75
  if (typeof entry.source === 'string' && entry.functions) {
@@ -92,7 +92,6 @@ const initV8ListAndSourcemap = async (v8list, options) => {
92
92
  // console.log(entry);
93
93
  });
94
94
 
95
-
96
95
  // onEntry hook
97
96
  // after filter but before init, because id depends source and sourcePath
98
97
  const onEntry = options.onEntry;
@@ -318,8 +317,8 @@ const handleV8HtmlReport = async (reportData, reportOptions, options) => {
318
317
  const htmlFile = path.basename(reportPath);
319
318
 
320
319
  // deps
321
- const jsFiles = ['monocart-code-viewer', 'monocart-formatter', 'turbogrid'].map((it) => {
322
- return Util.resolveNodeModule(`${it}/dist/${it}.js`);
320
+ const jsFiles = ['monocart-code-viewer', 'monocart-formatter', 'turbogrid'].map((id) => {
321
+ return Util.resolveNodeModule(id);
323
322
  });
324
323
 
325
324
  // package v8 ui
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "monocart-coverage-reports",
3
- "version": "2.7.7",
3
+ "version": "2.7.9",
4
4
  "description": "A code coverage tool to generate native V8 reports or Istanbul reports.",
5
5
  "main": "./lib/index.js",
6
6
  "bin": {
@@ -26,6 +26,7 @@
26
26
  "scripts": {
27
27
  "build-test": "node ./test/build/build-test.js",
28
28
  "build": "sf lint && sf b -p && npm run build-test",
29
+ "test-unit": "mocha --parallel test/unit/*.test.js",
29
30
  "test-node-env": "cross-env NODE_V8_COVERAGE=.temp/v8-coverage-env node ./test/test-node-env.js && node ./test/generate-report.js",
30
31
  "test-node-api": "cross-env NODE_V8_COVERAGE=.temp/v8-coverage-api node ./test/test-node-api.js",
31
32
  "test-node-ins": "node ./test/test-node-ins.js",
@@ -42,6 +43,7 @@
42
43
  "test-minify": "node ./test/test-minify.js",
43
44
  "test-esbuild": "node ./test/test-esbuild.js",
44
45
  "test-rollup": "node ./test/test-rollup.js",
46
+ "test-swc": "node ./test/test-swc.js",
45
47
  "test-v8-and-istanbul": "node ./test/test-v8-and-istanbul.js",
46
48
  "test-browser": "node ./test/test.js --browser",
47
49
  "test-cli": "npx mcr node ./test/specs/node.test.js -c test/mcr.config.cli.js",
@@ -51,7 +53,7 @@
51
53
  "test-merge-istanbul": "node ./test/test-merge-istanbul.js",
52
54
  "test-client": "node ./test/test-client.js",
53
55
  "test-all": "node ./test/test.js && node ./scripts/docs.js",
54
- "test": "npx mcr npm run test-all -c test/mcr.config.mcr.js",
56
+ "test": "npm run test-unit && npx mcr npm run test-all -c test/mcr.config.mcr.js",
55
57
  "test:snap": "cross-env TEST_SNAPSHOT=true npm run test",
56
58
  "dev": "sf d v8",
57
59
  "open": "node ./scripts/open.js",
@@ -76,22 +78,23 @@
76
78
  "istanbul-lib-report": "^3.0.1",
77
79
  "istanbul-reports": "^3.1.7",
78
80
  "lz-utils": "^2.0.2",
79
- "monocart-code-viewer": "^1.1.2",
80
- "monocart-formatter": "^2.3.2",
81
+ "monocart-code-viewer": "^1.1.3",
82
+ "monocart-formatter": "^3.0.0",
83
+ "monocart-locator": "^1.0.0",
81
84
  "turbogrid": "^3.0.13"
82
85
  },
83
86
  "devDependencies": {
84
87
  "commander": "^12.0.0",
85
88
  "esbuild": "^0.20.2",
86
- "eslint": "^8.57.0",
89
+ "eslint": "~8.57.0",
87
90
  "eslint-config-plus": "^1.0.6",
88
- "eslint-plugin-html": "^8.0.0",
89
- "eslint-plugin-vue": "^9.23.0",
90
- "minimatch": "^9.0.3",
91
- "stylelint": "^16.3.0",
91
+ "eslint-plugin-html": "^8.1.0",
92
+ "eslint-plugin-vue": "^9.24.1",
93
+ "minimatch": "^9.0.4",
94
+ "stylelint": "^16.3.1",
92
95
  "stylelint-config-plus": "^1.1.0",
93
96
  "supports-color": "^9.4.0",
94
- "tsx": "^4.7.1",
97
+ "tsx": "^4.7.2",
95
98
  "ws": "^8.16.0"
96
99
  }
97
100
  }