@redocly/cli 2.49.1 → 2.50.0

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.
Files changed (105) hide show
  1. package/lib/chunks/{VN7LZQGN.js → 2MDLP4KJ.js} +1 -1
  2. package/lib/chunks/{W5DUUIKF.js → 4G6EYFND.js} +1 -1
  3. package/lib/chunks/{7K66NKDE.js → 5NWHDZIY.js} +1 -1
  4. package/lib/chunks/{WZ7U5J57.js → 5WFODJ7E.js} +1 -1
  5. package/lib/chunks/{CWHIZM5P.js → 6I34CQBG.js} +1 -1
  6. package/lib/chunks/{FRTUU2MY.js → 6SPYPUI6.js} +1 -1
  7. package/lib/chunks/{4PPXJI4C.js → AB3HPOHP.js} +1 -1
  8. package/lib/chunks/{M3XP3LQ3.js → AYCCHB2H.js} +77 -77
  9. package/lib/chunks/{YOFC4HMY.js → BPXJZY3G.js} +1 -1
  10. package/lib/chunks/{4OMVSQVK.js → BQM4LA5W.js} +1 -1
  11. package/lib/chunks/{7RCYOS5C.js → BTDYBYOM.js} +1 -1
  12. package/lib/chunks/{D7CUMUET.js → C7GGV6MA.js} +1 -1
  13. package/lib/chunks/{YAMJYOV5.js → CGWDSTQU.js} +1 -1
  14. package/lib/chunks/{5HNCFY3B.js → DV7Y25N6.js} +1 -1
  15. package/lib/chunks/{QKGUXGJO.js → EC24G6EZ.js} +1 -1
  16. package/lib/chunks/{C7PTGUVO.js → EZ3GAVTS.js} +1 -1
  17. package/lib/chunks/{GTD7QSP5.js → FLT7L6M6.js} +3 -3
  18. package/lib/chunks/{TNYG2WWT.js → FNNGQ3LB.js} +1 -1
  19. package/lib/chunks/{T5DNFYA3.js → GAYNNACL.js} +5 -5
  20. package/lib/chunks/{AEYKQB3Y.js → GINMHJWC.js} +1 -1
  21. package/lib/chunks/{VEQESANY.js → GQLQMPIU.js} +1 -1
  22. package/lib/chunks/{WAUR32EX.js → HPMV62YM.js} +1 -1
  23. package/lib/chunks/{MOKGEIKX.js → JIYXF2LJ.js} +1 -1
  24. package/lib/chunks/{KD4AOMY6.js → JQNS7VUU.js} +4 -4
  25. package/lib/chunks/{ENKAF6J7.js → KM7PMMIJ.js} +1 -1
  26. package/lib/chunks/{HKNDR3ZE.js → L3LA7UTJ.js} +1 -1
  27. package/lib/chunks/{M3HF5ZRI.js → M5NHHJLI.js} +1 -1
  28. package/lib/chunks/{G4MWXFHH.js → OSHXPRZS.js} +1 -1
  29. package/lib/chunks/{3BZL5B4H.js → OUY7OMOM.js} +1 -1
  30. package/lib/chunks/{7EFXGPDR.js → OWY3GI2B.js} +1 -1
  31. package/lib/chunks/{UHWZYG4E.js → OYK34CLF.js} +1 -1
  32. package/lib/chunks/{WG3HZCUF.js → QBLBI6YV.js} +1 -1
  33. package/lib/chunks/{3O6RY2OI.js → QE2DAZZS.js} +1 -1
  34. package/lib/chunks/{A5ASAZNF.js → QFDZWJOM.js} +1 -1
  35. package/lib/chunks/{GZI26L3N.js → RT7XNB4J.js} +1 -1
  36. package/lib/chunks/{GG676VHI.js → TOMUPTSM.js} +1 -1
  37. package/lib/chunks/{KW2DYFTU.js → UTMTQAX7.js} +1 -1
  38. package/lib/chunks/{JVOPWBET.js → UVVDFDXF.js} +1 -1
  39. package/lib/chunks/{VGBSMXRM.js → VFTQZ2K5.js} +2 -2
  40. package/lib/chunks/{H2G5AV35.js → W4SAP7O3.js} +3 -3
  41. package/lib/chunks/{N4AFJIJZ.js → WSWWRWOX.js} +1 -1
  42. package/lib/chunks/{ULOXDWJT.js → WUWXNE33.js} +1 -1
  43. package/lib/chunks/{PQ2JPZXM.js → WV47KPC2.js} +1 -1
  44. package/lib/chunks/{3UDONSS2.js → WYBHMXUT.js} +1 -1
  45. package/lib/chunks/{KW4NHNFI.js → X7EILS2N.js} +1 -1
  46. package/lib/chunks/{TXGTKM76.js → XX6MHUWG.js} +1 -1
  47. package/lib/chunks/{RQPDQIKC.js → Y3KBABBM.js} +1 -1
  48. package/lib/chunks/{TFNO2II2.js → YAOO5YIR.js} +1 -1
  49. package/lib/chunks/{J7XZNTM3.js → YHN6XBDC.js} +1 -1
  50. package/lib/chunks/{GULPNFGZ.js → YMZURCC6.js} +1 -1
  51. package/lib/chunks/{SSHEKZ4L.js → Z46FHG6E.js} +1 -1
  52. package/lib/eject-assets/generators/cli/docs.ts +1 -1
  53. package/lib/eject-assets/generators/cli/engine-source.ts +1 -1
  54. package/lib/eject-assets/generators/cli/index.ts +2 -2
  55. package/lib/eject-assets/generators/cli/render.ts +1 -1
  56. package/lib/eject-assets/generators/go/client.ts +1 -1
  57. package/lib/eject-assets/generators/go/descriptor.ts +1 -1
  58. package/lib/eject-assets/generators/go/index.ts +2 -2
  59. package/lib/eject-assets/generators/go/models.ts +1 -1
  60. package/lib/eject-assets/generators/go/naming.ts +1 -1
  61. package/lib/eject-assets/generators/go/operations.ts +1 -1
  62. package/lib/eject-assets/generators/go/pagination.ts +1 -1
  63. package/lib/eject-assets/generators/go/types.ts +1 -1
  64. package/lib/eject-assets/generators/mock/faker.ts +1 -1
  65. package/lib/eject-assets/generators/mock/index.ts +2 -2
  66. package/lib/eject-assets/generators/mock/render.ts +1 -1
  67. package/lib/eject-assets/generators/mock/sample.ts +1 -1
  68. package/lib/eject-assets/generators/mock/values.ts +1 -1
  69. package/lib/eject-assets/generators/php/client.ts +1 -1
  70. package/lib/eject-assets/generators/php/descriptor.ts +1 -1
  71. package/lib/eject-assets/generators/php/index.ts +2 -2
  72. package/lib/eject-assets/generators/php/models.ts +1 -1
  73. package/lib/eject-assets/generators/php/naming.ts +1 -1
  74. package/lib/eject-assets/generators/php/operations.ts +1 -1
  75. package/lib/eject-assets/generators/php/pagination.ts +1 -1
  76. package/lib/eject-assets/generators/php/types.ts +1 -1
  77. package/lib/eject-assets/generators/python/client.ts +1 -1
  78. package/lib/eject-assets/generators/python/descriptor.ts +1 -1
  79. package/lib/eject-assets/generators/python/index.ts +2 -2
  80. package/lib/eject-assets/generators/python/models.ts +1 -1
  81. package/lib/eject-assets/generators/python/naming.ts +1 -1
  82. package/lib/eject-assets/generators/python/operations.ts +1 -1
  83. package/lib/eject-assets/generators/python/pagination.ts +1 -1
  84. package/lib/eject-assets/generators/python/types.ts +1 -1
  85. package/lib/eject-assets/generators/swr/index.ts +2 -2
  86. package/lib/eject-assets/generators/swr/render.ts +1 -1
  87. package/lib/eject-assets/generators/tanstack-query/index.ts +2 -2
  88. package/lib/eject-assets/generators/tanstack-query/render.ts +1 -1
  89. package/lib/eject-assets/generators/transformers/index.ts +2 -2
  90. package/lib/eject-assets/generators/transformers/render.ts +1 -1
  91. package/lib/eject-assets/generators/typescript/banner.ts +1 -1
  92. package/lib/eject-assets/generators/typescript/client.ts +1 -1
  93. package/lib/eject-assets/generators/typescript/descriptor.ts +1 -1
  94. package/lib/eject-assets/generators/typescript/index.ts +2 -2
  95. package/lib/eject-assets/generators/typescript/inline-runtime.ts +1 -1
  96. package/lib/eject-assets/generators/typescript/operation-signature.ts +1 -1
  97. package/lib/eject-assets/generators/typescript/operation-types.ts +1 -1
  98. package/lib/eject-assets/generators/typescript/operations.ts +1 -1
  99. package/lib/eject-assets/generators/typescript/response-headers.ts +1 -1
  100. package/lib/eject-assets/generators/typescript/type-guards.ts +1 -1
  101. package/lib/eject-assets/generators/typescript/types.ts +1 -1
  102. package/lib/eject-assets/generators/zod/index.ts +2 -2
  103. package/lib/eject-assets/generators/zod/schemas.ts +1 -1
  104. package/lib/index.js +14 -14
  105. package/package.json +1 -1
@@ -4,25 +4,25 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as Oe,b as z}from"./5HNCFY3B.js";import{B as ye,C as Kt,F as be,G as At,H as ve,I as J,M as X,O as x,P as Se,V as xe,Z as kt,ba as Ee,d as me,e as qt,ea as Zt,f as we,fa as Ct,ha as Ae,ka as ke,l as N,la as Ce,s as nt}from"./M3XP3LQ3.js";import{performance as tn}from"perf_hooks";function Te(t){return t?._?.[0]??""}import{fileURLToPath as Js}from"node:url";import{posix as Xs,win32 as he}from"node:path";import{fileURLToPath as Qs}from"node:url";import{lstatSync as tr,readdir as er,readdirSync as ir,readlinkSync as sr,realpathSync as rr}from"fs";import*as nr from"node:fs";import{lstat as or,readdir as hr,readlink as ar,realpath as lr}from"node:fs/promises";import{EventEmitter as ce}from"node:events";import fi from"node:stream";import{StringDecoder as cr}from"node:string_decoder";var Ze=(t,e,i)=>{let s=t instanceof RegExp?Fe(t,i):t,r=e instanceof RegExp?Fe(e,i):e,n=s!==null&&r!=null&&Vi(s,r,i);return n&&{start:n[0],end:n[1],pre:i.slice(0,n[0]),body:i.slice(n[0]+s.length,n[1]),post:i.slice(n[1]+r.length)}},Fe=(t,e)=>{let i=e.match(t);return i?i[0]:null},Vi=(t,e,i)=>{let s,r,n,o,h,a=i.indexOf(t),l=i.indexOf(e,a+1),p=a;if(a>=0&&l>0){if(t===e)return[a,l];for(s=[],n=i.length;p>=0&&!h;){if(p===a)s.push(p),a=i.indexOf(t,p+1);else if(s.length===1){let c=s.pop();c!==void 0&&(h=[c,l])}else r=s.pop(),r!==void 0&&r<n&&(n=r,o=l),l=i.indexOf(e,p+1);p=a<l&&a>=0?a:l}s.length&&o!==void 0&&(h=[n,o])}return h},Xe="\0SLASH"+Math.random()+"\0",Qe="\0OPEN"+Math.random()+"\0",ae="\0CLOSE"+Math.random()+"\0",ti="\0COMMA"+Math.random()+"\0",ei="\0PERIOD"+Math.random()+"\0",Yi=new RegExp(Xe,"g"),Ji=new RegExp(Qe,"g"),qi=new RegExp(ae,"g"),Ki=new RegExp(ti,"g"),Zi=new RegExp(ei,"g"),Xi=/\\\\/g,Qi=/\\{/g,ts=/\\}/g,es=/\\,/g,is=/\\./g,ss=1e5;function Xt(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function rs(t){return t.replace(Xi,Xe).replace(Qi,Qe).replace(ts,ae).replace(es,ti).replace(is,ei)}function ns(t){return t.replace(Yi,"\\").replace(Ji,"{").replace(qi,"}").replace(Ki,",").replace(Zi,".")}function ii(t){if(!t)return[""];let e=[],i=Ze("{","}",t);if(!i)return t.split(",");let{pre:s,body:r,post:n}=i,o=s.split(",");o[o.length-1]+="{"+r+"}";let h=ii(n);return n.length&&(o[o.length-1]+=h.shift(),o.push.apply(o,h)),e.push.apply(e,o),e}function os(t,e={}){if(!t)return[];let{max:i=ss}=e;return t.slice(0,2)==="{}"&&(t="\\{\\}"+t.slice(2)),mt(rs(t),i,!0).map(ns)}function hs(t){return"{"+t+"}"}function as(t){return/^-?0\d/.test(t)}function ls(t,e){return t<=e}function cs(t,e){return t>=e}function mt(t,e,i){let s=[],r=Ze("{","}",t);if(!r)return[t];let n=r.pre,o=r.post.length?mt(r.post,e,!1):[""];if(/\$$/.test(r.pre))for(let h=0;h<o.length&&h<e;h++){let a=n+"{"+r.body+"}"+o[h];s.push(a)}else{let h=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),a=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),l=h||a,p=r.body.indexOf(",")>=0;if(!l&&!p)return r.post.match(/,(?!,).*\}/)?(t=r.pre+"{"+r.body+ae+r.post,mt(t,e,!0)):[t];let c;if(l)c=r.body.split(/\.\./);else if(c=ii(r.body),c.length===1&&c[0]!==void 0&&(c=mt(c[0],e,!1).map(hs),c.length===1))return o.map(u=>r.pre+c[0]+u);let f;if(l&&c[0]!==void 0&&c[1]!==void 0){let u=Xt(c[0]),d=Xt(c[1]),g=Math.max(c[0].length,c[1].length),w=c.length===3&&c[2]!==void 0?Math.abs(Xt(c[2])):1,m=ls;d<u&&(w*=-1,m=cs);let y=c.some(as);f=[];for(let b=u;m(b,d);b+=w){let v;if(a)v=String.fromCharCode(b),v==="\\"&&(v="");else if(v=String(b),y){let S=g-v.length;if(S>0){let Y=new Array(S+1).join("0");b<0?v="-"+Y+v.slice(1):v=Y+v}}f.push(v)}}else{f=[];for(let u=0;u<c.length;u++)f.push.apply(f,mt(c[u],e,!1))}for(let u=0;u<f.length;u++)for(let d=0;d<o.length&&s.length<e;d++){let g=n+f[u]+o[d];(!i||l||g)&&s.push(g)}}return s}var Wt=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")},ps={"[: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]},ct=t=>t.replace(/[[\]\\-]/g,"\\$&"),us=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Re=t=>t.join(""),fs=(t,e)=>{let i=e;if(t.charAt(i)!=="[")throw new Error("not in a brace expression");let s=[],r=[],n=i+1,o=!1,h=!1,a=!1,l=!1,p=i,c="";t:for(;n<t.length;){let d=t.charAt(n);if((d==="!"||d==="^")&&n===i+1){l=!0,n++;continue}if(d==="]"&&o&&!a){p=n+1;break}if(o=!0,d==="\\"&&!a){a=!0,n++;continue}if(d==="["&&!a){for(let[g,[w,m,y]]of Object.entries(ps))if(t.startsWith(g,n)){if(c)return["$.",!1,t.length-i,!0];n+=g.length,y?r.push(w):s.push(w),h=h||m;continue t}}if(a=!1,c){d>c?s.push(ct(c)+"-"+ct(d)):d===c&&s.push(ct(d)),c="",n++;continue}if(t.startsWith("-]",n+1)){s.push(ct(d+"-")),n+=2;continue}if(t.startsWith("-",n+1)){c=d,n+=2;continue}s.push(ct(d)),n++}if(p<n)return["",!1,0,!1];if(!s.length&&!r.length)return["$.",!1,t.length-i,!0];if(r.length===0&&s.length===1&&/^\\?.$/.test(s[0])&&!l){let d=s[0].length===2?s[0].slice(-1):s[0];return[us(d),!1,p-i,!1]}let f="["+(l?"^":"")+Re(s)+"]",u="["+(l?"":"^")+Re(r)+"]";return[s.length&&r.length?"("+f+"|"+u+")":s.length?f:u,h,p-i,!0]},at=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!0}={})=>i?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1"),ds=new Set(["!","?","+","*","@"]),je=t=>ds.has(t),gs="(?!(?:^|/)\\.\\.?(?:$|/))",Ot="(?!\\.)",ms=new Set(["[","."]),ws=new Set(["..","."]),ys=new Set("().*{}+?[]^$\\!"),bs=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),le="[^/]",Pe=le+"*?",De=le+"+?",si=class D{type;#t;#i;#n=!1;#r=[];#o;#v;#w;#c=!1;#h;#u;#p=!1;constructor(e,i,s={}){this.type=e,e&&(this.#i=!0),this.#o=i,this.#t=this.#o?this.#o.#t:this,this.#h=this.#t===this?s:this.#t.#h,this.#w=this.#t===this?[]:this.#t.#w,e==="!"&&!this.#t.#c&&this.#w.push(this),this.#v=this.#o?this.#o.#r.length:0}get hasMagic(){if(this.#i!==void 0)return this.#i;for(let e of this.#r)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#i=!0;return this.#i}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(e=>String(e)).join("|")+")":this.#u=this.#r.map(e=>String(e)).join("")}#a(){if(this!==this.#t)throw new Error("should only call on root");if(this.#c)return this;this.toString(),this.#c=!0;let e;for(;e=this.#w.pop();){if(e.type!=="!")continue;let i=e,s=i.#o;for(;s;){for(let r=i.#v+1;!s.type&&r<s.#r.length;r++)for(let n of e.#r){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(s.#r[r])}i=s,s=i.#o}}return this}push(...e){for(let i of e)if(i!==""){if(typeof i!="string"&&!(i instanceof D&&i.#o===this))throw new Error("invalid part: "+i);this.#r.push(i)}}toJSON(){let e=this.type===null?this.#r.slice().map(i=>typeof i=="string"?i:i.toJSON()):[this.type,...this.#r.map(i=>i.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#c&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#t===this)return!0;if(!this.#o?.isStart())return!1;if(this.#v===0)return!0;let e=this.#o;for(let i=0;i<this.#v;i++){let s=e.#r[i];if(!(s instanceof D&&s.type==="!"))return!1}return!0}isEnd(){if(this.#t===this||this.#o?.type==="!")return!0;if(!this.#o?.isEnd())return!1;if(!this.type)return this.#o?.isEnd();let e=this.#o?this.#o.#r.length:0;return this.#v===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let i=new D(this.type,e);for(let s of this.#r)i.copyIn(s);return i}static#s(e,i,s,r){let n=!1,o=!1,h=-1,a=!1;if(i.type===null){let u=s,d="";for(;u<e.length;){let g=e.charAt(u++);if(n||g==="\\"){n=!n,d+=g;continue}if(o){u===h+1?(g==="^"||g==="!")&&(a=!0):g==="]"&&!(u===h+2&&a)&&(o=!1),d+=g;continue}else if(g==="["){o=!0,h=u,a=!1,d+=g;continue}if(!r.noext&&je(g)&&e.charAt(u)==="("){i.push(d),d="";let w=new D(g,i);u=D.#s(e,w,u,r),i.push(w);continue}d+=g}return i.push(d),u}let l=s+1,p=new D(null,i),c=[],f="";for(;l<e.length;){let u=e.charAt(l++);if(n||u==="\\"){n=!n,f+=u;continue}if(o){l===h+1?(u==="^"||u==="!")&&(a=!0):u==="]"&&!(l===h+2&&a)&&(o=!1),f+=u;continue}else if(u==="["){o=!0,h=l,a=!1,f+=u;continue}if(je(u)&&e.charAt(l)==="("){p.push(f),f="";let d=new D(u,p);p.push(d),l=D.#s(e,d,l,r);continue}if(u==="|"){p.push(f),f="",c.push(p),p=new D(null,i);continue}if(u===")")return f===""&&i.#r.length===0&&(i.#p=!0),p.push(f),f="",i.push(...c,p),l;f+=u}return i.type=null,i.#i=void 0,i.#r=[e.substring(s-1)],l}static fromGlob(e,i={}){let s=new D(null,void 0,i);return D.#s(e,s,0,i),s}toMMPattern(){if(this!==this.#t)return this.#t.toMMPattern();let e=this.toString(),[i,s,r,n]=this.toRegExpSource();if(!(r||this.#i||this.#h.nocase&&!this.#h.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return s;let o=(this.#h.nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${i}$`,o),{_src:i,_glob:e})}get options(){return this.#h}toRegExpSource(e){let i=e??!!this.#h.dot;if(this.#t===this&&this.#a(),!this.type){let a=this.isStart()&&this.isEnd()&&!this.#r.some(f=>typeof f!="string"),l=this.#r.map(f=>{let[u,d,g,w]=typeof f=="string"?D.#S(f,this.#i,a):f.toRegExpSource(e);return this.#i=this.#i||g,this.#n=this.#n||w,u}).join(""),p="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&ws.has(this.#r[0]))){let f=ms,u=i&&f.has(l.charAt(0))||l.startsWith("\\.")&&f.has(l.charAt(2))||l.startsWith("\\.\\.")&&f.has(l.charAt(4)),d=!i&&!e&&f.has(l.charAt(0));p=u?gs:d?Ot:""}let c="";return this.isEnd()&&this.#t.#c&&this.#o?.type==="!"&&(c="(?:$|\\/)"),[p+l+c,at(l),this.#i=!!this.#i,this.#n]}let s=this.type==="*"||this.type==="+",r=this.type==="!"?"(?:(?!(?:":"(?:",n=this.#f(i);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let a=this.toString();return this.#r=[a],this.type=null,this.#i=void 0,[a,at(this.toString()),!1,!1]}let o=!s||e||i||!Ot?"":this.#f(!0);o===n&&(o=""),o&&(n=`(?:${n})(?:${o})*?`);let h="";if(this.type==="!"&&this.#p)h=(this.isStart()&&!i?Ot:"")+De;else{let a=this.type==="!"?"))"+(this.isStart()&&!i&&!e?Ot:"")+Pe+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;h=r+n+a}return[h,at(n),this.#i=!!this.#i,this.#n]}#f(e){return this.#r.map(i=>{if(typeof i=="string")throw new Error("string type in extglob ast??");let[s,r,n,o]=i.toRegExpSource(e);return this.#n=this.#n||o,s}).filter(i=>!(this.isStart()&&this.isEnd())||!!i).join("|")}static#S(e,i,s=!1){let r=!1,n="",o=!1,h=!1;for(let a=0;a<e.length;a++){let l=e.charAt(a);if(r){r=!1,n+=(ys.has(l)?"\\":"")+l;continue}if(l==="*"){if(h)continue;h=!0,n+=s&&/^[*]+$/.test(e)?De:Pe,i=!0;continue}else h=!1;if(l==="\\"){a===e.length-1?n+="\\\\":r=!0;continue}if(l==="["){let[p,c,f,u]=fs(e,a);if(f){n+=p,o=o||c,a+=f-1,i=i||u;continue}}if(l==="?"){n+=le,i=!0;continue}n+=bs(l)}return[n,at(e),!!i,o]}},ri=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!1}={})=>i?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&"),R=(t,e,i={})=>(Wt(e),!i.nocomment&&e.charAt(0)==="#"?!1:new Z(e,i).match(t)),vs=/^\*+([^+@!?\*\[\(]*)$/,Ss=t=>e=>!e.startsWith(".")&&e.endsWith(t),xs=t=>e=>e.endsWith(t),Es=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),As=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),ks=/^\*+\.\*+$/,Cs=t=>!t.startsWith(".")&&t.includes("."),Os=t=>t!=="."&&t!==".."&&t.includes("."),Ts=/^\.\*+$/,Fs=t=>t!=="."&&t!==".."&&t.startsWith("."),Rs=/^\*+$/,js=t=>t.length!==0&&!t.startsWith("."),Ps=t=>t.length!==0&&t!=="."&&t!=="..",Ds=/^\?+([^+@!?\*\[\(]*)?$/,$s=([t,e=""])=>{let i=ni([t]);return e?(e=e.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(e)):i},Ms=([t,e=""])=>{let i=oi([t]);return e?(e=e.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(e)):i},Ls=([t,e=""])=>{let i=oi([t]);return e?s=>i(s)&&s.endsWith(e):i},Ws=([t,e=""])=>{let i=ni([t]);return e?s=>i(s)&&s.endsWith(e):i},ni=([t])=>{let e=t.length;return i=>i.length===e&&!i.startsWith(".")},oi=([t])=>{let e=t.length;return i=>i.length===e&&i!=="."&&i!==".."},hi=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",$e={win32:{sep:"\\"},posix:{sep:"/"}},Ns=hi==="win32"?$e.win32.sep:$e.posix.sep;R.sep=Ns;var F=Symbol("globstar **");R.GLOBSTAR=F;var zs="[^/]",_s=zs+"*?",Bs="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Is="(?:(?!(?:\\/|^)\\.).)*?",Us=(t,e={})=>i=>R(i,t,e);R.filter=Us;var $=(t,e={})=>Object.assign({},t,e),Gs=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return R;let e=R;return Object.assign((i,s,r={})=>e(i,s,$(t,r)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,$(t,s))}static defaults(i){return e.defaults($(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,r={}){super(i,s,$(t,r))}static fromGlob(i,s={}){return e.AST.fromGlob(i,$(t,s))}},unescape:(i,s={})=>e.unescape(i,$(t,s)),escape:(i,s={})=>e.escape(i,$(t,s)),filter:(i,s={})=>e.filter(i,$(t,s)),defaults:i=>e.defaults($(t,i)),makeRe:(i,s={})=>e.makeRe(i,$(t,s)),braceExpand:(i,s={})=>e.braceExpand(i,$(t,s)),match:(i,s,r={})=>e.match(i,s,$(t,r)),sep:e.sep,GLOBSTAR:F})};R.defaults=Gs;var ai=(t,e={})=>(Wt(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:os(t,{max:e.braceExpandMax}));R.braceExpand=ai;var Hs=(t,e={})=>new Z(t,e).makeRe();R.makeRe=Hs;var Vs=(t,e,i={})=>{let s=new Z(e,i);return t=t.filter(r=>s.match(r)),s.options.nonull&&!t.length&&t.push(e),t};R.match=Vs;var Me=/[?*]|[+@!]\(.*?\)|\[|\]/,Ys=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Z=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,e={}){Wt(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||hi,this.isWindows=this.platform==="win32";let i="allowWindowsEscape";this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||e[i]===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=e.windowsNoMagicRoot!==void 0?e.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 t of this.set)for(let e of t)if(typeof e!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=(...r)=>console.error(...r)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(r=>this.slashSplit(r));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let s=this.globParts.map((r,n,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let h=r[0]===""&&r[1]===""&&(r[2]==="?"||!Me.test(r[2]))&&!Me.test(r[3]),a=/^[a-z]:/i.test(r[0]);if(h)return[...r.slice(0,4),...r.slice(4).map(l=>this.parse(l))];if(a)return[r[0],...r.slice(1).map(l=>this.parse(l))]}return r.map(h=>this.parse(h))});if(this.debug(this.pattern,s),this.set=s.filter(r=>r.indexOf(!1)===-1),this.isWindows)for(let r=0;r<this.set.length;r++){let n=this.set[r];n[0]===""&&n[1]===""&&this.globParts[r][2]==="?"&&typeof n[3]=="string"&&/^[a-z]:$/i.test(n[3])&&(n[2]="?")}this.debug(this.pattern,this.set)}preprocess(t){if(this.options.noglobstar)for(let i=0;i<t.length;i++)for(let s=0;s<t[i].length;s++)t[i][s]==="**"&&(t[i][s]="*");let{optimizationLevel:e=1}=this.options;return e>=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):e>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(e=>{let i=-1;for(;(i=e.indexOf("**",i+1))!==-1;){let s=i;for(;e[s+1]==="**";)s++;s!==i&&e.splice(i,s-i)}return e})}levelOneOptimize(t){return t.map(e=>(e=e.reduce((i,s)=>{let r=i[i.length-1];return s==="**"&&r==="**"?i:s===".."&&r&&r!==".."&&r!=="."&&r!=="**"?(i.pop(),i):(i.push(s),i)},[]),e.length===0?[""]:e))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let s=1;s<t.length-1;s++){let r=t[s];s===1&&r===""&&t[0]===""||(r==="."||r==="")&&(e=!0,t.splice(s,1),s--)}t[0]==="."&&t.length===2&&(t[1]==="."||t[1]==="")&&(e=!0,t.pop())}let i=0;for(;(i=t.indexOf("..",i+1))!==-1;){let s=t[i-1];s&&s!=="."&&s!==".."&&s!=="**"&&(e=!0,t.splice(i-1,2),i-=2)}}while(e);return t.length===0?[""]:t}firstPhasePreProcess(t){let e=!1;do{e=!1;for(let i of t){let s=-1;for(;(s=i.indexOf("**",s+1))!==-1;){let n=s;for(;i[n+1]==="**";)n++;n>s&&i.splice(s+1,n-s);let o=i[s+1],h=i[s+2],a=i[s+3];if(o!==".."||!h||h==="."||h===".."||!a||a==="."||a==="..")continue;e=!0,i.splice(s,1);let l=i.slice(0);l[s]="**",t.push(l),s--}if(!this.preserveMultipleSlashes){for(let n=1;n<i.length-1;n++){let o=i[n];n===1&&o===""&&i[0]===""||(o==="."||o==="")&&(e=!0,i.splice(n,1),n--)}i[0]==="."&&i.length===2&&(i[1]==="."||i[1]==="")&&(e=!0,i.pop())}let r=0;for(;(r=i.indexOf("..",r+1))!==-1;){let n=i[r-1];if(n&&n!=="."&&n!==".."&&n!=="**"){e=!0;let o=r===1&&i[r+1]==="**"?["."]:[];i.splice(r-1,2,...o),i.length===0&&i.push(""),r-=2}}}}while(e);return t}secondPhasePreProcess(t){for(let e=0;e<t.length-1;e++)for(let i=e+1;i<t.length;i++){let s=this.partsMatch(t[e],t[i],!this.preserveMultipleSlashes);if(s){t[e]=[],t[i]=s;break}}return t.filter(e=>e.length)}partsMatch(t,e,i=!1){let s=0,r=0,n=[],o="";for(;s<t.length&&r<e.length;)if(t[s]===e[r])n.push(o==="b"?e[r]:t[s]),s++,r++;else if(i&&t[s]==="**"&&e[r]===t[s+1])n.push(t[s]),s++;else if(i&&e[r]==="**"&&t[s]===e[r+1])n.push(e[r]),r++;else if(t[s]==="*"&&e[r]&&(this.options.dot||!e[r].startsWith("."))&&e[r]!=="**"){if(o==="b")return!1;o="a",n.push(t[s]),s++,r++}else if(e[r]==="*"&&t[s]&&(this.options.dot||!t[s].startsWith("."))&&t[s]!=="**"){if(o==="a")return!1;o="b",n.push(e[r]),s++,r++}else return!1;return t.length===e.length&&n}parseNegate(){if(this.nonegate)return;let t=this.pattern,e=!1,i=0;for(let s=0;s<t.length&&t.charAt(s)==="!";s++)e=!e,i++;i&&(this.pattern=t.slice(i)),this.negate=e}matchOne(t,e,i=!1){let s=this.options;if(this.isWindows){let d=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),g=!d&&t[0]===""&&t[1]===""&&t[2]==="?"&&/^[a-z]:$/i.test(t[3]),w=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),m=!w&&e[0]===""&&e[1]===""&&e[2]==="?"&&typeof e[3]=="string"&&/^[a-z]:$/i.test(e[3]),y=g?3:d?0:void 0,b=m?3:w?0:void 0;if(typeof y=="number"&&typeof b=="number"){let[v,S]=[t[y],e[b]];v.toLowerCase()===S.toLowerCase()&&(e[b]=v,b>y?e=e.slice(b):y>b&&(t=t.slice(y)))}}let{optimizationLevel:r=1}=this.options;r>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:e}),this.debug("matchOne",t.length,e.length);for(var n=0,o=0,h=t.length,a=e.length;n<h&&o<a;n++,o++){this.debug("matchOne loop");var l=e[o],p=t[n];if(this.debug(e,l,p),l===!1)return!1;if(l===F){this.debug("GLOBSTAR",[e,l,p]);var c=n,f=o+1;if(f===a){for(this.debug("** at the end");n<h;n++)if(t[n]==="."||t[n]===".."||!s.dot&&t[n].charAt(0)===".")return!1;return!0}for(;c<h;){var u=t[c];if(this.debug(`
7
+ import{a as Oe,b as z}from"./DV7Y25N6.js";import{B as ye,C as Kt,D as be,G as ve,M as Se,N as At,O as xe,P as J,T as X,V as x,Z as kt,ba as Ee,d as me,e as qt,ea as Zt,f as we,fa as Ct,ha as Ae,ka as ke,l as N,la as Ce,s as nt}from"./AYCCHB2H.js";import{performance as tn}from"perf_hooks";function Te(t){return t?._?.[0]??""}import{fileURLToPath as Js}from"node:url";import{posix as Xs,win32 as he}from"node:path";import{fileURLToPath as Qs}from"node:url";import{lstatSync as tr,readdir as er,readdirSync as ir,readlinkSync as sr,realpathSync as rr}from"fs";import*as nr from"node:fs";import{lstat as or,readdir as hr,readlink as ar,realpath as lr}from"node:fs/promises";import{EventEmitter as ce}from"node:events";import fi from"node:stream";import{StringDecoder as cr}from"node:string_decoder";var Ze=(t,e,i)=>{let s=t instanceof RegExp?Fe(t,i):t,r=e instanceof RegExp?Fe(e,i):e,n=s!==null&&r!=null&&Vi(s,r,i);return n&&{start:n[0],end:n[1],pre:i.slice(0,n[0]),body:i.slice(n[0]+s.length,n[1]),post:i.slice(n[1]+r.length)}},Fe=(t,e)=>{let i=e.match(t);return i?i[0]:null},Vi=(t,e,i)=>{let s,r,n,o,h,a=i.indexOf(t),l=i.indexOf(e,a+1),p=a;if(a>=0&&l>0){if(t===e)return[a,l];for(s=[],n=i.length;p>=0&&!h;){if(p===a)s.push(p),a=i.indexOf(t,p+1);else if(s.length===1){let c=s.pop();c!==void 0&&(h=[c,l])}else r=s.pop(),r!==void 0&&r<n&&(n=r,o=l),l=i.indexOf(e,p+1);p=a<l&&a>=0?a:l}s.length&&o!==void 0&&(h=[n,o])}return h},Xe="\0SLASH"+Math.random()+"\0",Qe="\0OPEN"+Math.random()+"\0",ae="\0CLOSE"+Math.random()+"\0",ti="\0COMMA"+Math.random()+"\0",ei="\0PERIOD"+Math.random()+"\0",Yi=new RegExp(Xe,"g"),Ji=new RegExp(Qe,"g"),qi=new RegExp(ae,"g"),Ki=new RegExp(ti,"g"),Zi=new RegExp(ei,"g"),Xi=/\\\\/g,Qi=/\\{/g,ts=/\\}/g,es=/\\,/g,is=/\\./g,ss=1e5;function Xt(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function rs(t){return t.replace(Xi,Xe).replace(Qi,Qe).replace(ts,ae).replace(es,ti).replace(is,ei)}function ns(t){return t.replace(Yi,"\\").replace(Ji,"{").replace(qi,"}").replace(Ki,",").replace(Zi,".")}function ii(t){if(!t)return[""];let e=[],i=Ze("{","}",t);if(!i)return t.split(",");let{pre:s,body:r,post:n}=i,o=s.split(",");o[o.length-1]+="{"+r+"}";let h=ii(n);return n.length&&(o[o.length-1]+=h.shift(),o.push.apply(o,h)),e.push.apply(e,o),e}function os(t,e={}){if(!t)return[];let{max:i=ss}=e;return t.slice(0,2)==="{}"&&(t="\\{\\}"+t.slice(2)),mt(rs(t),i,!0).map(ns)}function hs(t){return"{"+t+"}"}function as(t){return/^-?0\d/.test(t)}function ls(t,e){return t<=e}function cs(t,e){return t>=e}function mt(t,e,i){let s=[],r=Ze("{","}",t);if(!r)return[t];let n=r.pre,o=r.post.length?mt(r.post,e,!1):[""];if(/\$$/.test(r.pre))for(let h=0;h<o.length&&h<e;h++){let a=n+"{"+r.body+"}"+o[h];s.push(a)}else{let h=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),a=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),l=h||a,p=r.body.indexOf(",")>=0;if(!l&&!p)return r.post.match(/,(?!,).*\}/)?(t=r.pre+"{"+r.body+ae+r.post,mt(t,e,!0)):[t];let c;if(l)c=r.body.split(/\.\./);else if(c=ii(r.body),c.length===1&&c[0]!==void 0&&(c=mt(c[0],e,!1).map(hs),c.length===1))return o.map(u=>r.pre+c[0]+u);let f;if(l&&c[0]!==void 0&&c[1]!==void 0){let u=Xt(c[0]),d=Xt(c[1]),g=Math.max(c[0].length,c[1].length),w=c.length===3&&c[2]!==void 0?Math.abs(Xt(c[2])):1,m=ls;d<u&&(w*=-1,m=cs);let y=c.some(as);f=[];for(let b=u;m(b,d);b+=w){let v;if(a)v=String.fromCharCode(b),v==="\\"&&(v="");else if(v=String(b),y){let S=g-v.length;if(S>0){let Y=new Array(S+1).join("0");b<0?v="-"+Y+v.slice(1):v=Y+v}}f.push(v)}}else{f=[];for(let u=0;u<c.length;u++)f.push.apply(f,mt(c[u],e,!1))}for(let u=0;u<f.length;u++)for(let d=0;d<o.length&&s.length<e;d++){let g=n+f[u]+o[d];(!i||l||g)&&s.push(g)}}return s}var Wt=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")},ps={"[: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]},ct=t=>t.replace(/[[\]\\-]/g,"\\$&"),us=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Re=t=>t.join(""),fs=(t,e)=>{let i=e;if(t.charAt(i)!=="[")throw new Error("not in a brace expression");let s=[],r=[],n=i+1,o=!1,h=!1,a=!1,l=!1,p=i,c="";t:for(;n<t.length;){let d=t.charAt(n);if((d==="!"||d==="^")&&n===i+1){l=!0,n++;continue}if(d==="]"&&o&&!a){p=n+1;break}if(o=!0,d==="\\"&&!a){a=!0,n++;continue}if(d==="["&&!a){for(let[g,[w,m,y]]of Object.entries(ps))if(t.startsWith(g,n)){if(c)return["$.",!1,t.length-i,!0];n+=g.length,y?r.push(w):s.push(w),h=h||m;continue t}}if(a=!1,c){d>c?s.push(ct(c)+"-"+ct(d)):d===c&&s.push(ct(d)),c="",n++;continue}if(t.startsWith("-]",n+1)){s.push(ct(d+"-")),n+=2;continue}if(t.startsWith("-",n+1)){c=d,n+=2;continue}s.push(ct(d)),n++}if(p<n)return["",!1,0,!1];if(!s.length&&!r.length)return["$.",!1,t.length-i,!0];if(r.length===0&&s.length===1&&/^\\?.$/.test(s[0])&&!l){let d=s[0].length===2?s[0].slice(-1):s[0];return[us(d),!1,p-i,!1]}let f="["+(l?"^":"")+Re(s)+"]",u="["+(l?"":"^")+Re(r)+"]";return[s.length&&r.length?"("+f+"|"+u+")":s.length?f:u,h,p-i,!0]},at=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!0}={})=>i?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1"),ds=new Set(["!","?","+","*","@"]),je=t=>ds.has(t),gs="(?!(?:^|/)\\.\\.?(?:$|/))",Ot="(?!\\.)",ms=new Set(["[","."]),ws=new Set(["..","."]),ys=new Set("().*{}+?[]^$\\!"),bs=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),le="[^/]",Pe=le+"*?",De=le+"+?",si=class D{type;#t;#i;#n=!1;#r=[];#o;#v;#w;#c=!1;#h;#u;#p=!1;constructor(e,i,s={}){this.type=e,e&&(this.#i=!0),this.#o=i,this.#t=this.#o?this.#o.#t:this,this.#h=this.#t===this?s:this.#t.#h,this.#w=this.#t===this?[]:this.#t.#w,e==="!"&&!this.#t.#c&&this.#w.push(this),this.#v=this.#o?this.#o.#r.length:0}get hasMagic(){if(this.#i!==void 0)return this.#i;for(let e of this.#r)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#i=!0;return this.#i}toString(){return this.#u!==void 0?this.#u:this.type?this.#u=this.type+"("+this.#r.map(e=>String(e)).join("|")+")":this.#u=this.#r.map(e=>String(e)).join("")}#a(){if(this!==this.#t)throw new Error("should only call on root");if(this.#c)return this;this.toString(),this.#c=!0;let e;for(;e=this.#w.pop();){if(e.type!=="!")continue;let i=e,s=i.#o;for(;s;){for(let r=i.#v+1;!s.type&&r<s.#r.length;r++)for(let n of e.#r){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(s.#r[r])}i=s,s=i.#o}}return this}push(...e){for(let i of e)if(i!==""){if(typeof i!="string"&&!(i instanceof D&&i.#o===this))throw new Error("invalid part: "+i);this.#r.push(i)}}toJSON(){let e=this.type===null?this.#r.slice().map(i=>typeof i=="string"?i:i.toJSON()):[this.type,...this.#r.map(i=>i.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#t||this.#t.#c&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#t===this)return!0;if(!this.#o?.isStart())return!1;if(this.#v===0)return!0;let e=this.#o;for(let i=0;i<this.#v;i++){let s=e.#r[i];if(!(s instanceof D&&s.type==="!"))return!1}return!0}isEnd(){if(this.#t===this||this.#o?.type==="!")return!0;if(!this.#o?.isEnd())return!1;if(!this.type)return this.#o?.isEnd();let e=this.#o?this.#o.#r.length:0;return this.#v===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let i=new D(this.type,e);for(let s of this.#r)i.copyIn(s);return i}static#s(e,i,s,r){let n=!1,o=!1,h=-1,a=!1;if(i.type===null){let u=s,d="";for(;u<e.length;){let g=e.charAt(u++);if(n||g==="\\"){n=!n,d+=g;continue}if(o){u===h+1?(g==="^"||g==="!")&&(a=!0):g==="]"&&!(u===h+2&&a)&&(o=!1),d+=g;continue}else if(g==="["){o=!0,h=u,a=!1,d+=g;continue}if(!r.noext&&je(g)&&e.charAt(u)==="("){i.push(d),d="";let w=new D(g,i);u=D.#s(e,w,u,r),i.push(w);continue}d+=g}return i.push(d),u}let l=s+1,p=new D(null,i),c=[],f="";for(;l<e.length;){let u=e.charAt(l++);if(n||u==="\\"){n=!n,f+=u;continue}if(o){l===h+1?(u==="^"||u==="!")&&(a=!0):u==="]"&&!(l===h+2&&a)&&(o=!1),f+=u;continue}else if(u==="["){o=!0,h=l,a=!1,f+=u;continue}if(je(u)&&e.charAt(l)==="("){p.push(f),f="";let d=new D(u,p);p.push(d),l=D.#s(e,d,l,r);continue}if(u==="|"){p.push(f),f="",c.push(p),p=new D(null,i);continue}if(u===")")return f===""&&i.#r.length===0&&(i.#p=!0),p.push(f),f="",i.push(...c,p),l;f+=u}return i.type=null,i.#i=void 0,i.#r=[e.substring(s-1)],l}static fromGlob(e,i={}){let s=new D(null,void 0,i);return D.#s(e,s,0,i),s}toMMPattern(){if(this!==this.#t)return this.#t.toMMPattern();let e=this.toString(),[i,s,r,n]=this.toRegExpSource();if(!(r||this.#i||this.#h.nocase&&!this.#h.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return s;let o=(this.#h.nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${i}$`,o),{_src:i,_glob:e})}get options(){return this.#h}toRegExpSource(e){let i=e??!!this.#h.dot;if(this.#t===this&&this.#a(),!this.type){let a=this.isStart()&&this.isEnd()&&!this.#r.some(f=>typeof f!="string"),l=this.#r.map(f=>{let[u,d,g,w]=typeof f=="string"?D.#S(f,this.#i,a):f.toRegExpSource(e);return this.#i=this.#i||g,this.#n=this.#n||w,u}).join(""),p="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&ws.has(this.#r[0]))){let f=ms,u=i&&f.has(l.charAt(0))||l.startsWith("\\.")&&f.has(l.charAt(2))||l.startsWith("\\.\\.")&&f.has(l.charAt(4)),d=!i&&!e&&f.has(l.charAt(0));p=u?gs:d?Ot:""}let c="";return this.isEnd()&&this.#t.#c&&this.#o?.type==="!"&&(c="(?:$|\\/)"),[p+l+c,at(l),this.#i=!!this.#i,this.#n]}let s=this.type==="*"||this.type==="+",r=this.type==="!"?"(?:(?!(?:":"(?:",n=this.#f(i);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let a=this.toString();return this.#r=[a],this.type=null,this.#i=void 0,[a,at(this.toString()),!1,!1]}let o=!s||e||i||!Ot?"":this.#f(!0);o===n&&(o=""),o&&(n=`(?:${n})(?:${o})*?`);let h="";if(this.type==="!"&&this.#p)h=(this.isStart()&&!i?Ot:"")+De;else{let a=this.type==="!"?"))"+(this.isStart()&&!i&&!e?Ot:"")+Pe+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;h=r+n+a}return[h,at(n),this.#i=!!this.#i,this.#n]}#f(e){return this.#r.map(i=>{if(typeof i=="string")throw new Error("string type in extglob ast??");let[s,r,n,o]=i.toRegExpSource(e);return this.#n=this.#n||o,s}).filter(i=>!(this.isStart()&&this.isEnd())||!!i).join("|")}static#S(e,i,s=!1){let r=!1,n="",o=!1,h=!1;for(let a=0;a<e.length;a++){let l=e.charAt(a);if(r){r=!1,n+=(ys.has(l)?"\\":"")+l;continue}if(l==="*"){if(h)continue;h=!0,n+=s&&/^[*]+$/.test(e)?De:Pe,i=!0;continue}else h=!1;if(l==="\\"){a===e.length-1?n+="\\\\":r=!0;continue}if(l==="["){let[p,c,f,u]=fs(e,a);if(f){n+=p,o=o||c,a+=f-1,i=i||u;continue}}if(l==="?"){n+=le,i=!0;continue}n+=bs(l)}return[n,at(e),!!i,o]}},ri=(t,{windowsPathsNoEscape:e=!1,magicalBraces:i=!1}={})=>i?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&"),R=(t,e,i={})=>(Wt(e),!i.nocomment&&e.charAt(0)==="#"?!1:new Z(e,i).match(t)),vs=/^\*+([^+@!?\*\[\(]*)$/,Ss=t=>e=>!e.startsWith(".")&&e.endsWith(t),xs=t=>e=>e.endsWith(t),Es=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),As=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),ks=/^\*+\.\*+$/,Cs=t=>!t.startsWith(".")&&t.includes("."),Os=t=>t!=="."&&t!==".."&&t.includes("."),Ts=/^\.\*+$/,Fs=t=>t!=="."&&t!==".."&&t.startsWith("."),Rs=/^\*+$/,js=t=>t.length!==0&&!t.startsWith("."),Ps=t=>t.length!==0&&t!=="."&&t!=="..",Ds=/^\?+([^+@!?\*\[\(]*)?$/,$s=([t,e=""])=>{let i=ni([t]);return e?(e=e.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(e)):i},Ms=([t,e=""])=>{let i=oi([t]);return e?(e=e.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(e)):i},Ls=([t,e=""])=>{let i=oi([t]);return e?s=>i(s)&&s.endsWith(e):i},Ws=([t,e=""])=>{let i=ni([t]);return e?s=>i(s)&&s.endsWith(e):i},ni=([t])=>{let e=t.length;return i=>i.length===e&&!i.startsWith(".")},oi=([t])=>{let e=t.length;return i=>i.length===e&&i!=="."&&i!==".."},hi=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",$e={win32:{sep:"\\"},posix:{sep:"/"}},Ns=hi==="win32"?$e.win32.sep:$e.posix.sep;R.sep=Ns;var F=Symbol("globstar **");R.GLOBSTAR=F;var zs="[^/]",_s=zs+"*?",Bs="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Is="(?:(?!(?:\\/|^)\\.).)*?",Us=(t,e={})=>i=>R(i,t,e);R.filter=Us;var $=(t,e={})=>Object.assign({},t,e),Gs=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return R;let e=R;return Object.assign((i,s,r={})=>e(i,s,$(t,r)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,$(t,s))}static defaults(i){return e.defaults($(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,r={}){super(i,s,$(t,r))}static fromGlob(i,s={}){return e.AST.fromGlob(i,$(t,s))}},unescape:(i,s={})=>e.unescape(i,$(t,s)),escape:(i,s={})=>e.escape(i,$(t,s)),filter:(i,s={})=>e.filter(i,$(t,s)),defaults:i=>e.defaults($(t,i)),makeRe:(i,s={})=>e.makeRe(i,$(t,s)),braceExpand:(i,s={})=>e.braceExpand(i,$(t,s)),match:(i,s,r={})=>e.match(i,s,$(t,r)),sep:e.sep,GLOBSTAR:F})};R.defaults=Gs;var ai=(t,e={})=>(Wt(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:os(t,{max:e.braceExpandMax}));R.braceExpand=ai;var Hs=(t,e={})=>new Z(t,e).makeRe();R.makeRe=Hs;var Vs=(t,e,i={})=>{let s=new Z(e,i);return t=t.filter(r=>s.match(r)),s.options.nonull&&!t.length&&t.push(e),t};R.match=Vs;var Me=/[?*]|[+@!]\(.*?\)|\[|\]/,Ys=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Z=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(t,e={}){Wt(t),e=e||{},this.options=e,this.pattern=t,this.platform=e.platform||hi,this.isWindows=this.platform==="win32";let i="allowWindowsEscape";this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||e[i]===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!e.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!e.nonegate,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=e.windowsNoMagicRoot!==void 0?e.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 t of this.set)for(let e of t)if(typeof e!="string")return!0;return!1}debug(...t){}make(){let t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],e.debug&&(this.debug=(...r)=>console.error(...r)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(r=>this.slashSplit(r));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let s=this.globParts.map((r,n,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let h=r[0]===""&&r[1]===""&&(r[2]==="?"||!Me.test(r[2]))&&!Me.test(r[3]),a=/^[a-z]:/i.test(r[0]);if(h)return[...r.slice(0,4),...r.slice(4).map(l=>this.parse(l))];if(a)return[r[0],...r.slice(1).map(l=>this.parse(l))]}return r.map(h=>this.parse(h))});if(this.debug(this.pattern,s),this.set=s.filter(r=>r.indexOf(!1)===-1),this.isWindows)for(let r=0;r<this.set.length;r++){let n=this.set[r];n[0]===""&&n[1]===""&&this.globParts[r][2]==="?"&&typeof n[3]=="string"&&/^[a-z]:$/i.test(n[3])&&(n[2]="?")}this.debug(this.pattern,this.set)}preprocess(t){if(this.options.noglobstar)for(let i=0;i<t.length;i++)for(let s=0;s<t[i].length;s++)t[i][s]==="**"&&(t[i][s]="*");let{optimizationLevel:e=1}=this.options;return e>=2?(t=this.firstPhasePreProcess(t),t=this.secondPhasePreProcess(t)):e>=1?t=this.levelOneOptimize(t):t=this.adjascentGlobstarOptimize(t),t}adjascentGlobstarOptimize(t){return t.map(e=>{let i=-1;for(;(i=e.indexOf("**",i+1))!==-1;){let s=i;for(;e[s+1]==="**";)s++;s!==i&&e.splice(i,s-i)}return e})}levelOneOptimize(t){return t.map(e=>(e=e.reduce((i,s)=>{let r=i[i.length-1];return s==="**"&&r==="**"?i:s===".."&&r&&r!==".."&&r!=="."&&r!=="**"?(i.pop(),i):(i.push(s),i)},[]),e.length===0?[""]:e))}levelTwoFileOptimize(t){Array.isArray(t)||(t=this.slashSplit(t));let e=!1;do{if(e=!1,!this.preserveMultipleSlashes){for(let s=1;s<t.length-1;s++){let r=t[s];s===1&&r===""&&t[0]===""||(r==="."||r==="")&&(e=!0,t.splice(s,1),s--)}t[0]==="."&&t.length===2&&(t[1]==="."||t[1]==="")&&(e=!0,t.pop())}let i=0;for(;(i=t.indexOf("..",i+1))!==-1;){let s=t[i-1];s&&s!=="."&&s!==".."&&s!=="**"&&(e=!0,t.splice(i-1,2),i-=2)}}while(e);return t.length===0?[""]:t}firstPhasePreProcess(t){let e=!1;do{e=!1;for(let i of t){let s=-1;for(;(s=i.indexOf("**",s+1))!==-1;){let n=s;for(;i[n+1]==="**";)n++;n>s&&i.splice(s+1,n-s);let o=i[s+1],h=i[s+2],a=i[s+3];if(o!==".."||!h||h==="."||h===".."||!a||a==="."||a==="..")continue;e=!0,i.splice(s,1);let l=i.slice(0);l[s]="**",t.push(l),s--}if(!this.preserveMultipleSlashes){for(let n=1;n<i.length-1;n++){let o=i[n];n===1&&o===""&&i[0]===""||(o==="."||o==="")&&(e=!0,i.splice(n,1),n--)}i[0]==="."&&i.length===2&&(i[1]==="."||i[1]==="")&&(e=!0,i.pop())}let r=0;for(;(r=i.indexOf("..",r+1))!==-1;){let n=i[r-1];if(n&&n!=="."&&n!==".."&&n!=="**"){e=!0;let o=r===1&&i[r+1]==="**"?["."]:[];i.splice(r-1,2,...o),i.length===0&&i.push(""),r-=2}}}}while(e);return t}secondPhasePreProcess(t){for(let e=0;e<t.length-1;e++)for(let i=e+1;i<t.length;i++){let s=this.partsMatch(t[e],t[i],!this.preserveMultipleSlashes);if(s){t[e]=[],t[i]=s;break}}return t.filter(e=>e.length)}partsMatch(t,e,i=!1){let s=0,r=0,n=[],o="";for(;s<t.length&&r<e.length;)if(t[s]===e[r])n.push(o==="b"?e[r]:t[s]),s++,r++;else if(i&&t[s]==="**"&&e[r]===t[s+1])n.push(t[s]),s++;else if(i&&e[r]==="**"&&t[s]===e[r+1])n.push(e[r]),r++;else if(t[s]==="*"&&e[r]&&(this.options.dot||!e[r].startsWith("."))&&e[r]!=="**"){if(o==="b")return!1;o="a",n.push(t[s]),s++,r++}else if(e[r]==="*"&&t[s]&&(this.options.dot||!t[s].startsWith("."))&&t[s]!=="**"){if(o==="a")return!1;o="b",n.push(e[r]),s++,r++}else return!1;return t.length===e.length&&n}parseNegate(){if(this.nonegate)return;let t=this.pattern,e=!1,i=0;for(let s=0;s<t.length&&t.charAt(s)==="!";s++)e=!e,i++;i&&(this.pattern=t.slice(i)),this.negate=e}matchOne(t,e,i=!1){let s=this.options;if(this.isWindows){let d=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),g=!d&&t[0]===""&&t[1]===""&&t[2]==="?"&&/^[a-z]:$/i.test(t[3]),w=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),m=!w&&e[0]===""&&e[1]===""&&e[2]==="?"&&typeof e[3]=="string"&&/^[a-z]:$/i.test(e[3]),y=g?3:d?0:void 0,b=m?3:w?0:void 0;if(typeof y=="number"&&typeof b=="number"){let[v,S]=[t[y],e[b]];v.toLowerCase()===S.toLowerCase()&&(e[b]=v,b>y?e=e.slice(b):y>b&&(t=t.slice(y)))}}let{optimizationLevel:r=1}=this.options;r>=2&&(t=this.levelTwoFileOptimize(t)),this.debug("matchOne",this,{file:t,pattern:e}),this.debug("matchOne",t.length,e.length);for(var n=0,o=0,h=t.length,a=e.length;n<h&&o<a;n++,o++){this.debug("matchOne loop");var l=e[o],p=t[n];if(this.debug(e,l,p),l===!1)return!1;if(l===F){this.debug("GLOBSTAR",[e,l,p]);var c=n,f=o+1;if(f===a){for(this.debug("** at the end");n<h;n++)if(t[n]==="."||t[n]===".."||!s.dot&&t[n].charAt(0)===".")return!1;return!0}for(;c<h;){var u=t[c];if(this.debug(`
8
8
  globstar while`,t,c,e,f,u),this.matchOne(t.slice(c),e.slice(f),i))return this.debug("globstar found match!",c,h,u),!0;if(u==="."||u===".."||!s.dot&&u.charAt(0)==="."){this.debug("dot detected!",t,c,e,f);break}this.debug("globstar swallow a segment, and continue"),c++}return!!(i&&(this.debug(`
9
9
  >>> no match, partial?`,t,c,e,f),c===h))}let d;if(typeof l=="string"?(d=p===l,this.debug("string match",l,p,d)):(d=l.test(p),this.debug("pattern match",l,p,d)),!d)return!1}if(n===h&&o===a)return!0;if(n===h)return i;if(o===a)return n===h-1&&t[n]==="";throw new Error("wtf?")}braceExpand(){return ai(this.pattern,this.options)}parse(t){Wt(t);let e=this.options;if(t==="**")return F;if(t==="")return"";let i,s=null;(i=t.match(Rs))?s=e.dot?Ps:js:(i=t.match(vs))?s=(e.nocase?e.dot?As:Es:e.dot?xs:Ss)(i[1]):(i=t.match(Ds))?s=(e.nocase?e.dot?Ms:$s:e.dot?Ls:Ws)(i):(i=t.match(ks))?s=e.dot?Os:Cs:(i=t.match(Ts))&&(s=Fs);let r=si.fromGlob(t,this.options).toMMPattern();return s&&typeof r=="object"&&Reflect.defineProperty(r,"test",{value:s}),r}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let t=this.set;if(!t.length)return this.regexp=!1,this.regexp;let e=this.options,i=e.noglobstar?_s:e.dot?Bs:Is,s=new Set(e.nocase?["i"]:[]),r=t.map(h=>{let a=h.map(p=>{if(p instanceof RegExp)for(let c of p.flags.split(""))s.add(c);return typeof p=="string"?Ys(p):p===F?F:p._src});a.forEach((p,c)=>{let f=a[c+1],u=a[c-1];p!==F||u===F||(u===void 0?f!==void 0&&f!==F?a[c+1]="(?:\\/|"+i+"\\/)?"+f:a[c]=i:f===void 0?a[c-1]=u+"(?:\\/|\\/"+i+")?":f!==F&&(a[c-1]=u+"(?:\\/|\\/"+i+"\\/)"+f,a[c+1]=F))});let l=a.filter(p=>p!==F);if(this.partial&&l.length>=1){let p=[];for(let c=1;c<=l.length;c++)p.push(l.slice(0,c).join("/"));return"(?:"+p.join("|")+")"}return l.join("/")}).join("|"),[n,o]=t.length>1?["(?:",")"]:["",""];r="^"+n+r+o+"$",this.partial&&(r="^(?:\\/|"+n+r.slice(1,-1)+o+")$"),this.negate&&(r="^(?!"+r+").+$");try{this.regexp=new RegExp(r,[...s].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(t){return this.preserveMultipleSlashes?t.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(t)?["",...t.split(/\/+/)]:t.split(/\/+/)}match(t,e=this.partial){if(this.debug("match",t,this.pattern),this.comment)return!1;if(this.empty)return t==="";if(t==="/"&&e)return!0;let i=this.options;this.isWindows&&(t=t.split("\\").join("/"));let s=this.slashSplit(t);this.debug(this.pattern,"split",s);let r=this.set;this.debug(this.pattern,"set",r);let n=s[s.length-1];if(!n)for(let o=s.length-2;!n&&o>=0;o--)n=s[o];for(let o=0;o<r.length;o++){let h=r[o],a=s;if(i.matchBase&&h.length===1&&(a=[n]),this.matchOne(a,h,e))return i.flipNegate?!0:!this.negate}return i.flipNegate?!1:this.negate}static defaults(t){return R.defaults(t).Minimatch}};R.AST=si;R.Minimatch=Z;R.escape=ri;R.unescape=at;var qs=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,li=new Set,oe=typeof process=="object"&&process?process:{},ci=(t,e,i,s)=>{typeof oe.emitWarning=="function"?oe.emitWarning(t,e,i,s):console.error(`[${i}] ${e}: ${t}`)},Nt=globalThis.AbortController,Le=globalThis.AbortSignal;if(typeof Nt>"u"){Le=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(i,s){this._onabort.push(s)}},Nt=class{constructor(){e()}signal=new Le;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=!0;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i)}}};let t=oe.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,ci("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var Ks=t=>!li.has(t),K=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),pi=t=>K(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Mt:null:null,Mt=class extends Array{constructor(t){super(t),this.fill(0)}},Zs=class wt{heap;length;static#t=!1;static create(e){let i=pi(e);if(!i)return[];wt.#t=!0;let s=new wt(e,i);return wt.#t=!1,s}constructor(e,i){if(!wt.#t)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Bt=class ui{#t;#i;#n;#r;#o;#v;#w;#c;get perf(){return this.#c}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#h;#u;#p;#a;#s;#f;#S;#b;#d;#T;#g;#A;#k;#m;#y;#x;#C;#e;#$;static unsafeExposeInternals(e){return{starts:e.#k,ttls:e.#m,autopurgeTimers:e.#y,sizes:e.#A,keyMap:e.#p,keyList:e.#a,valList:e.#s,next:e.#f,prev:e.#S,get head(){return e.#b},get tail(){return e.#d},free:e.#T,isBackgroundFetch:i=>e.#l(i),backgroundFetch:(i,s,r,n)=>e.#I(i,s,r,n),moveToTail:i=>e.#L(i),indexes:i=>e.#R(i),rindexes:i=>e.#j(i),isStale:i=>e.#E(i)}}get max(){return this.#t}get maxSize(){return this.#i}get calculatedSize(){return this.#u}get size(){return this.#h}get fetchMethod(){return this.#v}get memoMethod(){return this.#w}get dispose(){return this.#n}get onInsert(){return this.#r}get disposeAfter(){return this.#o}constructor(e){let{max:i=0,ttl:s,ttlResolution:r=1,ttlAutopurge:n,updateAgeOnGet:o,updateAgeOnHas:h,allowStale:a,dispose:l,onInsert:p,disposeAfter:c,noDisposeOnSet:f,noUpdateTTL:u,maxSize:d=0,maxEntrySize:g=0,sizeCalculation:w,fetchMethod:m,memoMethod:y,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:S,allowStaleOnFetchAbort:Y,ignoreFetchAbort:it,perf:st}=e;if(st!==void 0&&typeof st?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(this.#c=st??qs,i!==0&&!K(i))throw new TypeError("max option must be a nonnegative integer");let rt=i?pi(i):Array;if(!rt)throw new Error("invalid max value: "+i);if(this.#t=i,this.#i=d,this.maxEntrySize=g||this.#i,this.sizeCalculation=w,this.sizeCalculation){if(!this.#i&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(y!==void 0&&typeof y!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#w=y,m!==void 0&&typeof m!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#v=m,this.#C=!!m,this.#p=new Map,this.#a=new Array(i).fill(void 0),this.#s=new Array(i).fill(void 0),this.#f=new rt(i),this.#S=new rt(i),this.#b=0,this.#d=0,this.#T=Zs.create(i),this.#h=0,this.#u=0,typeof l=="function"&&(this.#n=l),typeof p=="function"&&(this.#r=p),typeof c=="function"?(this.#o=c,this.#g=[]):(this.#o=void 0,this.#g=void 0),this.#x=!!this.#n,this.#$=!!this.#r,this.#e=!!this.#o,this.noDisposeOnSet=!!f,this.noUpdateTTL=!!u,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!S,this.allowStaleOnFetchAbort=!!Y,this.ignoreFetchAbort=!!it,this.maxEntrySize!==0){if(this.#i!==0&&!K(this.#i))throw new TypeError("maxSize must be a positive integer if specified");if(!K(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#G()}if(this.allowStale=!!a,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!h,this.ttlResolution=K(r)||r===0?r:1,this.ttlAutopurge=!!n,this.ttl=s||0,this.ttl){if(!K(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(this.#t===0&&this.ttl===0&&this.#i===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#t&&!this.#i){let Jt="LRU_CACHE_UNBOUNDED";Ks(Jt)&&(li.add(Jt),ci("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",Jt,ui))}}getRemainingTTL(e){return this.#p.has(e)?1/0:0}#P(){let e=new Mt(this.#t),i=new Mt(this.#t);this.#m=e,this.#k=i;let s=this.ttlAutopurge?new Array(this.#t):void 0;this.#y=s,this.#N=(o,h,a=this.#c.now())=>{if(i[o]=h!==0?a:0,e[o]=h,s?.[o]&&(clearTimeout(s[o]),s[o]=void 0),h!==0&&s){let l=setTimeout(()=>{this.#E(o)&&this.#F(this.#a[o],"expire")},h+1);l.unref&&l.unref(),s[o]=l}},this.#O=o=>{i[o]=e[o]!==0?this.#c.now():0},this.#D=(o,h)=>{if(e[h]){let a=e[h],l=i[h];if(!a||!l)return;o.ttl=a,o.start=l,o.now=r||n();let p=o.now-l;o.remainingTTL=a-p}};let r=0,n=()=>{let o=this.#c.now();if(this.ttlResolution>0){r=o;let h=setTimeout(()=>r=0,this.ttlResolution);h.unref&&h.unref()}return o};this.getRemainingTTL=o=>{let h=this.#p.get(o);if(h===void 0)return 0;let a=e[h],l=i[h];if(!a||!l)return 1/0;let p=(r||n())-l;return a-p},this.#E=o=>{let h=i[o],a=e[o];return!!a&&!!h&&(r||n())-h>a}}#O=()=>{};#D=()=>{};#N=()=>{};#E=()=>!1;#G(){let e=new Mt(this.#t);this.#u=0,this.#A=e,this.#W=i=>{this.#u-=e[i],e[i]=0},this.#z=(i,s,r,n)=>{if(this.#l(s))return 0;if(!K(r))if(n){if(typeof n!="function")throw new TypeError("sizeCalculation must be a function");if(r=n(s,i),!K(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return r},this.#M=(i,s,r)=>{if(e[i]=s,this.#i){let n=this.#i-e[i];for(;this.#u>n;)this.#B(!0)}this.#u+=e[i],r&&(r.entrySize=s,r.totalCalculatedSize=this.#u)}}#W=e=>{};#M=(e,i,s)=>{};#z=(e,i,s,r)=>{if(s||r)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#R({allowStale:e=this.allowStale}={}){if(this.#h)for(let i=this.#d;!(!this.#_(i)||((e||!this.#E(i))&&(yield i),i===this.#b));)i=this.#S[i]}*#j({allowStale:e=this.allowStale}={}){if(this.#h)for(let i=this.#b;!(!this.#_(i)||((e||!this.#E(i))&&(yield i),i===this.#d));)i=this.#f[i]}#_(e){return e!==void 0&&this.#p.get(this.#a[e])===e}*entries(){for(let e of this.#R())this.#s[e]!==void 0&&this.#a[e]!==void 0&&!this.#l(this.#s[e])&&(yield[this.#a[e],this.#s[e]])}*rentries(){for(let e of this.#j())this.#s[e]!==void 0&&this.#a[e]!==void 0&&!this.#l(this.#s[e])&&(yield[this.#a[e],this.#s[e]])}*keys(){for(let e of this.#R()){let i=this.#a[e];i!==void 0&&!this.#l(this.#s[e])&&(yield i)}}*rkeys(){for(let e of this.#j()){let i=this.#a[e];i!==void 0&&!this.#l(this.#s[e])&&(yield i)}}*values(){for(let e of this.#R())this.#s[e]!==void 0&&!this.#l(this.#s[e])&&(yield this.#s[e])}*rvalues(){for(let e of this.#j())this.#s[e]!==void 0&&!this.#l(this.#s[e])&&(yield this.#s[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,i={}){for(let s of this.#R()){let r=this.#s[s],n=this.#l(r)?r.__staleWhileFetching:r;if(n!==void 0&&e(n,this.#a[s],this))return this.get(this.#a[s],i)}}forEach(e,i=this){for(let s of this.#R()){let r=this.#s[s],n=this.#l(r)?r.__staleWhileFetching:r;n!==void 0&&e.call(i,n,this.#a[s],this)}}rforEach(e,i=this){for(let s of this.#j()){let r=this.#s[s],n=this.#l(r)?r.__staleWhileFetching:r;n!==void 0&&e.call(i,n,this.#a[s],this)}}purgeStale(){let e=!1;for(let i of this.#j({allowStale:!0}))this.#E(i)&&(this.#F(this.#a[i],"expire"),e=!0);return e}info(e){let i=this.#p.get(e);if(i===void 0)return;let s=this.#s[i],r=this.#l(s)?s.__staleWhileFetching:s;if(r===void 0)return;let n={value:r};if(this.#m&&this.#k){let o=this.#m[i],h=this.#k[i];if(o&&h){let a=o-(this.#c.now()-h);n.ttl=a,n.start=Date.now()}}return this.#A&&(n.size=this.#A[i]),n}dump(){let e=[];for(let i of this.#R({allowStale:!0})){let s=this.#a[i],r=this.#s[i],n=this.#l(r)?r.__staleWhileFetching:r;if(n===void 0||s===void 0)continue;let o={value:n};if(this.#m&&this.#k){o.ttl=this.#m[i];let h=this.#c.now()-this.#k[i];o.start=Math.floor(Date.now()-h)}this.#A&&(o.size=this.#A[i]),e.unshift([s,o])}return e}load(e){this.clear();for(let[i,s]of e){if(s.start){let r=Date.now()-s.start;s.start=this.#c.now()-r}this.set(i,s.value,s)}}set(e,i,s={}){if(i===void 0)return this.delete(e),this;let{ttl:r=this.ttl,start:n,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:h=this.sizeCalculation,status:a}=s,{noUpdateTTL:l=this.noUpdateTTL}=s,p=this.#z(e,i,s.size||0,h);if(this.maxEntrySize&&p>this.maxEntrySize)return a&&(a.set="miss",a.maxEntrySizeExceeded=!0),this.#F(e,"set"),this;let c=this.#h===0?void 0:this.#p.get(e);if(c===void 0)c=this.#h===0?this.#d:this.#T.length!==0?this.#T.pop():this.#h===this.#t?this.#B(!1):this.#h,this.#a[c]=e,this.#s[c]=i,this.#p.set(e,c),this.#f[this.#d]=c,this.#S[c]=this.#d,this.#d=c,this.#h++,this.#M(c,p,a),a&&(a.set="add"),l=!1,this.#$&&this.#r?.(i,e,"add");else{this.#L(c);let f=this.#s[c];if(i!==f){if(this.#C&&this.#l(f)){f.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:u}=f;u!==void 0&&!o&&(this.#x&&this.#n?.(u,e,"set"),this.#e&&this.#g?.push([u,e,"set"]))}else o||(this.#x&&this.#n?.(f,e,"set"),this.#e&&this.#g?.push([f,e,"set"]));if(this.#W(c),this.#M(c,p,a),this.#s[c]=i,a){a.set="replace";let u=f&&this.#l(f)?f.__staleWhileFetching:f;u!==void 0&&(a.oldValue=u)}}else a&&(a.set="update");this.#$&&this.onInsert?.(i,e,i===f?"update":"replace")}if(r!==0&&!this.#m&&this.#P(),this.#m&&(l||this.#N(c,r,n),a&&this.#D(a,c)),!o&&this.#e&&this.#g){let f=this.#g,u;for(;u=f?.shift();)this.#o?.(...u)}return this}pop(){try{for(;this.#h;){let e=this.#s[this.#b];if(this.#B(!0),this.#l(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#e&&this.#g){let e=this.#g,i;for(;i=e?.shift();)this.#o?.(...i)}}}#B(e){let i=this.#b,s=this.#a[i],r=this.#s[i];return this.#C&&this.#l(r)?r.__abortController.abort(new Error("evicted")):(this.#x||this.#e)&&(this.#x&&this.#n?.(r,s,"evict"),this.#e&&this.#g?.push([r,s,"evict"])),this.#W(i),this.#y?.[i]&&(clearTimeout(this.#y[i]),this.#y[i]=void 0),e&&(this.#a[i]=void 0,this.#s[i]=void 0,this.#T.push(i)),this.#h===1?(this.#b=this.#d=0,this.#T.length=0):this.#b=this.#f[i],this.#p.delete(s),this.#h--,i}has(e,i={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:r}=i,n=this.#p.get(e);if(n!==void 0){let o=this.#s[n];if(this.#l(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#E(n))r&&(r.has="stale",this.#D(r,n));else return s&&this.#O(n),r&&(r.has="hit",this.#D(r,n)),!0}else r&&(r.has="miss");return!1}peek(e,i={}){let{allowStale:s=this.allowStale}=i,r=this.#p.get(e);if(r===void 0||!s&&this.#E(r))return;let n=this.#s[r];return this.#l(n)?n.__staleWhileFetching:n}#I(e,i,s,r){let n=i===void 0?void 0:this.#s[i];if(this.#l(n))return n;let o=new Nt,{signal:h}=s;h?.addEventListener("abort",()=>o.abort(h.reason),{signal:o.signal});let a={signal:o.signal,options:s,context:r},l=(g,w=!1)=>{let{aborted:m}=o.signal,y=s.ignoreFetchAbort&&g!==void 0,b=s.ignoreFetchAbort||!!(s.allowStaleOnFetchAbort&&g!==void 0);if(s.status&&(m&&!w?(s.status.fetchAborted=!0,s.status.fetchError=o.signal.reason,y&&(s.status.fetchAbortIgnored=!0)):s.status.fetchResolved=!0),m&&!y&&!w)return c(o.signal.reason,b);let v=u,S=this.#s[i];return(S===u||y&&w&&S===void 0)&&(g===void 0?v.__staleWhileFetching!==void 0?this.#s[i]=v.__staleWhileFetching:this.#F(e,"fetch"):(s.status&&(s.status.fetchUpdated=!0),this.set(e,g,a.options))),g},p=g=>(s.status&&(s.status.fetchRejected=!0,s.status.fetchError=g),c(g,!1)),c=(g,w)=>{let{aborted:m}=o.signal,y=m&&s.allowStaleOnFetchAbort,b=y||s.allowStaleOnFetchRejection,v=b||s.noDeleteOnFetchRejection,S=u;if(this.#s[i]===u&&(!v||!w&&S.__staleWhileFetching===void 0?this.#F(e,"fetch"):y||(this.#s[i]=S.__staleWhileFetching)),b)return s.status&&S.__staleWhileFetching!==void 0&&(s.status.returnedStale=!0),S.__staleWhileFetching;if(S.__returned===S)throw g},f=(g,w)=>{let m=this.#v?.(e,n,a);m&&m instanceof Promise&&m.then(y=>g(y===void 0?void 0:y),w),o.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(g(void 0),s.allowStaleOnFetchAbort&&(g=y=>l(y,!0)))})};s.status&&(s.status.fetchDispatched=!0);let u=new Promise(f).then(l,p),d=Object.assign(u,{__abortController:o,__staleWhileFetching:n,__returned:void 0});return i===void 0?(this.set(e,d,{...a.options,status:void 0}),i=this.#p.get(e)):this.#s[i]=d,d}#l(e){if(!this.#C)return!1;let i=e;return!!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof Nt}async fetch(e,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:h=this.noDisposeOnSet,size:a=0,sizeCalculation:l=this.sizeCalculation,noUpdateTTL:p=this.noUpdateTTL,noDeleteOnFetchRejection:c=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:u=this.ignoreFetchAbort,allowStaleOnFetchAbort:d=this.allowStaleOnFetchAbort,context:g,forceRefresh:w=!1,status:m,signal:y}=i;if(!this.#C)return m&&(m.fetch="get"),this.get(e,{allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:n,status:m});let b={allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:n,ttl:o,noDisposeOnSet:h,size:a,sizeCalculation:l,noUpdateTTL:p,noDeleteOnFetchRejection:c,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:d,ignoreFetchAbort:u,status:m,signal:y},v=this.#p.get(e);if(v===void 0){m&&(m.fetch="miss");let S=this.#I(e,v,b,g);return S.__returned=S}else{let S=this.#s[v];if(this.#l(S)){let rt=s&&S.__staleWhileFetching!==void 0;return m&&(m.fetch="inflight",rt&&(m.returnedStale=!0)),rt?S.__staleWhileFetching:S.__returned=S}let Y=this.#E(v);if(!w&&!Y)return m&&(m.fetch="hit"),this.#L(v),r&&this.#O(v),m&&this.#D(m,v),S;let it=this.#I(e,v,b,g),st=it.__staleWhileFetching!==void 0&&s;return m&&(m.fetch=Y?"stale":"refresh",st&&Y&&(m.returnedStale=!0)),st?it.__staleWhileFetching:it.__returned=it}}async forceFetch(e,i={}){let s=await this.fetch(e,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(e,i={}){let s=this.#w;if(!s)throw new Error("no memoMethod provided to constructor");let{context:r,forceRefresh:n,...o}=i,h=this.get(e,o);if(!n&&h!==void 0)return h;let a=s(e,h,{options:o,context:r});return this.set(e,a,o),a}get(e,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,status:o}=i,h=this.#p.get(e);if(h!==void 0){let a=this.#s[h],l=this.#l(a);return o&&this.#D(o,h),this.#E(h)?(o&&(o.get="stale"),l?(o&&s&&a.__staleWhileFetching!==void 0&&(o.returnedStale=!0),s?a.__staleWhileFetching:void 0):(n||this.#F(e,"expire"),o&&s&&(o.returnedStale=!0),s?a:void 0)):(o&&(o.get="hit"),l?a.__staleWhileFetching:(this.#L(h),r&&this.#O(h),a))}else o&&(o.get="miss")}#U(e,i){this.#S[i]=e,this.#f[e]=i}#L(e){e!==this.#d&&(e===this.#b?this.#b=this.#f[e]:this.#U(this.#S[e],this.#f[e]),this.#U(this.#d,e),this.#d=e)}delete(e){return this.#F(e,"delete")}#F(e,i){let s=!1;if(this.#h!==0){let r=this.#p.get(e);if(r!==void 0)if(this.#y?.[r]&&(clearTimeout(this.#y?.[r]),this.#y[r]=void 0),s=!0,this.#h===1)this.#H(i);else{this.#W(r);let n=this.#s[r];if(this.#l(n)?n.__abortController.abort(new Error("deleted")):(this.#x||this.#e)&&(this.#x&&this.#n?.(n,e,i),this.#e&&this.#g?.push([n,e,i])),this.#p.delete(e),this.#a[r]=void 0,this.#s[r]=void 0,r===this.#d)this.#d=this.#S[r];else if(r===this.#b)this.#b=this.#f[r];else{let o=this.#S[r];this.#f[o]=this.#f[r];let h=this.#f[r];this.#S[h]=this.#S[r]}this.#h--,this.#T.push(r)}}if(this.#e&&this.#g?.length){let r=this.#g,n;for(;n=r?.shift();)this.#o?.(...n)}return s}clear(){return this.#H("delete")}#H(e){for(let i of this.#j({allowStale:!0})){let s=this.#s[i];if(this.#l(s))s.__abortController.abort(new Error("deleted"));else{let r=this.#a[i];this.#x&&this.#n?.(s,r,e),this.#e&&this.#g?.push([s,r,e])}}if(this.#p.clear(),this.#s.fill(void 0),this.#a.fill(void 0),this.#m&&this.#k){this.#m.fill(0),this.#k.fill(0);for(let i of this.#y??[])i!==void 0&&clearTimeout(i);this.#y?.fill(void 0)}if(this.#A&&this.#A.fill(0),this.#b=0,this.#d=0,this.#T.length=0,this.#u=0,this.#h=0,this.#e&&this.#g){let i=this.#g,s;for(;s=i?.shift();)this.#o?.(...s)}}},We=typeof process=="object"&&process?process:{stdout:null,stderr:null},pr=t=>!!t&&typeof t=="object"&&(t instanceof zt||t instanceof fi||ur(t)||fr(t)),ur=t=>!!t&&typeof t=="object"&&t instanceof ce&&typeof t.pipe=="function"&&t.pipe!==fi.Writable.prototype.pipe,fr=t=>!!t&&typeof t=="object"&&t instanceof ce&&typeof t.write=="function"&&typeof t.end=="function",G=Symbol("EOF"),H=Symbol("maybeEmitEnd"),q=Symbol("emittedEnd"),Tt=Symbol("emittingEnd"),pt=Symbol("emittedError"),Ft=Symbol("closed"),Ne=Symbol("read"),Rt=Symbol("flush"),ze=Symbol("flushChunk"),_=Symbol("encoding"),ot=Symbol("decoder"),A=Symbol("flowing"),ut=Symbol("paused"),ht=Symbol("resume"),k=Symbol("buffer"),T=Symbol("pipes"),C=Symbol("bufferLength"),Qt=Symbol("bufferPush"),jt=Symbol("bufferShift"),O=Symbol("objectMode"),E=Symbol("destroyed"),te=Symbol("error"),ee=Symbol("emitData"),_e=Symbol("emitEnd"),ie=Symbol("emitEnd2"),I=Symbol("async"),se=Symbol("abort"),Pt=Symbol("aborted"),ft=Symbol("signal"),Q=Symbol("dataListeners"),P=Symbol("discarded"),dt=t=>Promise.resolve().then(t),dr=t=>t(),gr=t=>t==="end"||t==="finish"||t==="prefinish",mr=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,wr=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),di=class{src;dest;opts;ondrain;constructor(t,e,i){this.src=t,this.dest=e,this.opts=i,this.ondrain=()=>t[ht](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},yr=class extends di{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,e,i){super(t,e,i),this.proxyErrors=s=>e.emit("error",s),t.on("error",this.proxyErrors)}},br=t=>!!t.objectMode,vr=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",zt=class extends ce{[A]=!1;[ut]=!1;[T]=[];[k]=[];[O];[_];[I];[ot];[G]=!1;[q]=!1;[Tt]=!1;[Ft]=!1;[pt]=null;[C]=0;[E]=!1;[ft];[Pt]=!1;[Q]=0;[P]=!1;writable=!0;readable=!0;constructor(...t){let e=t[0]||{};if(super(),e.objectMode&&typeof e.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");br(e)?(this[O]=!0,this[_]=null):vr(e)?(this[_]=e.encoding,this[O]=!1):(this[O]=!1,this[_]=null),this[I]=!!e.async,this[ot]=this[_]?new cr(this[_]):null,e&&e.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[k]}),e&&e.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[T]});let{signal:i}=e;i&&(this[ft]=i,i.aborted?this[se]():i.addEventListener("abort",()=>this[se]()))}get bufferLength(){return this[C]}get encoding(){return this[_]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[O]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[I]}set async(t){this[I]=this[I]||!!t}[se](){this[Pt]=!0,this.emit("abort",this[ft]?.reason),this.destroy(this[ft]?.reason)}get aborted(){return this[Pt]}set aborted(t){}write(t,e,i){if(this[Pt])return!1;if(this[G])throw new Error("write after end");if(this[E])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof e=="function"&&(i=e,e="utf8"),e||(e="utf8");let s=this[I]?dt:dr;if(!this[O]&&!Buffer.isBuffer(t)){if(wr(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(mr(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[O]?(this[A]&&this[C]!==0&&this[Rt](!0),this[A]?this.emit("data",t):this[Qt](t),this[C]!==0&&this.emit("readable"),i&&s(i),this[A]):t.length?(typeof t=="string"&&!(e===this[_]&&!this[ot]?.lastNeed)&&(t=Buffer.from(t,e)),Buffer.isBuffer(t)&&this[_]&&(t=this[ot].write(t)),this[A]&&this[C]!==0&&this[Rt](!0),this[A]?this.emit("data",t):this[Qt](t),this[C]!==0&&this.emit("readable"),i&&s(i),this[A]):(this[C]!==0&&this.emit("readable"),i&&s(i),this[A])}read(t){if(this[E])return null;if(this[P]=!1,this[C]===0||t===0||t&&t>this[C])return this[H](),null;this[O]&&(t=null),this[k].length>1&&!this[O]&&(this[k]=[this[_]?this[k].join(""):Buffer.concat(this[k],this[C])]);let e=this[Ne](t||null,this[k][0]);return this[H](),e}[Ne](t,e){if(this[O])this[jt]();else{let i=e;t===i.length||t===null?this[jt]():typeof i=="string"?(this[k][0]=i.slice(t),e=i.slice(0,t),this[C]-=t):(this[k][0]=i.subarray(t),e=i.subarray(0,t),this[C]-=t)}return this.emit("data",e),!this[k].length&&!this[G]&&this.emit("drain"),e}end(t,e,i){return typeof t=="function"&&(i=t,t=void 0),typeof e=="function"&&(i=e,e="utf8"),t!==void 0&&this.write(t,e),i&&this.once("end",i),this[G]=!0,this.writable=!1,(this[A]||!this[ut])&&this[H](),this}[ht](){this[E]||(!this[Q]&&!this[T].length&&(this[P]=!0),this[ut]=!1,this[A]=!0,this.emit("resume"),this[k].length?this[Rt]():this[G]?this[H]():this.emit("drain"))}resume(){return this[ht]()}pause(){this[A]=!1,this[ut]=!0,this[P]=!1}get destroyed(){return this[E]}get flowing(){return this[A]}get paused(){return this[ut]}[Qt](t){this[O]?this[C]+=1:this[C]+=t.length,this[k].push(t)}[jt](){return this[O]?this[C]-=1:this[C]-=this[k][0].length,this[k].shift()}[Rt](t=!1){do;while(this[ze](this[jt]())&&this[k].length);!t&&!this[k].length&&!this[G]&&this.emit("drain")}[ze](t){return this.emit("data",t),this[A]}pipe(t,e){if(this[E])return t;this[P]=!1;let i=this[q];return e=e||{},t===We.stdout||t===We.stderr?e.end=!1:e.end=e.end!==!1,e.proxyErrors=!!e.proxyErrors,i?e.end&&t.end():(this[T].push(e.proxyErrors?new yr(this,t,e):new di(this,t,e)),this[I]?dt(()=>this[ht]()):this[ht]()),t}unpipe(t){let e=this[T].find(i=>i.dest===t);e&&(this[T].length===1?(this[A]&&this[Q]===0&&(this[A]=!1),this[T]=[]):this[T].splice(this[T].indexOf(e),1),e.unpipe())}addListener(t,e){return this.on(t,e)}on(t,e){let i=super.on(t,e);if(t==="data")this[P]=!1,this[Q]++,!this[T].length&&!this[A]&&this[ht]();else if(t==="readable"&&this[C]!==0)super.emit("readable");else if(gr(t)&&this[q])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[pt]){let s=e;this[I]?dt(()=>s.call(this,this[pt])):s.call(this,this[pt])}return i}removeListener(t,e){return this.off(t,e)}off(t,e){let i=super.off(t,e);return t==="data"&&(this[Q]=this.listeners("data").length,this[Q]===0&&!this[P]&&!this[T].length&&(this[A]=!1)),i}removeAllListeners(t){let e=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[Q]=0,!this[P]&&!this[T].length&&(this[A]=!1)),e}get emittedEnd(){return this[q]}[H](){!this[Tt]&&!this[q]&&!this[E]&&this[k].length===0&&this[G]&&(this[Tt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Ft]&&this.emit("close"),this[Tt]=!1)}emit(t,...e){let i=e[0];if(t!=="error"&&t!=="close"&&t!==E&&this[E])return!1;if(t==="data")return!this[O]&&!i?!1:this[I]?(dt(()=>this[ee](i)),!0):this[ee](i);if(t==="end")return this[_e]();if(t==="close"){if(this[Ft]=!0,!this[q]&&!this[E])return!1;let r=super.emit("close");return this.removeAllListeners("close"),r}else if(t==="error"){this[pt]=i,super.emit(te,i);let r=!this[ft]||this.listeners("error").length?super.emit("error",i):!1;return this[H](),r}else if(t==="resume"){let r=super.emit("resume");return this[H](),r}else if(t==="finish"||t==="prefinish"){let r=super.emit(t);return this.removeAllListeners(t),r}let s=super.emit(t,...e);return this[H](),s}[ee](t){for(let i of this[T])i.dest.write(t)===!1&&this.pause();let e=this[P]?!1:super.emit("data",t);return this[H](),e}[_e](){return this[q]?!1:(this[q]=!0,this.readable=!1,this[I]?(dt(()=>this[ie]()),!0):this[ie]())}[ie](){if(this[ot]){let e=this[ot].end();if(e){for(let i of this[T])i.dest.write(e);this[P]||super.emit("data",e)}}for(let e of this[T])e.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[O]||(t.dataLength=0);let e=this.promise();return this.on("data",i=>{t.push(i),this[O]||(t.dataLength+=i.length)}),await e,t}async concat(){if(this[O])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[_]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,e)=>{this.on(E,()=>e(new Error("stream destroyed"))),this.on("error",i=>e(i)),this.on("end",()=>t())})}[Symbol.asyncIterator](){this[P]=!1;let t=!1,e=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return e();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[G])return e();let s,r,n=l=>{this.off("data",o),this.off("end",h),this.off(E,a),e(),r(l)},o=l=>{this.off("error",n),this.off("end",h),this.off(E,a),this.pause(),s({value:l,done:!!this[G]})},h=()=>{this.off("error",n),this.off("data",o),this.off(E,a),e(),s({done:!0,value:void 0})},a=()=>n(new Error("stream destroyed"));return new Promise((l,p)=>{r=p,s=l,this.once(E,a),this.once("error",n),this.once("end",h),this.once("data",o)})},throw:e,return:e,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[P]=!1;let t=!1,e=()=>(this.pause(),this.off(te,e),this.off(E,e),this.off("end",e),t=!0,{done:!0,value:void 0}),i=()=>{if(t)return e();let s=this.read();return s===null?e():{done:!1,value:s}};return this.once("end",e),this.once(te,e),this.once(E,e),{next:i,throw:e,return:e,[Symbol.iterator](){return this}}}destroy(t){if(this[E])return t?this.emit("error",t):this.emit(E),this;this[E]=!0,this[P]=!0,this[k].length=0,this[C]=0;let e=this;return typeof e.close=="function"&&!this[Ft]&&e.close(),t?this.emit("error",t):this.emit(E),this}static get isStream(){return pr}},Sr=rr.native,yt={lstatSync:tr,readdir:er,readdirSync:ir,readlinkSync:sr,realpathSync:Sr,promises:{lstat:or,readdir:hr,readlink:ar,realpath:lr}},gi=t=>!t||t===yt||t===nr?yt:{...yt,...t,promises:{...yt.promises,...t.promises||{}}},mi=/^\\\\\?\\([a-z]:)\\?$/i,xr=t=>t.replace(/\//g,"\\").replace(mi,"$1\\"),Er=/[\\\/]/,L=0,wi=1,yi=2,U=4,bi=6,vi=8,tt=10,Si=12,M=15,gt=~M,re=16,Be=32,bt=64,B=128,Dt=256,Lt=512,Ie=bt|B|Lt,Ar=1023,ne=t=>t.isFile()?vi:t.isDirectory()?U:t.isSymbolicLink()?tt:t.isCharacterDevice()?yi:t.isBlockDevice()?bi:t.isSocket()?Si:t.isFIFO()?wi:L,Ue=new Bt({max:2**12}),vt=t=>{let e=Ue.get(t);if(e)return e;let i=t.normalize("NFKD");return Ue.set(t,i),i},Ge=new Bt({max:2**12}),$t=t=>{let e=Ge.get(t);if(e)return e;let i=vt(t.toLowerCase());return Ge.set(t,i),i},He=class extends Bt{constructor(){super({max:256})}},kr=class extends Bt{constructor(t=16*1024){super({maxSize:t,sizeCalculation:e=>e.length+1})}},xi=Symbol("PathScurry setAsCwd"),j=class{name;root;roots;parent;nocase;isCWD=!1;#t;#i;get dev(){return this.#i}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#o;get uid(){return this.#o}#v;get gid(){return this.#v}#w;get rdev(){return this.#w}#c;get blksize(){return this.#c}#h;get ino(){return this.#h}#u;get size(){return this.#u}#p;get blocks(){return this.#p}#a;get atimeMs(){return this.#a}#s;get mtimeMs(){return this.#s}#f;get ctimeMs(){return this.#f}#S;get birthtimeMs(){return this.#S}#b;get atime(){return this.#b}#d;get mtime(){return this.#d}#T;get ctime(){return this.#T}#g;get birthtime(){return this.#g}#A;#k;#m;#y;#x;#C;#e;#$;#P;#O;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(t,e=L,i,s,r,n,o){this.name=t,this.#A=r?$t(t):vt(t),this.#e=e&Ar,this.nocase=r,this.roots=s,this.root=i||this,this.#$=n,this.#m=o.fullpath,this.#x=o.relative,this.#C=o.relativePosix,this.parent=o.parent,this.parent?this.#t=this.parent.#t:this.#t=gi(o.fs)}depth(){return this.#k!==void 0?this.#k:this.parent?this.#k=this.parent.depth()+1:this.#k=0}childrenCache(){return this.#$}resolve(t){if(!t)return this;let e=this.getRootString(t),i=t.substring(e.length).split(this.splitSep);return e?this.getRoot(e).#D(i):this.#D(i)}#D(t){let e=this;for(let i of t)e=e.child(i);return e}children(){let t=this.#$.get(this);if(t)return t;let e=Object.assign([],{provisional:0});return this.#$.set(this,e),this.#e&=~re,e}child(t,e){if(t===""||t===".")return this;if(t==="..")return this.parent||this;let i=this.children(),s=this.nocase?$t(t):vt(t);for(let h of i)if(h.#A===s)return h;let r=this.parent?this.sep:"",n=this.#m?this.#m+r+t:void 0,o=this.newChild(t,L,{...e,parent:this,fullpath:n});return this.canReaddir()||(o.#e|=B),i.push(o),o}relative(){if(this.isCWD)return"";if(this.#x!==void 0)return this.#x;let t=this.name,e=this.parent;if(!e)return this.#x=this.name;let i=e.relative();return i+(!i||!e.parent?"":this.sep)+t}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#C!==void 0)return this.#C;let t=this.name,e=this.parent;if(!e)return this.#C=this.fullpathPosix();let i=e.relativePosix();return i+(!i||!e.parent?"":"/")+t}fullpath(){if(this.#m!==void 0)return this.#m;let t=this.name,e=this.parent;if(!e)return this.#m=this.name;let i=e.fullpath()+(e.parent?this.sep:"")+t;return this.#m=i}fullpathPosix(){if(this.#y!==void 0)return this.#y;if(this.sep==="/")return this.#y=this.fullpath();if(!this.parent){let s=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(s)?this.#y=`//?/${s}`:this.#y=s}let t=this.parent,e=t.fullpathPosix(),i=e+(!e||!t.parent?"":"/")+this.name;return this.#y=i}isUnknown(){return(this.#e&M)===L}isType(t){return this[`is${t}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#e&M)===vi}isDirectory(){return(this.#e&M)===U}isCharacterDevice(){return(this.#e&M)===yi}isBlockDevice(){return(this.#e&M)===bi}isFIFO(){return(this.#e&M)===wi}isSocket(){return(this.#e&M)===Si}isSymbolicLink(){return(this.#e&tt)===tt}lstatCached(){return this.#e&Be?this:void 0}readlinkCached(){return this.#P}realpathCached(){return this.#O}readdirCached(){let t=this.children();return t.slice(0,t.provisional)}canReadlink(){if(this.#P)return!0;if(!this.parent)return!1;let t=this.#e&M;return!(t!==L&&t!==tt||this.#e&Dt||this.#e&B)}calledReaddir(){return!!(this.#e&re)}isENOENT(){return!!(this.#e&B)}isNamed(t){return this.nocase?this.#A===$t(t):this.#A===vt(t)}async readlink(){let t=this.#P;if(t)return t;if(this.canReadlink()&&this.parent)try{let e=await this.#t.promises.readlink(this.fullpath()),i=(await this.parent.realpath())?.resolve(e);if(i)return this.#P=i}catch(e){this.#j(e.code);return}}readlinkSync(){let t=this.#P;if(t)return t;if(this.canReadlink()&&this.parent)try{let e=this.#t.readlinkSync(this.fullpath()),i=this.parent.realpathSync()?.resolve(e);if(i)return this.#P=i}catch(e){this.#j(e.code);return}}#N(t){this.#e|=re;for(let e=t.provisional;e<t.length;e++){let i=t[e];i&&i.#E()}}#E(){this.#e&B||(this.#e=(this.#e|B)&gt,this.#G())}#G(){let t=this.children();t.provisional=0;for(let e of t)e.#E()}#W(){this.#e|=Lt,this.#M()}#M(){if(this.#e&bt)return;let t=this.#e;(t&M)===U&&(t&=gt),this.#e=t|bt,this.#G()}#z(t=""){t==="ENOTDIR"||t==="EPERM"?this.#M():t==="ENOENT"?this.#E():this.children().provisional=0}#R(t=""){t==="ENOTDIR"?this.parent.#M():t==="ENOENT"&&this.#E()}#j(t=""){let e=this.#e;e|=Dt,t==="ENOENT"&&(e|=B),(t==="EINVAL"||t==="UNKNOWN")&&(e&=gt),this.#e=e,t==="ENOTDIR"&&this.parent&&this.parent.#M()}#_(t,e){return this.#I(t,e)||this.#B(t,e)}#B(t,e){let i=ne(t),s=this.newChild(t.name,i,{parent:this}),r=s.#e&M;return r!==U&&r!==tt&&r!==L&&(s.#e|=bt),e.unshift(s),e.provisional++,s}#I(t,e){for(let i=e.provisional;i<e.length;i++){let s=e[i];if((this.nocase?$t(t.name):vt(t.name))===s.#A)return this.#l(t,s,i,e)}}#l(t,e,i,s){let r=e.name;return e.#e=e.#e&gt|ne(t),r!==t.name&&(e.name=t.name),i!==s.provisional&&(i===s.length-1?s.pop():s.splice(i,1),s.unshift(e)),s.provisional++,e}async lstat(){if((this.#e&B)===0)try{return this.#U(await this.#t.promises.lstat(this.fullpath())),this}catch(t){this.#R(t.code)}}lstatSync(){if((this.#e&B)===0)try{return this.#U(this.#t.lstatSync(this.fullpath())),this}catch(t){this.#R(t.code)}}#U(t){let{atime:e,atimeMs:i,birthtime:s,birthtimeMs:r,blksize:n,blocks:o,ctime:h,ctimeMs:a,dev:l,gid:p,ino:c,mode:f,mtime:u,mtimeMs:d,nlink:g,rdev:w,size:m,uid:y}=t;this.#b=e,this.#a=i,this.#g=s,this.#S=r,this.#c=n,this.#p=o,this.#T=h,this.#f=a,this.#i=l,this.#v=p,this.#h=c,this.#n=f,this.#d=u,this.#s=d,this.#r=g,this.#w=w,this.#u=m,this.#o=y;let b=ne(t);this.#e=this.#e&gt|b|Be,b!==L&&b!==U&&b!==tt&&(this.#e|=bt)}#L=[];#F=!1;#H(t){this.#F=!1;let e=this.#L.slice();this.#L.length=0,e.forEach(i=>i(null,t))}readdirCB(t,e=!1){if(!this.canReaddir()){e?t(null,[]):queueMicrotask(()=>t(null,[]));return}let i=this.children();if(this.calledReaddir()){let r=i.slice(0,i.provisional);e?t(null,r):queueMicrotask(()=>t(null,r));return}if(this.#L.push(t),this.#F)return;this.#F=!0;let s=this.fullpath();this.#t.readdir(s,{withFileTypes:!0},(r,n)=>{if(r)this.#z(r.code),i.provisional=0;else{for(let o of n)this.#_(o,i);this.#N(i)}this.#H(i.slice(0,i.provisional))})}#V;async readdir(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let e=this.fullpath();if(this.#V)await this.#V;else{let i=()=>{};this.#V=new Promise(s=>i=s);try{for(let s of await this.#t.promises.readdir(e,{withFileTypes:!0}))this.#_(s,t);this.#N(t)}catch(s){this.#z(s.code),t.provisional=0}this.#V=void 0,i()}return t.slice(0,t.provisional)}readdirSync(){if(!this.canReaddir())return[];let t=this.children();if(this.calledReaddir())return t.slice(0,t.provisional);let e=this.fullpath();try{for(let i of this.#t.readdirSync(e,{withFileTypes:!0}))this.#_(i,t);this.#N(t)}catch(i){this.#z(i.code),t.provisional=0}return t.slice(0,t.provisional)}canReaddir(){if(this.#e&Ie)return!1;let t=M&this.#e;return t===L||t===U||t===tt}shouldWalk(t,e){return(this.#e&U)===U&&!(this.#e&Ie)&&!t.has(this)&&(!e||e(this))}async realpath(){if(this.#O)return this.#O;if(!((Lt|Dt|B)&this.#e))try{let t=await this.#t.promises.realpath(this.fullpath());return this.#O=this.resolve(t)}catch{this.#W()}}realpathSync(){if(this.#O)return this.#O;if(!((Lt|Dt|B)&this.#e))try{let t=this.#t.realpathSync(this.fullpath());return this.#O=this.resolve(t)}catch{this.#W()}}[xi](t){if(t===this)return;t.isCWD=!1,this.isCWD=!0;let e=new Set([]),i=[],s=this;for(;s&&s.parent;)e.add(s),s.#x=i.join(this.sep),s.#C=i.join("/"),s=s.parent,i.push("..");for(s=t;s&&s.parent&&!e.has(s);)s.#x=void 0,s.#C=void 0,s=s.parent}},Ei=class Ai extends j{sep="\\";splitSep=Er;constructor(e,i=L,s,r,n,o,h){super(e,i,s,r,n,o,h)}newChild(e,i=L,s={}){return new Ai(e,i,this.root,this.roots,this.nocase,this.childrenCache(),s)}getRootString(e){return he.parse(e).root}getRoot(e){if(e=xr(e.toUpperCase()),e===this.root.name)return this.root;for(let[i,s]of Object.entries(this.roots))if(this.sameRoot(e,i))return this.roots[e]=s;return this.roots[e]=new pe(e,this).root}sameRoot(e,i=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(mi,"$1\\"),e===i}},ki=class Ci extends j{splitSep="/";sep="/";constructor(e,i=L,s,r,n,o,h){super(e,i,s,r,n,o,h)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,i=L,s={}){return new Ci(e,i,this.root,this.roots,this.nocase,this.childrenCache(),s)}},Oi=class{root;rootPath;roots;cwd;#t;#i;#n;nocase;#r;constructor(t=process.cwd(),e,i,{nocase:s,childrenCacheSize:r=16*1024,fs:n=yt}={}){this.#r=gi(n),(t instanceof URL||t.startsWith("file://"))&&(t=Qs(t));let o=e.resolve(t);this.roots=Object.create(null),this.rootPath=this.parseRootPath(o),this.#t=new He,this.#i=new He,this.#n=new kr(r);let h=o.substring(this.rootPath.length).split(i);if(h.length===1&&!h[0]&&h.pop(),s===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=s,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let a=this.root,l=h.length-1,p=e.sep,c=this.rootPath,f=!1;for(let u of h){let d=l--;a=a.child(u,{relative:new Array(d).fill("..").join(p),relativePosix:new Array(d).fill("..").join("/"),fullpath:c+=(f?"":p)+u}),f=!0}this.cwd=a}depth(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.depth()}childrenCache(){return this.#n}resolve(...t){let e="";for(let r=t.length-1;r>=0;r--){let n=t[r];if(!(!n||n===".")&&(e=e?`${n}/${e}`:n,this.isAbsolute(n)))break}let i=this.#t.get(e);if(i!==void 0)return i;let s=this.cwd.resolve(e).fullpath();return this.#t.set(e,s),s}resolvePosix(...t){let e="";for(let r=t.length-1;r>=0;r--){let n=t[r];if(!(!n||n===".")&&(e=e?`${n}/${e}`:n,this.isAbsolute(n)))break}let i=this.#i.get(e);if(i!==void 0)return i;let s=this.cwd.resolve(e).fullpathPosix();return this.#i.set(e,s),s}relative(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relative()}relativePosix(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.relativePosix()}basename(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.name}dirname(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),(t.parent||t).fullpath()}async readdir(t=this.cwd,e={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i}=e;if(t.canReaddir()){let s=await t.readdir();return i?s:s.map(r=>r.name)}else return[]}readdirSync(t=this.cwd,e={withFileTypes:!0}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0}=e;return t.canReaddir()?i?t.readdirSync():t.readdirSync().map(s=>s.name):[]}async lstat(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstat()}lstatSync(t=this.cwd){return typeof t=="string"&&(t=this.cwd.resolve(t)),t.lstatSync()}async readlink(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t.withFileTypes,t=this.cwd);let i=await t.readlink();return e?i:i?.fullpath()}readlinkSync(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t.withFileTypes,t=this.cwd);let i=t.readlinkSync();return e?i:i?.fullpath()}async realpath(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t.withFileTypes,t=this.cwd);let i=await t.realpath();return e?i:i?.fullpath()}realpathSync(t=this.cwd,{withFileTypes:e}={withFileTypes:!1}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t.withFileTypes,t=this.cwd);let i=t.realpathSync();return e?i:i?.fullpath()}async walk(t=this.cwd,e={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,o=[];(!r||r(t))&&o.push(i?t:t.fullpath());let h=new Set,a=(p,c)=>{h.add(p),p.readdirCB((f,u)=>{if(f)return c(f);let d=u.length;if(!d)return c();let g=()=>{--d===0&&c()};for(let w of u)(!r||r(w))&&o.push(i?w:w.fullpath()),s&&w.isSymbolicLink()?w.realpath().then(m=>m?.isUnknown()?m.lstat():m).then(m=>m?.shouldWalk(h,n)?a(m,g):g()):w.shouldWalk(h,n)?a(w,g):g()},!0)},l=t;return new Promise((p,c)=>{a(l,f=>{if(f)return c(f);p(o)})})}walkSync(t=this.cwd,e={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,o=[];(!r||r(t))&&o.push(i?t:t.fullpath());let h=new Set([t]);for(let a of h){let l=a.readdirSync();for(let p of l){(!r||r(p))&&o.push(i?p:p.fullpath());let c=p;if(p.isSymbolicLink()){if(!(s&&(c=p.realpathSync())))continue;c.isUnknown()&&c.lstatSync()}c.shouldWalk(h,n)&&h.add(c)}}return o}[Symbol.asyncIterator](){return this.iterate()}iterate(t=this.cwd,e={}){return typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd),this.stream(t,e)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(t=this.cwd,e={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e;(!r||r(t))&&(yield i?t:t.fullpath());let o=new Set([t]);for(let h of o){let a=h.readdirSync();for(let l of a){(!r||r(l))&&(yield i?l:l.fullpath());let p=l;if(l.isSymbolicLink()){if(!(s&&(p=l.realpathSync())))continue;p.isUnknown()&&p.lstatSync()}p.shouldWalk(o,n)&&o.add(p)}}}stream(t=this.cwd,e={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,o=new zt({objectMode:!0});(!r||r(t))&&o.write(i?t:t.fullpath());let h=new Set,a=[t],l=0,p=()=>{let c=!1;for(;!c;){let f=a.shift();if(!f){l===0&&o.end();return}l++,h.add(f);let u=(g,w,m=!1)=>{if(g)return o.emit("error",g);if(s&&!m){let y=[];for(let b of w)b.isSymbolicLink()&&y.push(b.realpath().then(v=>v?.isUnknown()?v.lstat():v));if(y.length){Promise.all(y).then(()=>u(null,w,!0));return}}for(let y of w)y&&(!r||r(y))&&(o.write(i?y:y.fullpath())||(c=!0));l--;for(let y of w){let b=y.realpathCached()||y;b.shouldWalk(h,n)&&a.push(b)}c&&!o.flowing?o.once("drain",p):d||p()},d=!0;f.readdirCB(u,!0),d=!1}};return p(),o}streamSync(t=this.cwd,e={}){typeof t=="string"?t=this.cwd.resolve(t):t instanceof j||(e=t,t=this.cwd);let{withFileTypes:i=!0,follow:s=!1,filter:r,walkFilter:n}=e,o=new zt({objectMode:!0}),h=new Set;(!r||r(t))&&o.write(i?t:t.fullpath());let a=[t],l=0,p=()=>{let c=!1;for(;!c;){let f=a.shift();if(!f){l===0&&o.end();return}l++,h.add(f);let u=f.readdirSync();for(let d of u)(!r||r(d))&&(o.write(i?d:d.fullpath())||(c=!0));l--;for(let d of u){let g=d;if(d.isSymbolicLink()){if(!(s&&(g=d.realpathSync())))continue;g.isUnknown()&&g.lstatSync()}g.shouldWalk(h,n)&&a.push(g)}}c&&!o.flowing&&o.once("drain",p)};return p(),o}chdir(t=this.cwd){let e=this.cwd;this.cwd=typeof t=="string"?this.cwd.resolve(t):t,this.cwd[xi](e)}},pe=class extends Oi{sep="\\";constructor(t=process.cwd(),e={}){let{nocase:i=!0}=e;super(t,he,"\\",{...e,nocase:i}),this.nocase=i;for(let s=this.cwd;s;s=s.parent)s.nocase=this.nocase}parseRootPath(t){return he.parse(t).root.toUpperCase()}newRoot(t){return new Ei(this.rootPath,U,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}},ue=class extends Oi{sep="/";constructor(t=process.cwd(),e={}){let{nocase:i=!1}=e;super(t,Xs,"/",{...e,nocase:i}),this.nocase=i}parseRootPath(t){return"/"}newRoot(t){return new ki(this.rootPath,U,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}},Ti=class extends ue{constructor(t=process.cwd(),e={}){let{nocase:i=!0}=e;super(t,{...e,nocase:i})}},pn=process.platform==="win32"?Ei:ki,Cr=process.platform==="win32"?pe:process.platform==="darwin"?Ti:ue,Or=t=>t.length>=1,Tr=t=>t.length>=1,Fr=Symbol.for("nodejs.util.inspect.custom"),Fi=class Ri{#t;#i;#n;length;#r;#o;#v;#w;#c;#h;#u=!0;constructor(e,i,s,r){if(!Or(e))throw new TypeError("empty pattern list");if(!Tr(i))throw new TypeError("empty glob list");if(i.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,s<0||s>=this.length)throw new TypeError("index out of range");if(this.#t=e,this.#i=i,this.#n=s,this.#r=r,this.#n===0){if(this.isUNC()){let[n,o,h,a,...l]=this.#t,[p,c,f,u,...d]=this.#i;l[0]===""&&(l.shift(),d.shift());let g=[n,o,h,a,""].join("/"),w=[p,c,f,u,""].join("/");this.#t=[g,...l],this.#i=[w,...d],this.length=this.#t.length}else if(this.isDrive()||this.isAbsolute()){let[n,...o]=this.#t,[h,...a]=this.#i;o[0]===""&&(o.shift(),a.shift());let l=n+"/",p=h+"/";this.#t=[l,...o],this.#i=[p,...a],this.length=this.#t.length}}}[Fr](){return"Pattern <"+this.#i.slice(this.#n).join("/")+">"}pattern(){return this.#t[this.#n]}isString(){return typeof this.#t[this.#n]=="string"}isGlobstar(){return this.#t[this.#n]===F}isRegExp(){return this.#t[this.#n]instanceof RegExp}globString(){return this.#v=this.#v||(this.#n===0?this.isAbsolute()?this.#i[0]+this.#i.slice(1).join("/"):this.#i.join("/"):this.#i.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new Ri(this.#t,this.#i,this.#n+1,this.#r),this.#o.#h=this.#h,this.#o.#c=this.#c,this.#o.#w=this.#w,this.#o):this.#o=null}isUNC(){let e=this.#t;return this.#c!==void 0?this.#c:this.#c=this.#r==="win32"&&this.#n===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#t;return this.#w!==void 0?this.#w:this.#w=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#t;return this.#h!==void 0?this.#h:this.#h=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#t[0];return typeof e=="string"&&this.isAbsolute()&&this.#n===0?e:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#u)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#u?!1:(this.#u=!1,!0)}},Rr=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Ve=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(t,{nobrace:e,nocase:i,noext:s,noglobstar:r,platform:n=Rr}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=n,this.mmopts={dot:!0,nobrace:e,nocase:i,noext:s,noglobstar:r,optimizationLevel:2,platform:n,nocomment:!0,nonegate:!0};for(let o of t)this.add(o)}add(t){let e=new Z(t,this.mmopts);for(let i=0;i<e.set.length;i++){let s=e.set[i],r=e.globParts[i];if(!s||!r)throw new Error("invalid pattern object");for(;s[0]==="."&&r[0]===".";)s.shift(),r.shift();let n=new Fi(s,r,0,this.platform),o=new Z(n.globString(),this.mmopts),h=r[r.length-1]==="**",a=n.isAbsolute();a?this.absolute.push(o):this.relative.push(o),h&&(a?this.absoluteChildren.push(o):this.relativeChildren.push(o))}}ignored(t){let e=t.fullpath(),i=`${e}/`,s=t.relative()||".",r=`${s}/`;for(let n of this.relative)if(n.match(s)||n.match(r))return!0;for(let n of this.absolute)if(n.match(e)||n.match(i))return!0;return!1}childrenIgnored(t){let e=t.fullpath()+"/",i=(t.relative()||".")+"/";for(let s of this.relativeChildren)if(s.match(i))return!0;for(let s of this.absoluteChildren)if(s.match(e))return!0;return!1}},jr=class ji{store;constructor(e=new Map){this.store=e}copy(){return new ji(new Map(this.store))}hasWalked(e,i){return this.store.get(e.fullpath())?.has(i.globString())}storeWalked(e,i){let s=e.fullpath(),r=this.store.get(s);r?r.add(i.globString()):this.store.set(s,new Set([i.globString()]))}},Pr=class{store=new Map;add(t,e,i){let s=(e?2:0)|(i?1:0),r=this.store.get(t);this.store.set(t,r===void 0?s:s&r)}entries(){return[...this.store.entries()].map(([t,e])=>[t,!!(e&2),!!(e&1)])}},Dr=class{store=new Map;add(t,e){if(!t.canReaddir())return;let i=this.store.get(t);i?i.find(s=>s.globString()===e.globString())||i.push(e):this.store.set(t,[e])}get(t){let e=this.store.get(t);if(!e)throw new Error("attempting to walk unknown path");return e}entries(){return this.keys().map(t=>[t,this.store.get(t)])}keys(){return[...this.store.keys()].filter(t=>t.canReaddir())}},Ye=class Pi{hasWalkedCache;matches=new Pr;subwalks=new Dr;patterns;follow;dot;opts;constructor(e,i){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=i?i.copy():new jr}processPatterns(e,i){this.patterns=i;let s=i.map(r=>[e,r]);for(let[r,n]of s){this.hasWalkedCache.storeWalked(r,n);let o=n.root(),h=n.isAbsolute()&&this.opts.absolute!==!1;if(o){r=r.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let c=n.rest();if(c)n=c;else{this.matches.add(r,!0,!1);continue}}if(r.isENOENT())continue;let a,l,p=!1;for(;typeof(a=n.pattern())=="string"&&(l=n.rest());)r=r.resolve(a),n=l,p=!0;if(a=n.pattern(),l=n.rest(),p){if(this.hasWalkedCache.hasWalked(r,n))continue;this.hasWalkedCache.storeWalked(r,n)}if(typeof a=="string"){let c=a===".."||a===""||a===".";this.matches.add(r.resolve(a),h,c);continue}else if(a===F){(!r.isSymbolicLink()||this.follow||n.checkFollowGlobstar())&&this.subwalks.add(r,n);let c=l?.pattern(),f=l?.rest();if(!l||(c===""||c===".")&&!f)this.matches.add(r,h,c===""||c===".");else if(c===".."){let u=r.parent||r;f?this.hasWalkedCache.hasWalked(u,f)||this.subwalks.add(u,f):this.matches.add(u,h,!0)}}else a instanceof RegExp&&this.subwalks.add(r,n)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new Pi(this.opts,this.hasWalkedCache)}filterEntries(e,i){let s=this.subwalks.get(e),r=this.child();for(let n of i)for(let o of s){let h=o.isAbsolute(),a=o.pattern(),l=o.rest();a===F?r.testGlobstar(n,o,l,h):a instanceof RegExp?r.testRegExp(n,a,l,h):r.testString(n,a,l,h)}return r}testGlobstar(e,i,s,r){if((this.dot||!e.name.startsWith("."))&&(i.hasMore()||this.matches.add(e,r,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,i):e.isSymbolicLink()&&(s&&i.checkFollowGlobstar()?this.subwalks.add(e,s):i.markFollowGlobstar()&&this.subwalks.add(e,i)))),s){let n=s.pattern();if(typeof n=="string"&&n!==".."&&n!==""&&n!==".")this.testString(e,n,s.rest(),r);else if(n===".."){let o=e.parent||e;this.subwalks.add(o,s)}else n instanceof RegExp&&this.testRegExp(e,n,s.rest(),r)}}testRegExp(e,i,s,r){i.test(e.name)&&(s?this.subwalks.add(e,s):this.matches.add(e,r,!1))}testString(e,i,s,r){e.isNamed(i)&&(s?this.subwalks.add(e,s):this.matches.add(e,r,!1))}},$r=(t,e)=>typeof t=="string"?new Ve([t],e):Array.isArray(t)?new Ve(t,e):t,Di=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#t=[];#i;#n;signal;maxDepth;includeChildMatches;constructor(t,e,i){if(this.patterns=t,this.path=e,this.opts=i,this.#n=!i.posix&&i.platform==="win32"?"\\":"/",this.includeChildMatches=i.includeChildMatches!==!1,(i.ignore||!this.includeChildMatches)&&(this.#i=$r(i.ignore??[],i),!this.includeChildMatches&&typeof this.#i.add!="function")){let s="cannot ignore child matches, ignore lacks add() method.";throw new Error(s)}this.maxDepth=i.maxDepth||1/0,i.signal&&(this.signal=i.signal,this.signal.addEventListener("abort",()=>{this.#t.length=0}))}#r(t){return this.seen.has(t)||!!this.#i?.ignored?.(t)}#o(t){return!!this.#i?.childrenIgnored?.(t)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let t;for(;!this.paused&&(t=this.#t.shift());)t()}onResume(t){this.signal?.aborted||(this.paused?this.#t.push(t):t())}async matchCheck(t,e){if(e&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=t.realpathCached()||await t.realpath(),!i)return;t=i}let s=t.isUnknown()||this.opts.stat?await t.lstat():t;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let r=await s.realpath();r&&(r.isUnknown()||this.opts.stat)&&await r.lstat()}return this.matchCheckTest(s,e)}matchCheckTest(t,e){return t&&(this.maxDepth===1/0||t.depth()<=this.maxDepth)&&(!e||t.canReaddir())&&(!this.opts.nodir||!t.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!t.isSymbolicLink()||!t.realpathCached()?.isDirectory())&&!this.#r(t)?t:void 0}matchCheckSync(t,e){if(e&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=t.realpathCached()||t.realpathSync(),!i)return;t=i}let s=t.isUnknown()||this.opts.stat?t.lstatSync():t;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let r=s.realpathSync();r&&(r?.isUnknown()||this.opts.stat)&&r.lstatSync()}return this.matchCheckTest(s,e)}matchFinish(t,e){if(this.#r(t))return;if(!this.includeChildMatches&&this.#i?.add){let r=`${t.relativePosix()}/**`;this.#i.add(r)}let i=this.opts.absolute===void 0?e:this.opts.absolute;this.seen.add(t);let s=this.opts.mark&&t.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(t);else if(i){let r=this.opts.posix?t.fullpathPosix():t.fullpath();this.matchEmit(r+s)}else{let r=this.opts.posix?t.relativePosix():t.relative(),n=this.opts.dotRelative&&!r.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(r?n+r+s:"."+s)}}async match(t,e,i){let s=await this.matchCheck(t,i);s&&this.matchFinish(s,e)}matchSync(t,e,i){let s=this.matchCheckSync(t,i);s&&this.matchFinish(s,e)}walkCB(t,e,i){this.signal?.aborted&&i(),this.walkCB2(t,e,new Ye(this.opts),i)}walkCB2(t,e,i,s){if(this.#o(t))return s();if(this.signal?.aborted&&s(),this.paused){this.onResume(()=>this.walkCB2(t,e,i,s));return}i.processPatterns(t,e);let r=1,n=()=>{--r===0&&s()};for(let[o,h,a]of i.matches.entries())this.#r(o)||(r++,this.match(o,h,a).then(()=>n()));for(let o of i.subwalkTargets()){if(this.maxDepth!==1/0&&o.depth()>=this.maxDepth)continue;r++;let h=o.readdirCached();o.calledReaddir()?this.walkCB3(o,h,i,n):o.readdirCB((a,l)=>this.walkCB3(o,l,i,n),!0)}n()}walkCB3(t,e,i,s){i=i.filterEntries(t,e);let r=1,n=()=>{--r===0&&s()};for(let[o,h,a]of i.matches.entries())this.#r(o)||(r++,this.match(o,h,a).then(()=>n()));for(let[o,h]of i.subwalks.entries())r++,this.walkCB2(o,h,i.child(),n);n()}walkCBSync(t,e,i){this.signal?.aborted&&i(),this.walkCB2Sync(t,e,new Ye(this.opts),i)}walkCB2Sync(t,e,i,s){if(this.#o(t))return s();if(this.signal?.aborted&&s(),this.paused){this.onResume(()=>this.walkCB2Sync(t,e,i,s));return}i.processPatterns(t,e);let r=1,n=()=>{--r===0&&s()};for(let[o,h,a]of i.matches.entries())this.#r(o)||this.matchSync(o,h,a);for(let o of i.subwalkTargets()){if(this.maxDepth!==1/0&&o.depth()>=this.maxDepth)continue;r++;let h=o.readdirSync();this.walkCB3Sync(o,h,i,n)}n()}walkCB3Sync(t,e,i,s){i=i.filterEntries(t,e);let r=1,n=()=>{--r===0&&s()};for(let[o,h,a]of i.matches.entries())this.#r(o)||this.matchSync(o,h,a);for(let[o,h]of i.subwalks.entries())r++,this.walkCB2Sync(o,h,i.child(),n);n()}},Je=class extends Di{matches=new Set;constructor(t,e,i){super(t,e,i)}matchEmit(t){this.matches.add(t)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((t,e)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?e(this.signal.reason):t(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},qe=class extends Di{results;constructor(t,e,i){super(t,e,i),this.results=new zt({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(t){this.results.write(t),this.results.flowing||this.pause()}stream(){let t=this.path;return t.isUnknown()?t.lstat().then(()=>{this.walkCB(t,this.patterns,()=>this.results.end())}):this.walkCB(t,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}},Mr=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",et=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(t,e){if(!e)throw new TypeError("glob options required");if(this.withFileTypes=!!e.withFileTypes,this.signal=e.signal,this.follow=!!e.follow,this.dot=!!e.dot,this.dotRelative=!!e.dotRelative,this.nodir=!!e.nodir,this.mark=!!e.mark,e.cwd?(e.cwd instanceof URL||e.cwd.startsWith("file://"))&&(e.cwd=Js(e.cwd)):this.cwd="",this.cwd=e.cwd||"",this.root=e.root,this.magicalBraces=!!e.magicalBraces,this.nobrace=!!e.nobrace,this.noext=!!e.noext,this.realpath=!!e.realpath,this.absolute=e.absolute,this.includeChildMatches=e.includeChildMatches!==!1,this.noglobstar=!!e.noglobstar,this.matchBase=!!e.matchBase,this.maxDepth=typeof e.maxDepth=="number"?e.maxDepth:1/0,this.stat=!!e.stat,this.ignore=e.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof t=="string"&&(t=[t]),this.windowsPathsNoEscape=!!e.windowsPathsNoEscape||e.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(t=t.map(h=>h.replace(/\\/g,"/"))),this.matchBase){if(e.noglobstar)throw new TypeError("base matching requires globstar");t=t.map(h=>h.includes("/")?h:`./**/${h}`)}if(this.pattern=t,this.platform=e.platform||Mr,this.opts={...e,platform:this.platform},e.scurry){if(this.scurry=e.scurry,e.nocase!==void 0&&e.nocase!==e.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let h=e.platform==="win32"?pe:e.platform==="darwin"?Ti:e.platform?ue:Cr;this.scurry=new h(this.cwd,{nocase:e.nocase,fs:e.fs})}this.nocase=this.scurry.nocase;let i=this.platform==="darwin"||this.platform==="win32",s={braceExpandMax:1e4,...e,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:i,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},r=this.pattern.map(h=>new Z(h,s)),[n,o]=r.reduce((h,a)=>(h[0].push(...a.set),h[1].push(...a.globParts),h),[[],[]]);this.patterns=n.map((h,a)=>{let l=o[a];if(!l)throw new Error("invalid pattern object");return new Fi(h,l,0,this.platform)})}async walk(){return[...await new Je(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new Je(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new qe(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new qe(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}},fe=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let i of t)if(new Z(i,e).hasMagic())return!0;return!1};function It(t,e={}){return new et(t,e).streamSync()}function $i(t,e={}){return new et(t,e).stream()}function Mi(t,e={}){return new et(t,e).walkSync()}async function Ke(t,e={}){return new et(t,e).walk()}function Ut(t,e={}){return new et(t,e).iterateSync()}function Li(t,e={}){return new et(t,e).iterate()}var Lr=It,Wr=Object.assign($i,{sync:It}),Nr=Ut,zr=Object.assign(Li,{sync:Ut}),_r=Object.assign(Mi,{stream:It,iterate:Ut}),_t=Object.assign(Ke,{glob:Ke,globSync:Mi,sync:_r,globStream:$i,stream:Wr,globStreamSync:It,streamSync:Lr,globIterate:Li,iterate:zr,globIterateSync:Ut,iterateSync:Nr,Glob:et,hasMagic:fe,escape:ri,unescape:at});_t.glob=_t;import*as W from"node:fs";import{basename as Wi,dirname as xt,extname as St,join as Ni,resolve as lt,relative as Br}from"node:path";import*as V from"node:process";import{performance as Ir}from"perf_hooks";var Gt=["json","yaml","yml"];async function Bi(t,e){let s=!qt(t)&&we(e.resolvedConfig.apis)?Gr(e):await Hr(t,e),r=s.filter(({path:n})=>!Ur(n));if(qt(r)){for(let{path:n}of r)x.warn(`
10
- ${Et(n)} ${be(`does not exist or is invalid.
10
+ ${Et(n)} ${Se(`does not exist or is invalid.
11
11
 
12
12
  `)}`);z("Please provide a valid path.")}return s.length===0&&z("No APIs were provided. Specify an API via the command argument or define one in your config."),s}function Vt(t){return t.configPath?xt(t.configPath):V.cwd()}function Ur(t){if(!t.trim()){z("Path cannot be empty.");return}return W.existsSync(t)||nt(t)?t:void 0}function Gr(t){return Object.entries(t.resolvedConfig.apis||{}).map(([e,{root:i,output:s}])=>({path:nt(i)?i:lt(Vt(t),i),alias:e,output:s&&lt(Vt(t),s)}))}function zi(t,e){let i=Vt(t),s=t.resolvedConfig.apis?.[e];return s?{path:nt(s.root)?s.root:lt(i,s.root),alias:e,output:s.output&&lt(i,s.output)}:{path:e,alias:Object.entries(t.resolvedConfig.apis||{}).find(([r,n])=>lt(i,n.root)===lt(e))?.[0]??void 0}}async function Hr(t,e){return(await Promise.all(t.map(async i=>fe(i)&&!nt(i)?(await _t(i,{cwd:Vt(e)})).map(n=>zi(e,n)):zi(e,i)))).flat()}function de(t){return V.env.NODE_ENV==="test"?"<test>ms":`${Math.ceil(Ir.now()-t)}ms`}function Hn(t,e,i){let s=de(e);x.info(X(`
13
13
  ${i}: ${t} processed in ${s}
14
14
 
15
15
  `))}function Vn(t,e){return t==="/"?e:t.replaceAll("~1","/").replaceAll("~0","~").replace(/^\//,"").replaceAll("/",e)}function Yn(t){return t.replace(/#/g,"_sharp").replace(/\//,"_").replace(/\s/g,"")}function Jn(t){return{php:".php","c#":".cs",shell:".sh",curl:".sh",bash:".sh",javascript:".js",js:".js",python:".py",c:".c","c++":".cpp",coffeescript:".litcoffee",dart:".dart",elixir:".ex",go:".go",groovy:".groovy",java:".java",kotlin:".kt","objective-c":".m",perl:".pl",powershell:".ps1",ruby:".rb",rust:".rs",scala:".sc",swift:".swift",typescript:".ts",tsx:".tsx","visual basic":".vb","c/al":".al"}[t.toLowerCase()]??""}var Yt=class t extends Error{constructor(i){super(i.message);this.originalError=i;Object.setPrototypeOf(this,t.prototype)}originalError};function qn(t,e,i){if(e==="json")try{return JSON.stringify(t,null,2)}catch(s){throw s.message.indexOf("circular")>-1?new Yt(s):s}else return Kt(t,{noRefs:!i,lineWidth:-1})}function Kn(t,e){W.mkdirSync(xt(t),{recursive:!0}),W.writeFileSync(t,e)}function Zn(t){return ye(W.readFileSync(t,"utf-8"),{filename:t})}function Xn(t,e,i){if(Jr(e)==="json"){Yr(t,e);return}Vr(t,e,i)}function Vr(t,e,i=!1){let s=Kt(t,{noRefs:i});if(V.env.NODE_ENV==="test"){x.info(s);return}W.mkdirSync(xt(e),{recursive:!0}),W.writeFileSync(e,s)}function Yr(t,e){let i=JSON.stringify(t,null,2);if(V.env.NODE_ENV==="test"){x.info(i);return}W.mkdirSync(xt(e),{recursive:!0}),W.writeFileSync(e,i)}function Jr(t){let e=t.split(".").pop();return Gt.includes(e)?e:(x.warn(`Unsupported file extension: ${e}. Using yaml.
16
- `),"yaml")}function ge(t,e){switch(t.constructor){case Ce:throw t;case xe:z(`Failed to resolve API description at ${e}:
16
+ `),"yaml")}function ge(t,e){switch(t.constructor){case Ce:throw t;case ve:z(`Failed to resolve API description at ${e}:
17
17
 
18
- - ${t.message}`);break;case Se:z(`Failed to parse API description at ${e}:
18
+ - ${t.message}`);break;case be:z(`Failed to parse API description at ${e}:
19
19
 
20
20
  - ${t.message}`);break;case Yt:{z(`Detected circular reference which can't be converted to JSON.
21
21
  Try to use ${J("yaml")} output or remove ${J("--dereferenced")}.`);break}case SyntaxError:z(`Syntax error: ${t.message} ${t.stack?.split(`
22
22
 
23
23
  `)?.[0]}`);break;case kt:z(t.message);break;default:z(`Something went wrong when processing ${e}:
24
24
 
25
- - ${t.message}`)}}function Ii(t,e){let i=t.ignored?ve(`${t.ignored} ${N("problem is",t.ignored)} explicitly ignored.
25
+ - ${t.message}`)}}function Ii(t,e){let i=t.ignored?xe(`${t.ignored} ${N("problem is",t.ignored)} explicitly ignored.
26
26
 
27
27
  `):"";t.errors>0?x.error(`\u274C Validation failed with ${t.errors} ${N("error",t.errors)}${t.warnings>0?` and ${t.warnings} ${N("warning",t.warnings)}`:""}.
28
28
  ${i}`):t.warnings>0?(x.info(At(`Woohoo! Your API ${N("description is",e)} valid. \u{1F389}
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a,b,c,d,e,f,g}from"./W5DUUIKF.js";import"./O6PRCLSV.js";import"./32XCOMOR.js";import"./M3XP3LQ3.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";export{d as RESET_ESCAPE_CODE,c as calculateTotals,f as conditionallyMaskSecrets,b as generate,e as maskSecrets,a as parseRuntimeExpression,g as run};
7
+ import{a,b,c,d,e,f,g}from"./4G6EYFND.js";import"./O6PRCLSV.js";import"./32XCOMOR.js";import"./AYCCHB2H.js";import"./NEWT5A6S.js";import"./RFWIIJFG.js";export{d as RESET_ESCAPE_CODE,c as calculateTotals,f as conditionallyMaskSecrets,b as generate,e as maskSecrets,a as parseRuntimeExpression,g as run};
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a,b,c,d,e}from"./FRTUU2MY.js";import"./REFX2EKS.js";import"./UKSQ7B5H.js";import"./4OMVSQVK.js";import"./VGBSMXRM.js";import"./PFYPTG4G.js";import"./M3XP3LQ3.js";import"./NEWT5A6S.js";import"./HJYFWIVE.js";import"./RFWIIJFG.js";export{e as goDocs,c as goGenerator,d as goSample,a as goType,b as renderGoModels};
7
+ import{a,b,c,d,e}from"./6SPYPUI6.js";import"./REFX2EKS.js";import"./UKSQ7B5H.js";import"./BQM4LA5W.js";import"./VFTQZ2K5.js";import"./PFYPTG4G.js";import"./AYCCHB2H.js";import"./NEWT5A6S.js";import"./HJYFWIVE.js";import"./RFWIIJFG.js";export{e as goDocs,c as goGenerator,d as goSample,a as goType,b as renderGoModels};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as x,b as f,c as m,d}from"./TNYG2WWT.js";import{b as y,d as h,e as l}from"./NB54XRRU.js";import{m as P}from"./HJYFWIVE.js";import{join as E}from"node:path";function q(e,t){let n=x(e,"tanstack-query");if(n.length===0)return"";let r=t.pagination??new Map;return[j(n,t,r),...n.filter(f).map(i=>K(i,t.queryKeyPrefix)),Q(e,n,r,t.queryKeyPrefix,t.argsStyle),...R(n,r)].join(`
7
+ import{a as x,b as f,c as m,d}from"./FNNGQ3LB.js";import{b as y,d as h,e as l}from"./NB54XRRU.js";import{m as P}from"./HJYFWIVE.js";import{join as E}from"node:path";function q(e,t){let n=x(e,"tanstack-query");if(n.length===0)return"";let r=t.pagination??new Map;return[j(n,t,r),...n.filter(f).map(i=>K(i,t.queryKeyPrefix)),Q(e,n,r,t.queryKeyPrefix,t.argsStyle),...R(n,r)].join(`
8
8
  `)}function b(e,t){if(!f(e))return!1;let n=t.get(e.name);return n!==void 0&&n.spec.style!=="link"}function j(e,t,n){let r=[...e.some(a=>b(a,n))?["infiniteQueryOptions"]:[],...e.some(f)?["queryOptions"]:[]],s=[...e.filter(m).map(d),"RequestOptions"].sort().map(a=>`type ${a}`),i=[];return r.length>0&&i.push(`import { ${r.join(", ")} } from "@tanstack/${t.framework}-query";`),i.push(`import { client, ${s.join(", ")} } from "${t.sdkModule}";`),i.join(`
9
9
  `)}function K(e,t){let n=M(e,t);return m(e)?`export const ${e.name}QueryKey = (vars?: ${d(e)}) =>
10
10
  vars === undefined ? ([${n}] as const) : ([${n}, vars] as const);`:`export const ${e.name}QueryKey = () => [${n}] as const;`}function M(e,t){return t===void 0?`"${e.name}"`:`${h(t)}, "${e.name}"`}function Q(e,t,n,r,s){return`/**
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as T}from"./VGBSMXRM.js";import{a as x,e as M,f as j,i as H,j as O,k as f,l as v}from"./NB54XRRU.js";import{n as N}from"./HJYFWIVE.js";function w(e){return e.contentType==="multipart/form-data"&&e.schema.kind==="object"}var V=" ";function K(e,s=[]){let t=N(e,{schemas:s});return t==="integer"?"number":t}function re(e,s=[]){let t=C(e,s);if(t.length!==0)return t.map(n=>({name:n.name,key:n.key,type:n.type}))}function q(e,s=[],t=""){let n=t+V,r=C(e,s).map(o=>`${n}${o.key}${o.required===!0?"":"?"}: ${o.type};`);return r.length===0?"{}":`{
7
+ import{a as T}from"./VFTQZ2K5.js";import{a as x,e as M,f as j,i as H,j as O,k as f,l as v}from"./NB54XRRU.js";import{n as N}from"./HJYFWIVE.js";function w(e){return e.contentType==="multipart/form-data"&&e.schema.kind==="object"}var V=" ";function K(e,s=[]){let t=N(e,{schemas:s});return t==="integer"?"number":t}function re(e,s=[]){let t=C(e,s);if(t.length!==0)return t.map(n=>({name:n.name,key:n.key,type:n.type}))}function q(e,s=[],t=""){let n=t+V,r=C(e,s).map(o=>`${n}${o.key}${o.required===!0?"":"?"}: ${o.type};`);return r.length===0?"{}":`{
8
8
  ${r.join(`
9
9
  `)}
10
10
  ${t}}`}function C(e,s){let t=new Set;return(e??[]).map(n=>({...n,key:j(v(n.name),t),type:K(n.schema,s)}))}var E=" ";function h(e,s,t){let n=O(e,s);return n===void 0?[]:[`${t}/**`,...H(n).split(`
@@ -4,19 +4,19 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as oe,e as ae,f as ue,g as ce,h as b,i as de,k as H,l as V,m as pe,n as le,v as he,w as me}from"./HKNDR3ZE.js";import{D as X,E as g,F as O,G as Z,H as $,I as C,K as S,M as y,O as w,Q as ee,R as te,S as Je,W as ne,Y as re,_ as se,aa as ie,c as l,p as Y,u as Q,x as We}from"./M3XP3LQ3.js";import{e as J}from"./RFWIIJFG.js";import fe from"node:path";function R(t){return t?t.trim():""}function T(t){let e=R(t.operationId)||R(t.path);return[R(t.ruleId),R(t.severity),R(t.message),e,R(t.target),R(t.schemaPath)].join("")}var F=t=>X(S(t));function Ye(t){return t==="error"?"error":t==="warning"?"warning":"note"}function Qe(t){if(t==null)return"";let e=String(t);return!e.includes(",")&&!e.includes('"')&&!e.includes(`
7
+ import{a as oe,e as ae,f as ue,g as ce,h as b,i as de,k as H,l as V,m as pe,n as le,v as he,w as me}from"./L3LA7UTJ.js";import{H as X,J as Je,K as Z,L as g,M as O,N as ee,O as $,P as C,R as S,T as y,V as w,W as te,X as ne,Y as re,_ as se,aa as ie,c as l,p as Y,u as Q,x as We}from"./AYCCHB2H.js";import{e as J}from"./RFWIIJFG.js";import fe from"node:path";function R(t){return t?t.trim():""}function T(t){let e=R(t.operationId)||R(t.path);return[R(t.ruleId),R(t.severity),R(t.message),e,R(t.target),R(t.schemaPath)].join("")}var F=t=>Z(S(t));function Ye(t){return t==="error"?"error":t==="warning"?"warning":"note"}function Qe(t){if(t==null)return"";let e=String(t);return!e.includes(",")&&!e.includes('"')&&!e.includes(`
8
8
  `)?e:`"${e.replace(/"/g,'""')}"`}function Xe(t){return fe.isAbsolute(t)?fe.relative(process.cwd(),t)||".":t}function Ze(t){if(!t)return null;let e=t.operationPathTemplate;return typeof e=="string"&&e.length>0?e:null}function et(t){return Object.entries(t).sort((e,r)=>{let n=r[1]-e[1];return n!==0?n:e[0].localeCompare(r[0])})}function tt(t){let e=[],r=new Map;for(let n of t){let s=T({ruleId:n.ruleId,severity:n.severity,message:n.message,operationId:n.operationId,path:n.path,target:n.target,schemaPath:n.schemaPath}),i=r.get(s);if(i!==void 0){e[i].occurrences+=1;continue}r.set(s,e.length),e.push({finding:n,occurrences:1})}return e}function nt(t){let e=tt(t.findings).map(n=>({occurrences:n.occurrences,exchangeIndex:n.finding.exchangeIndex,ruleId:n.finding.ruleId,severity:n.finding.severity,category:n.finding.category,message:n.finding.message,operationId:n.finding.operationId,specSource:n.finding.specSource,target:n.finding.target,schemaPath:n.finding.schemaPath,dataPath:n.finding.dataPath,details:n.finding.details,method:n.finding.method,url:n.finding.url,path:n.finding.path,status:n.finding.status})),r={run:{id:t.runId,specSource:t.meta.specSource,trafficPath:t.meta.trafficPath,format:t.meta.format,matchMode:t.meta.matchMode,server:t.meta.server,totalExchanges:t.summary.totalExchanges,documentedExchanges:t.summary.documentedExchanges,undocumentedExchanges:t.summary.undocumentedExchanges,skippedExchanges:t.summary.skippedExchanges,findingsBySeverity:t.summary.findingsBySeverity,findingsByRule:t.summary.findingsByRule,totalProblems:t.summary.totalProblemGroups,durationMs:t.summary.durationMs},problems:e};return`${JSON.stringify(r,null,2)}
9
9
  `}function rt(t){let e=["run_id","finding_id","exchange_index","severity","category","rule_id","message","method","path","url","status","operation_id","spec_source","target","schema_path","data_path"],r=t.findings.map(s=>[t.runId,s.id,s.exchangeIndex,s.severity,s.category,s.ruleId,s.message,s.method,s.path,s.url,s.status,s.operationId,s.specSource,s.target,s.schemaPath,s.dataPath]);return`${[e,...r].map(s=>s.map(Qe).join(",")).join(`
10
10
  `)}
11
11
  `}function st(t){let e=new Map;for(let s of t.findings)e.has(s.ruleId)||e.set(s.ruleId,{id:s.ruleId,name:s.ruleId,shortDescription:{text:`${s.category} detection`}});let r=t.findings.map(s=>{let i=s.specSource??s.url??void 0;return{ruleId:s.ruleId,level:Ye(s.severity),message:{text:s.message},locations:i?[{physicalLocation:{artifactLocation:{uri:i}}}]:void 0,properties:{runId:t.runId,exchangeIndex:s.exchangeIndex,method:s.method,path:s.path,status:s.status,operationId:s.operationId,target:s.target,schemaPath:s.schemaPath,dataPath:s.dataPath}}}),n={$schema:"https://json.schemastore.org/sarif-2.1.0.json",version:"2.1.0",runs:[{tool:{driver:{name:"drift",rules:Array.from(e.values())}},results:r}]};return`${JSON.stringify(n,null,2)}
12
- `}function it(t){return t.findingsBySeverity.error+t.findingsBySeverity.warning+t.findingsBySeverity.info}function ot(t){return t>=500?O:t>=400?$:t>=300?C:t>=200?Z:y}function at(t,e,r){let n=(h,f)=>e?f(h):h,s=h=>h==="error"?n("\u2716",O):h==="warning"?n("\u25B2",$):n("\u25CF",C),i=h=>h==="error"?n("ERROR",O):h==="warning"?n("WARN",$):n("INFO",C),{summary:o,meta:a}=t,c=it(o),p=o.previewFindings.slice(0,r),u=[];if(u.push(n("\u250F\u2501 Drift Report",F)),u.push(`\u2503 Run: ${t.runId}`),u.push(`\u2503 Spec: ${a.specSource}`),u.push(`\u2503 Traffic: ${a.trafficPath}`),u.push(a.server?`\u2503 Server: ${a.server} (overrides description servers)`:`\u2503 Match mode: ${a.matchMode}`),u.push(`\u2503 Traffic format: ${a.format}${a.format==="auto"?" (auto-detect)":""}`),u.push(`\u2503 Exchanges: total=${o.totalExchanges} documented=${o.documentedExchanges} undocumented=${o.undocumentedExchanges}${o.skippedExchanges>0?` skipped=${o.skippedExchanges}`:""}`),u.push(`\u2503 Findings: total=${c} ${n(`error=${o.findingsBySeverity.error}`,O)} ${n(`warning=${o.findingsBySeverity.warning}`,$)} ${n(`info=${o.findingsBySeverity.info}`,C)}`),u.push(`\u2503 Problems: total=${o.totalProblemGroups}`),u.push(`\u2517 Duration: ${o.durationMs}ms`),c===0)return u.push(""),u.push(n("\u2714 No findings.",S)),`${u.join(`
12
+ `}function it(t){return t.findingsBySeverity.error+t.findingsBySeverity.warning+t.findingsBySeverity.info}function ot(t){return t>=500?O:t>=400?$:t>=300?C:t>=200?ee:y}function at(t,e,r){let n=(h,f)=>e?f(h):h,s=h=>h==="error"?n("\u2716",O):h==="warning"?n("\u25B2",$):n("\u25CF",C),i=h=>h==="error"?n("ERROR",O):h==="warning"?n("WARN",$):n("INFO",C),{summary:o,meta:a}=t,c=it(o),p=o.previewFindings.slice(0,r),u=[];if(u.push(n("\u250F\u2501 Drift Report",F)),u.push(`\u2503 Run: ${t.runId}`),u.push(`\u2503 Spec: ${a.specSource}`),u.push(`\u2503 Traffic: ${a.trafficPath}`),u.push(a.server?`\u2503 Server: ${a.server} (overrides description servers)`:`\u2503 Match mode: ${a.matchMode}`),u.push(`\u2503 Traffic format: ${a.format}${a.format==="auto"?" (auto-detect)":""}`),u.push(`\u2503 Exchanges: total=${o.totalExchanges} documented=${o.documentedExchanges} undocumented=${o.undocumentedExchanges}${o.skippedExchanges>0?` skipped=${o.skippedExchanges}`:""}`),u.push(`\u2503 Findings: total=${c} ${n(`error=${o.findingsBySeverity.error}`,O)} ${n(`warning=${o.findingsBySeverity.warning}`,$)} ${n(`info=${o.findingsBySeverity.info}`,C)}`),u.push(`\u2503 Problems: total=${o.totalProblemGroups}`),u.push(`\u2517 Duration: ${o.durationMs}ms`),c===0)return u.push(""),u.push(n("\u2714 No findings.",S)),`${u.join(`
13
13
  `)}
14
14
  `;u.push(""),u.push(n(`Types (${Object.keys(o.problemGroupsByRule).length})`,F));for(let[h,f]of et(o.problemGroupsByRule)){let v=o.findingsByRule[h]??f;u.push(` ${n("\u2022",y)} ${h}: ${f} problems / ${v} findings`)}let m=new Map;for(let h of p)m.has(h.ruleId)||m.set(h.ruleId,[]),m.get(h.ruleId).push(h);let x=Array.from(m.keys()).sort((h,f)=>{let v=(o.problemGroupsByRule[f]??0)-(o.problemGroupsByRule[h]??0);return v!==0?v:h.localeCompare(f)});u.push(""),u.push(n(`Problems by type (showing first ${p.length} of ${o.totalProblemGroups})`,F));let q=0;for(let h of x){let f=m.get(h);if(!f||f.length===0)continue;let v=o.problemGroupsByRule[h]??f.length,ze=o.findingsByRule[h]??v;u.push(""),u.push(`${n("\u25C9",S)} ${n(h,F)} ${n(`(${f.length} problems shown / ${v} total, ${ze} findings)`,y)}`);for(let d of f){q+=1;let U=d.occurrences,De=d.status!==void 0?n(String(d.status),ot(d.status)):n("-",y),Ke=Ze(d.details)??d.path,Ue=d.operationId?` ${n(d.operationId,g)}`:"";if(u.push(`${s(d.severity)} ${i(d.severity)} #${q}${U>1?` ${n(`\xD7${U}`,y)}`:""} ${n("\u2192",y)} ${d.message}`),u.push(` \u21B3 sample exchange=${d.exchangeIndex} ${n(d.method,S)} ${Ke} (${De})${Ue}`),u.push(""),u.push(` ${n(d.url,y)}`),(d.specSource||d.schemaPath||d.dataPath)&&(u.push(""),d.specSource&&u.push(` ${n("spec:",g)} ${n(Xe(d.specSource),S)}`),d.schemaPath&&u.push(` ${n("schemaPath=",g)} ${n(d.schemaPath,g)}`),d.dataPath&&u.push(` ${n("dataPath=",g)} ${n(d.dataPath,S)}`)),d.details)if(u.push(""),d.ruleId==="security-baseline"&&typeof d.details.summary=="string")u.push(` ${n("security:",g)} ${d.details.summary}`);else if(d.ruleId==="owasp-api-top10"&&typeof d.details.summary=="string"){let k=typeof d.details.issueId=="string"?d.details.issueId:null,A=typeof d.details.issueTitle=="string"?d.details.issueTitle:null;u.push(` ${n("owasp:",g)} ${d.details.summary}`),(k||A)&&u.push(` ${n("issue:",g)} ${[k,A].filter(Boolean).join(" - ")}`)}else if(d.ruleId==="schema-consistency"&&typeof d.details.summary=="string"){let k=typeof d.details.path=="string"?d.details.path:null,A=typeof d.details.expected=="string"?d.details.expected:null,G=typeof d.details.actual=="string"?d.details.actual:null,W=typeof d.details.suggestion=="string"?d.details.suggestion:null;if(u.push(` ${n("schema:",g)} ${d.details.summary}`),k&&u.push(` ${n("path:",g)} ${n(k,S)}`),A&&u.push(` ${n("expected:",g)} ${A}`),G&&u.push(` ${n("actual:",g)} ${G}`),W){u.push(` ${n("hint:",g)}`);for(let Ge of W.split(`
15
15
  `))u.push(` ${Ge}`)}}else u.push(` ${n("details:",g)} ${JSON.stringify(d.details)}`);u.push("")}}let P=o.totalProblemGroups-p.length;return P>0?(u[u.length-1]!==""&&u.push(""),u.push(n(`\u2026 ${P} problems omitted from terminal output. Use --format json/csv/sarif for the complete export.`,y))):u[u.length-1]===""&&u.pop(),`${u.join(`
16
16
  `)}
17
17
  `}function Hn(t,e){let r=e.maxFindings??10;switch(e.format){case"json":return nt(t);case"csv":return rt(t);case"sarif":return st(t);case"pretty":return at(t,e.color??!1,r);default:throw new Error(`Unsupported report format: ${e.format}`)}}import{randomUUID as Be}from"node:crypto";function ut(t,e){let r=b(t||"/")||"/",n=b(e.basePath||"/")||"/";return n==="/"?r:r===n?"/":r.startsWith(`${n}/`)?r.slice(n.length)||"/":null}function ct(t,e){return!t.host||!e?!0:t.host===e.toLowerCase()}function dt(t){try{return decodeURIComponent(t)}catch{return t}}function pt(t,e,r){let n=r==="strict-host"?e.host?20:5:0;return t.pathScore*10+n}function ge(t,e){let r={};for(let n=0;n<t.pathParams.length;n+=1){let s=t.pathParams[n],i=e[n+1];s&&i!==void 0&&(r[s]=dt(i))}return r}function lt(t,e){let r=b(e)||"/";for(let n of t){let s=n.pathRegex.exec(r);if(s)return{operation:n,pathParams:ge(n,s)}}return null}function ye(t,e,r,n){let s=e.request.method.toLowerCase(),i=t.operationsByMethod.get(s);if(!i||i.length===0)return null;if(n!==void 0)return lt(i,n);let o=null;for(let a of i)for(let c of a.servers){if(r==="strict-host"&&!ct(c,e.request.host))continue;let p=ut(e.request.path,c);if(!p)continue;let u=a.pathRegex.exec(p);if(!u)continue;let m={score:pt(a,c,r),matched:{operation:a,pathParams:ge(a,u)}};(!o||m.score>o.score)&&(o=m)}return o?.matched??null}var Se=6,ht=2e3,mt=50,ft=5,gt=1e6,yt=/(?:token|api[_-]?key|apikey|password|passwd|secret|authorization|jwt)/i,St=/(?:password|passwd|secret|api[_-]?key|access[_-]?token|refresh[_-]?token|private[_-]?key|ssn|credit[_-]?card|card[_-]?number|cvv)/i,vt=new Set(["page","limit","offset","cursor","per_page","perpage","size","start","after","before"]),ve=4,wt=ve*2;function Rt(t){return t.length<=wt?"***":`${t.slice(0,ve)}\u2026`}function It(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}function Pt(t){return typeof t=="string"||typeof t=="number"}function bt(t){let e=t.toLowerCase();return e.includes("secret")||e.includes("token")||e.includes("key")?e.startsWith("is")||e.startsWith("has")||e.startsWith("can")||e.startsWith("should")||e.startsWith("enable")||e.startsWith("allow"):!1}function xt(t){if(typeof t=="number")return t===0||t===1;let e=t.trim().toLowerCase();return e==="true"||e==="false"||e==="0"||e==="1"}function kt(t){if(!l(t)&&!Array.isArray(t))return[];let e=[],r=[{value:t,path:""}],n=0;for(;r.length>0&&n<ht&&e.length<Se;){let s=r.pop();if(!s)break;if(n+=1,Array.isArray(s.value)){let i=Math.min(s.value.length,mt);for(let o=0;o<i;o+=1){let a=s.value[o];(l(a)||Array.isArray(a))&&r.push({value:a,path:`${s.path}/${o}`})}continue}if(l(s.value))for(let[i,o]of Object.entries(s.value)){let a=`${s.path}/${It(i)}`;if(St.test(i)&&Pt(o)){let c=String(o);if(bt(i)&&xt(o))continue;if(c.length>0&&(e.push(a||"/"),e.length>=Se))break}(l(o)||Array.isArray(o))&&r.push({value:o,path:a})}}return e}function At(t){for(let e of t.keys())if(vt.has(e.toLowerCase()))return!0;return!1}function I(t,e,r,n,s){return{ruleId:"owasp-api-top10",severity:n,category:"security",message:e,exchangeIndex:t.exchange.index,operationId:t.matchedOperation?.operation.operationId,specSource:t.matchedOperation?.operation.specSource,target:r,details:s}}function Ot(t){let e=[];for(let[r,n]of t.exchange.request.query.entries())if(yt.test(r)&&(e.push({key:r,valuePreview:Rt(n)}),e.length>=ft))break;return e.length===0?[]:[I(t,"Sensitive credential-like query parameters detected","request","warning",{issueId:"API2:2023",issueTitle:"Broken Authentication",summary:"Authentication data should not be passed via query parameters because it can leak via logs, browser history, and referrers.",sensitiveQueryParams:e})]}function $t(t){let e=t.exchange.response;if(!e)return[];let r=e.headers["access-control-allow-origin"]?.trim(),n=e.headers["access-control-allow-credentials"]?.trim().toLowerCase();return r!=="*"||n!=="true"?[]:[I(t,"Insecure CORS policy: wildcard origin with credentials enabled","response","error",{issueId:"API8:2023",issueTitle:"Security Misconfiguration",summary:'Access-Control-Allow-Origin is "*" while Access-Control-Allow-Credentials is true. Browsers may expose authenticated API responses to untrusted origins.',headers:{accessControlAllowOrigin:r,accessControlAllowCredentials:n}})]}function Ct(t){let e=t.exchange.response;if(!e)return[];let r=e.headers["set-cookie"];if(!r)return[];let n=[];for(let s of ue(r)){let i=new Set(s.split(";").slice(1).map(o=>o.split("=")[0].trim().toLowerCase()));t.exchange.request.protocol==="https:"&&!i.has("secure")&&n.push(I(t,'Set-Cookie header is missing "Secure" attribute',"response","warning",{issueId:"API2:2023",issueTitle:"Broken Authentication",summary:'Session cookies over HTTPS should include "Secure" to prevent transmission over plain HTTP.',setCookiePreview:s.slice(0,200)})),i.has("httponly")||n.push(I(t,'Set-Cookie header is missing "HttpOnly" attribute',"response","warning",{issueId:"API2:2023",issueTitle:"Broken Authentication",summary:'Session cookies should include "HttpOnly" to reduce risk of token theft via client-side script access.',setCookiePreview:s.slice(0,200)})),i.has("samesite")||n.push(I(t,'Set-Cookie header is missing "SameSite" attribute',"response","info",{issueId:"API8:2023",issueTitle:"Security Misconfiguration",summary:'Set "SameSite" on session cookies to reduce CSRF risk for state-changing requests.',setCookiePreview:s.slice(0,200)}))}return n}function Et(t){let e=t.exchange.response;if(!e||e.bodyJson===void 0)return[];let r=kt(e.bodyJson);return r.length===0?[]:[I(t,"Potential sensitive data exposure in response payload","response","warning",{issueId:"API3:2019",issueTitle:"Excessive Data Exposure",summary:`Sensitive-looking fields detected in response payload: ${r.join(", ")}`,exposedPaths:r})]}function qt(t){let e=t.exchange.response;return!e||e.status>=400||t.exchange.request.method!=="GET"?[]:!e.bodyText||e.bodyText.length<gt?[]:At(t.exchange.request.query)?[]:[I(t,"Large response without pagination parameters (possible resource-consumption risk)","response","info",{issueId:"API4:2023",issueTitle:"Unrestricted Resource Consumption",summary:"A large response was returned without common pagination query parameters. Consider explicit page/limit controls for large collections.",responseBytes:e.bodyText.length})]}var M=class{id="owasp-api-top10";analyze(e){return e.matchedOperation?[...Ot(e),...$t(e),...Ct(e),...Et(e),...qt(e)]:[]}};var we=200;function Re(t){return t!==void 0&&t!==""}function Tt(t){if(!t)return{};let e={};for(let r of t.split(";")){let[n,...s]=r.trim().split("=");if(!n)continue;let i=s.join("=").trim();e[n]=i}return e}function Ft(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function Mt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}function jt(t){return!t||t==="#"?"":t.startsWith("#")?t.slice(1):t}function N(t){let e=jt(t);return!e||e==="/"?[]:e.split("/").slice(1).map(r=>Ft(r))}function Ie(t,e){return`/${[...N(t),Mt(e)].join("/")}`}function Bt(t,e){let r=N(e),n=t;for(let s of r){if(Array.isArray(n)){let i=Number.parseInt(s,10);if(!Number.isInteger(i)||i<0||i>=n.length)return;n=n[i];continue}if(!l(n))return;n=n[s]}return n}function z(t){let e=t.instancePath??"",r=t.params??{};return t.keyword==="required"&&typeof r.missingProperty=="string"?Ie(e,r.missingProperty):t.keyword==="additionalProperties"&&typeof r.additionalProperty=="string"?Ie(e,r.additionalProperty):e}function Lt(t){let e=N(t);if(e.length===0)return"root";let r=[];for(let n of e)/^\d+$/.test(n)?r.push(`[${n}]`):r.length===0?r.push(n):r.push(`.${n}`);return r.join("")}function _t(t){if(t===void 0)return"[missing]";let e=JSON.stringify(t);return e?e.length>we?`${e.slice(0,we)}\u2026`:e:String(t)}function Ht(t){let e=t.params??{};if(t.keyword==="required"&&typeof e.missingProperty=="string")return`required field "${e.missingProperty}"`;if(t.keyword==="type"&&typeof e.type=="string")return`type "${e.type}"`;if(t.keyword==="additionalProperties")return"no additional undocumented properties";if(t.keyword==="format"&&typeof e.format=="string")return`format "${e.format}"`}function Vt(t,e,r){let n=t==="request"?"Request":"Response",s=e.params??{},i=Lt(r);return e.keyword==="required"&&typeof s.missingProperty=="string"?`${n} is missing required field "${i}".`:e.keyword==="additionalProperties"&&typeof s.additionalProperty=="string"?`${n} has undocumented field "${i}".`:e.keyword==="type"&&typeof s.type=="string"?`${n} field "${i}" must be ${s.type}.`:e.keyword==="enum"?`${n} field "${i}" has a value outside allowed enum values.`:e.keyword==="format"&&typeof s.format=="string"?`${n} field "${i}" does not match format "${s.format}".`:`${n} schema mismatch at "${i}": ${e.message??"validation error"}`}function be(t,e,r){let n=z(e),s=Bt(t,n);return{summary:Vt(r,e,n),keyword:e.keyword??null,path:n||"/",expected:Ht(e)??null,actual:_t(s),suggestion:null,params:e.params??{},ajvMessage:e.message??"validation error"}}function Nt(t,e,r,n){if(e==null||!t.schema)return;let s=r.validateSchema(t.schema,e,{coerce:!0});if(!s.valid)for(let i of s.errors){let o=be(e,i,"request");n.push({ruleId:"schema-consistency",severity:"error",category:"schema",message:`Invalid ${t.in} parameter "${t.name}": ${typeof o.summary=="string"?o.summary:i.message??"schema mismatch"}`,exchangeIndex:r.exchange.index,operationId:r.matchedOperation?.operation.operationId,specSource:r.matchedOperation?.operation.specSource,target:"request",schemaPath:i.schemaPath,dataPath:z(i),details:{...o,parameter:{name:t.name,in:t.in}}})}}var zt=/^([^[\]]+)\[([^[\]]+)\]$/;function xe(t){let e=t.match(zt);return e?{parameterName:e[1],property:e[2]}:void 0}function Dt(t,e){let r;for(let[n,s]of e){let i=xe(n);i?.parameterName===t&&(r??={},r[i.property]=s)}return r}function Kt(t,e,r){switch(t.in){case"path":return e.matchedOperation?.pathParams[t.name];case"query":{if(t.style==="deepObject")return Dt(t.name,e.exchange.request.query);let n=e.exchange.request.query.getAll(t.name);return n.length===0?void 0:(l(t.schema)?t.schema.type:void 0)==="array"||n.length>1?n:n[0]}case"header":return e.exchange.request.headers[t.name.toLowerCase()];case"cookie":return r[t.name];default:return}}function Ut(t,e){let r=[],n={query:new Set,header:new Set,cookie:new Set},s=new Set;for(let i of e.operation.requestParameters)i.in==="header"?n.header.add(i.name.toLowerCase()):(i.in==="query"||i.in==="cookie")&&(n[i.in].add(i.name),i.in==="query"&&i.style==="deepObject"&&s.add(i.name));for(let i of new Set(t.exchange.request.query.keys())){if(n.query.has(i))continue;let o=xe(i);o&&s.has(o.parameterName)||r.push({ruleId:"schema-consistency",severity:"warning",category:"documentation",message:`Undocumented query parameter in traffic: "${i}"`,exchangeIndex:t.exchange.index,operationId:e.operation.operationId,specSource:e.operation.specSource,target:"request"})}for(let i of Object.keys(t.exchange.request.headers))le(i,t.ignoreHeaders)||n.header.has(i.toLowerCase())||r.push({ruleId:"schema-consistency",severity:"info",category:"documentation",message:`Undocumented header in traffic: "${i}"`,exchangeIndex:t.exchange.index,operationId:e.operation.operationId,specSource:e.operation.specSource,target:"request"});return r}function Gt(t){let e=t.exchange.response;return e!==void 0&&e.status>=400&&e.status<500}function Wt(t,e){let r=t.exchange.response;if(!r)return;let n=String(r.status),s=`${Math.floor(r.status/100)}XX`,i=e.operation.responseBodyContent[n]??e.operation.responseBodyContent[s]??e.operation.responseBodyContent[s.toLowerCase()]??e.operation.responseBodyContent.default;if(i)return V(i,r.contentType)}function Pe(t,e,r,n){let s=r.validateSchema(t,e,{target:n});return s.valid?[]:s.errors.map(i=>{let o=be(e,i,n);return{ruleId:"schema-consistency",severity:"error",category:"schema",message:typeof o.summary=="string"?o.summary:`Schema mismatch (${n}): ${i.message??"validation error"}`,exchangeIndex:r.exchange.index,operationId:r.matchedOperation?.operation.operationId,specSource:r.matchedOperation?.operation.specSource,target:n,schemaPath:i.schemaPath,dataPath:z(i),details:o}})}var j=class{id="schema-consistency";analyze(e){let r=e.matchedOperation;if(!r)return[];let n=[],s=Tt(e.exchange.request.headers.cookie);if(n.push(...Ut(e,r)),!Gt(e)){for(let p of r.operation.requestParameters){if(e.ignoreCookies&&p.in==="cookie")continue;let u=Kt(p,e,s);if(p.required&&u==null){n.push({ruleId:this.id,severity:"error",category:"documentation",message:`Missing required ${p.in} parameter: "${p.name}"`,exchangeIndex:e.exchange.index,operationId:r.operation.operationId,specSource:r.operation.specSource,target:"request"});continue}Nt(p,u,e,n)}let o=e.exchange.request.contentType,a=V(r.operation.requestBodyContent,o),c=Re(e.exchange.request.bodyText);r.operation.requestBodyRequired&&!c&&n.push({ruleId:this.id,severity:"error",category:"documentation",message:"Missing required request body",exchangeIndex:e.exchange.index,operationId:r.operation.operationId,specSource:r.operation.specSource,target:"request"}),a&&c&&H(o)&&(e.exchange.request.bodyJson===void 0?n.push({ruleId:this.id,severity:"error",category:"schema",message:"Request body is not valid JSON for JSON content-type",exchangeIndex:e.exchange.index,operationId:r.operation.operationId,specSource:r.operation.specSource,target:"request"}):n.push(...Pe(a,e.exchange.request.bodyJson,e,"request")))}let i=Wt(e,r);if(i&&e.exchange.response&&Re(e.exchange.response.bodyText)){let o=e.exchange.response.contentType;H(o)&&(e.exchange.response.bodyJson===void 0?n.push({ruleId:this.id,severity:"error",category:"schema",message:"Response body is not valid JSON for JSON content-type",exchangeIndex:e.exchange.index,operationId:r.operation.operationId,specSource:r.operation.specSource,target:"response"}):n.push(...Pe(i,e.exchange.response.bodyJson,e,"response")))}return n}};function D(t){if(!t)return null;let[e]=t.trim().split(/\s+/,1);return e?e.toLowerCase():null}function Ae(t){return!!t.exchange.request.headers.authorization}function Jt(t,e){return t?t.split(";").map(r=>r.trim()).some(r=>r.startsWith(`${e}=`)):!1}function Yt(t,e){let r=t.matchedOperation?.operation;if(!r)return{schemeName:e,schemeType:"unknown",satisfied:!0,reason:"No matched OpenAPI operation."};let n=r.securitySchemes[e];if(!n)return{schemeName:e,schemeType:"missing",satisfied:!1,reason:"Security scheme is referenced but not defined in components.securitySchemes."};let s=String(n.type??"unknown");if(n.type==="apiKey"){let i=String(n.name??""),o=String(n.in??"header");if(!i)return{schemeName:e,schemeType:s,satisfied:!1,reason:'apiKey scheme is missing the "name" field in the OpenAPI spec.'};if(o==="header"){let a=!!t.exchange.request.headers[i.toLowerCase()];return{schemeName:e,schemeType:s,satisfied:a,reason:a?`Found required apiKey header "${i}".`:`Missing required apiKey header "${i}".`}}if(o==="query"){let a=t.exchange.request.query.has(i);return{schemeName:e,schemeType:s,satisfied:a,reason:a?`Found required apiKey query parameter "${i}".`:`Missing required apiKey query parameter "${i}".`}}if(o==="cookie"){if(t.ignoreCookies)return{schemeName:e,schemeType:s,satisfied:!0,skipped:!0,reason:`Skipped apiKey cookie "${i}" validation because --ignore-cookies is enabled.`};let a=Jt(t.exchange.request.headers.cookie,i);return{schemeName:e,schemeType:s,satisfied:a,reason:a?`Found required apiKey cookie "${i}".`:`Missing required apiKey cookie "${i}".`}}return{schemeName:e,schemeType:s,satisfied:!1,reason:`Unsupported apiKey location "${o}" in OpenAPI security scheme.`}}if(n.type==="http"){let i=t.exchange.request.headers.authorization;if(!i)return{schemeName:e,schemeType:s,satisfied:!1,reason:"Missing Authorization header."};let o=String(n.scheme??"").toLowerCase(),a=D(i);if(!o)return{schemeName:e,schemeType:s,satisfied:!0,reason:"Authorization header is present and no specific HTTP auth scheme is documented."};if(!a)return{schemeName:e,schemeType:s,satisfied:!1,reason:"Authorization header is malformed and does not include an auth scheme."};let c=a===o;return{schemeName:e,schemeType:s,satisfied:c,reason:c?`Authorization uses expected "${o}" scheme.`:`Authorization uses "${a}" but "${o}" is required.`}}if(n.type==="oauth2"||n.type==="openIdConnect"){let i=t.exchange.request.headers.authorization;if(!i)return{schemeName:e,schemeType:s,satisfied:!1,reason:"Missing Authorization header for OAuth2/OpenID Connect scheme."};let o=D(i),a=o==="bearer";return{schemeName:e,schemeType:s,satisfied:a,reason:a?"Authorization uses bearer token as expected for OAuth2/OpenID Connect.":`Authorization scheme "${o??"unknown"}" does not satisfy OAuth2/OpenID Connect (expected bearer).`}}return n.type==="mutualTLS"?{schemeName:e,schemeType:s,satisfied:!0,reason:"mutualTLS cannot be validated from HTTP traffic logs alone."}:{schemeName:e,schemeType:s,satisfied:!1,reason:`Unsupported security scheme type "${s}".`}}function Qt(t){let e=t.matchedOperation?.operation.security;if(!e)return{satisfied:!0,requirements:[]};if(e.length===0)return{satisfied:!0,requirements:[]};let r=e.map((n,s)=>{let i=Object.keys(n);if(i.length===0)return{requirementIndex:s,satisfied:!0,schemeResults:[]};let o=i.map(a=>Yt(t,a));return{requirementIndex:s,satisfied:o.every(a=>a.satisfied),schemeResults:o}});return{satisfied:r.some(n=>n.satisfied),requirements:r}}function Xt(t){let e=[];for(let r of t.requirements)for(let n of r.schemeResults)n.satisfied||e.push({requirement:r.requirementIndex+1,schemeName:n.schemeName,reason:n.reason});return e}function ke(t){let e=[];for(let r of t.requirements)for(let n of r.schemeResults)n.skipped&&e.push({requirement:r.requirementIndex+1,schemeName:n.schemeName,reason:n.reason});return e}function Zt(t){if(t.length===0)return"All documented security requirements are satisfied.";let e=new Map;for(let n of t){let s=e.get(n.requirement);s?s.push(n):e.set(n.requirement,[n])}let r=Array.from(e.entries()).sort((n,s)=>n[0]-s[0]).map(([n,s])=>{let i=s.map(a=>a.schemeName).join(" + "),o=s.map(a=>a.reason).join(" ");return`Option ${n} (${i}): ${o}`});return r.length===1?`Authentication check failed. ${r[0]}`:`None of the documented authentication options matched. Any one of these options would satisfy the OpenAPI security requirements: ${r.join(" | ")}`}function en(t){return Array.from(t.exchange.request.query.keys()).filter(e=>{let r=e.toLowerCase();return r.includes("token")||r.includes("apikey")||r.includes("api_key")||r.includes("access_key")})}var tn=/^(?:(?:.+\.)?localhost|127(?:\.\d{1,3}){3}|::1)$/i;function nn(t){let e;try{e=new URL(t.url).hostname}catch{e=t.host?.replace(/:\d+$/,"")}return e?tn.test(e.replace(/^\[|\]$/g,"")):!1}function rn(t){if(t.exchange.request.protocol!=="http:"||!t.exchange.request.protocolKnown||nn(t.exchange.request))return{flag:!1,hasAuthHeader:!1,sensitiveQueryKeys:[]};let e=Ae(t),r=en(t);return{flag:e||r.length>0,hasAuthHeader:e,sensitiveQueryKeys:r}}var B=class{id="security-baseline";analyze(e){if(!e.matchedOperation)return[];let r=[],n=Qt(e);if(n.satisfied){let i=ke(n);i.length>0&&r.push({ruleId:this.id,severity:"info",category:"security",message:"Some documented cookie-based security checks were skipped",exchangeIndex:e.exchange.index,operationId:e.matchedOperation.operation.operationId,specSource:e.matchedOperation.operation.specSource,target:"request",details:{summary:i.map(o=>`Skipped option ${o.requirement} (${o.schemeName}): ${o.reason}`).join(" "),skippedChecks:i}})}else{let i=Xt(n);r.push({ruleId:this.id,severity:"error",category:"security",message:"Request does not satisfy documented OpenAPI security requirements",exchangeIndex:e.exchange.index,operationId:e.matchedOperation.operation.operationId,specSource:e.matchedOperation.operation.specSource,target:"request",details:{summary:Zt(i),failedChecks:i,skippedChecks:ke(n),authorizationScheme:D(e.exchange.request.headers.authorization),hasAuthorizationHeader:Ae(e)}})}let s=rn(e);return s.flag&&r.push({ruleId:this.id,severity:"warning",category:"security",message:"Potential credential exposure over insecure HTTP transport",exchangeIndex:e.exchange.index,operationId:e.matchedOperation.operation.operationId,specSource:e.matchedOperation.operation.specSource,target:"request",details:{protocol:e.exchange.request.protocol,hasAuthorizationHeader:s.hasAuthHeader,sensitiveQueryKeys:s.sensitiveQueryKeys}}),r}};var L=class{id="undocumented-endpoint";analyze(e){if(e.matchedOperation)return[];let{method:r,path:n,host:s}=e.exchange.request,o=e.matchMode==="strict-host"&&!e.hostCompatibleWithSpecServers?`Undocumented server: ${r} ${n} was sent to "${s}", which does not match any server in the description`:`Undocumented endpoint: ${r} ${n}`;return[{ruleId:this.id,severity:"error",category:"documentation",message:o,exchangeIndex:e.exchange.index,target:"request"}]}};var K={"undocumented-endpoint":()=>new L,"schema-consistency":()=>new j,"security-baseline":()=>new B,"owasp-api-top10":()=>new M},sn=Object.keys(K),on=["undocumented-endpoint","schema-consistency","security-baseline"];function Oe(t){return!t||t.length===0?on.map(e=>K[e]()):[...new Set(t)].map(e=>{let r=K[e];if(!r)throw new Error(`Unknown rule id: "${e}". Available rules: ${sn.join(", ")}`);return r()})}var Ee=J(We(),1);var qe=J(Je(),1),$e=Ee.default,Ce=qe.default;function an(t,e){return l(t)?e==="request"?t.readOnly===!0:t.writeOnly===!0:!1}function Te(t,e,r,n=new WeakSet){if(!l(t)||n.has(t))return!1;n.add(t);let s=t.properties;return l(s)&&an(s[e],r)?!0:[t.allOf,t.oneOf,t.anyOf].some(i=>Array.isArray(i)&&i.some(o=>Te(o,e,r,n)))}var un=new Set(["items","additionalItems","additionalProperties","unevaluatedItems","unevaluatedProperties","contains","propertyNames","not","if","then","else"]),cn=new Set(["allOf","anyOf","oneOf","prefixItems"]),dn=new Set(["properties","patternProperties","dependentSchemas","$defs","definitions"]);function Fe(t,e,r=new WeakSet){if(!l(t))return t;if(r.has(t))return!0;r.add(t);let n=i=>Fe(i,e,r),s={};for(let[i,o]of Object.entries(t))un.has(i)?s[i]=Array.isArray(o)?o.map(n):n(o):cn.has(i)&&Array.isArray(o)?s[i]=o.map(n):dn.has(i)&&l(o)?s[i]=Object.fromEntries(Object.entries(o).map(([a,c])=>[a,n(c)])):s[i]=o;return Array.isArray(t.required)&&(s.required=t.required.filter(i=>typeof i!="string"||!Te(t,i,e))),r.delete(t),s}var E=class{ajv;fallbackAjv;objectSchemaCaches={none:new WeakMap,request:new WeakMap,response:new WeakMap};scalarSchemaCache=new Map;constructor(e){let r={strict:!1,allErrors:!0,allowUnionTypes:!0,discriminator:!0,coerceTypes:e?.coerceTypes?"array":!1,validateFormats:!0,verbose:!0,formats:{enum:!0}};this.ajv=new $e(r),this.fallbackAjv=new $e({...r,discriminator:!1}),Ce(this.ajv),Ce(this.fallbackAjv)}validate(e,r,n){if(e===void 0)return{valid:!0,errors:[]};let s;try{s=this.getOrCompileValidator(e,n)}catch(a){return{valid:!1,errors:[{message:`Schema compilation failed: ${a.message}`}]}}let i=!!s(r),o=s.errors??[];return{valid:i,errors:o}}getOrCompileValidator(e,r){if(l(e)){let o=this.objectSchemaCaches[r??"none"],a=o.get(e);if(a)return a;let c=r?Fe(e,r):e,p=this.compileSchema(c);return o.set(e,p),p}let n=`${r??"none"}:${JSON.stringify(e)}`,s=this.scalarSchemaCache.get(n);if(s)return s;let i=this.compileSchema(e);return this.scalarSchemaCache.set(n,i),i}compileSchema(e){try{return this.ajv.compile(e)}catch{return this.fallbackAjv.compile(e)}}};var pn=10,Me={info:0,warning:1,error:2};function ln(){return{totalExchanges:0,documentedExchanges:0,undocumentedExchanges:0,skippedExchanges:0,hostCompatibleExchanges:0,findingsBySeverity:{info:0,warning:0,error:0},findingsByRule:{}}}function hn(t,e){t.findingsBySeverity[e.severity]+=1,t.findingsByRule[e.ruleId]=(t.findingsByRule[e.ruleId]??0)+1}function mn(t,e){return{...t,id:Be(),method:e.request.method,url:e.request.url,path:e.request.path,status:e.response?.status}}function fn(t,e){return{exchangeIndex:t.exchangeIndex,ruleId:t.ruleId,severity:t.severity,category:t.category,message:t.message,occurrences:1,operationId:t.operationId,specSource:t.specSource,target:t.target,schemaPath:t.schemaPath,dataPath:t.dataPath,details:t.details,method:e.request.method,url:e.request.url,path:e.request.path,status:e.response?.status}}function gn(t,e){if(!e)return;t.operationId||(t.operationId=e.operation.operationId),t.specSource||(t.specSource=e.operation.specSource);let r=t.details??{};if(!l(r)){t.details={operationPathTemplate:e.operation.pathTemplate};return}typeof r.operationPathTemplate!="string"&&(r.operationPathTemplate=e.operation.pathTemplate),t.details=r}function yn(t){let e=new Set,r=!1;for(let n of t.operationsByMethod.values())for(let s of n)for(let i of s.servers)i.host?e.add(i.host):r=!0;return{specServerHosts:e,hasHostlessSpecServer:r}}async function Sn(t,e){let r=[];for(let n of t)try{let s=await n.analyze(e);s.length>0&&r.push(...s)}catch(s){w.warn(`Rule "${n.id}" failed to execute: ${s.message}
18
- `)}return r}var je=class t{startedAt=Date.now();runId=Be();previewLimit;rules;schemaValidator=new E;coercingSchemaValidator=new E({coerceTypes:!0});options;counters=ln();findings=[];previewFindings=[];problemGroupsByRule={};problemKeyStats=new Map;totalProblemGroups=0;server;ignoreHeaders;minSeverityRank;specServerHosts;hasHostlessSpecServer;constructor(e,r){this.options=e,this.rules=r,this.server=he(e.server),this.ignoreHeaders=e.ignoreHeaders?pe(e.ignoreHeaders):void 0;let{specServerHosts:n,hasHostlessSpecServer:s}=yn(e.openApiIndex);this.specServerHosts=n,this.hasHostlessSpecServer=s,this.minSeverityRank=Me[e.minSeverity??"info"],this.previewLimit=e.previewFindingsLimit&&e.previewFindingsLimit>0?e.previewFindingsLimit:pn}static create(e){if(e.openApiIndex.loadedOperations===0)throw new Error("No OpenAPI operations available to validate traffic against.");return new t(e,Oe(e.activeRules))}async process(e){this.counters.totalExchanges+=1;let r;if(this.server!==void 0&&(r=me(e.request,this.server),r===void 0))return this.counters.skippedExchanges+=1,[];let n=this.isHostCompatible(e.request.host);n&&(this.counters.hostCompatibleExchanges+=1);let s=ye(this.options.openApiIndex,e,this.options.matchMode,r);s?this.counters.documentedExchanges+=1:this.counters.undocumentedExchanges+=1;let i=await Sn(this.rules,{exchange:e,matchedOperation:s,matchMode:this.options.matchMode,hostCompatibleWithSpecServers:r!==void 0||n,ignoreCookies:this.options.ignoreCookies??!1,ignoreHeaders:this.ignoreHeaders,validateSchema:(a,c,p)=>p?.coerce?this.coercingSchemaValidator.validate(a,c,p?.target):this.schemaValidator.validate(a,c,p?.target)}),o=[];for(let a of i){if(Me[a.severity]<this.minSeverityRank)continue;gn(a,s);let c=mn(a,e);this.findings.push(c),o.push(c),hn(this.counters,a);let p=T({ruleId:a.ruleId,severity:a.severity,message:a.message,operationId:a.operationId,path:e.request.path,target:a.target,schemaPath:a.schemaPath}),u=this.problemKeyStats.get(p);if(u){u.occurrences+=1,u.previewIndex!==null&&(this.previewFindings[u.previewIndex].occurrences=u.occurrences);continue}if(this.totalProblemGroups+=1,this.problemGroupsByRule[a.ruleId]=(this.problemGroupsByRule[a.ruleId]??0)+1,this.previewFindings.length<this.previewLimit){let m=this.previewFindings.length;this.previewFindings.push(fn(a,e)),this.problemKeyStats.set(p,{occurrences:1,previewIndex:m});continue}this.problemKeyStats.set(p,{occurrences:1,previewIndex:null})}return o}isHostCompatible(e){return!e||this.hasHostlessSpecServer||this.specServerHosts.has(e.toLowerCase())}finalize(){let e={runId:this.runId,totalExchanges:this.counters.totalExchanges,documentedExchanges:this.counters.documentedExchanges,undocumentedExchanges:this.counters.undocumentedExchanges,skippedExchanges:this.counters.skippedExchanges,hostCompatibleExchanges:this.counters.hostCompatibleExchanges,findingsBySeverity:this.counters.findingsBySeverity,findingsByRule:this.counters.findingsByRule,problemGroupsByRule:this.problemGroupsByRule,totalProblemGroups:this.totalProblemGroups,durationMs:Date.now()-this.startedAt,previewFindings:this.previewFindings,previewLimit:this.previewLimit,previewTruncated:this.totalProblemGroups>this.previewFindings.length};return{runId:this.runId,summary:e,findings:this.findings}}};import{stat as vn}from"node:fs/promises";function _(t,e){let r=t.replace(/\{([^}]+)\}/g,(i,o)=>{let a=e?.[o];return a?.default!==void 0?String(a.default):Array.isArray(a?.enum)&&a.enum.length>0?String(a.enum[0]):""}),n=ce(r),s=!!(n.host&&!ae(n.host));return{rawUrl:t,protocol:s?n.protocol:void 0,host:s?n.host.toLowerCase():void 0,basePath:b(n.pathname||"/")}}function Le(t){return t?t.startsWith("/")?t:`/${t}`:"/"}var wn=["get","put","post","delete","patch","head","options","trace"],Rn=new Set(["query","header","path","cookie"]);function In(t){return wn.includes(t)}function Pn(t){return Rn.has(t)}function _e(t){if(!Array.isArray(t))return[];let e=[];for(let r of t){if(!l(r))continue;let n=r.in;typeof n!="string"||!Pn(n)||e.push({name:String(r.name??""),in:n,required:!!r.required||n==="path",style:typeof r.style=="string"?r.style:void 0,schema:r.schema})}return e}function He(t){let e=t.in==="header";return`${t.in}:${e?t.name.toLowerCase():t.name}`}function bn(t,e){let r=new Map;for(let n of t)r.set(He(n),n);for(let n of e)r.set(He(n),n);return Array.from(r.values())}function Ne(t){let e={};if(!l(t))return e;for(let[r,n]of Object.entries(t))l(n)&&"schema"in n&&(e[r.toLowerCase()]=n.schema);return e}function xn(t){return l(t)?Ne(t.content):{}}function kn(t){if(!l(t))return{};let e={};for(let[r,n]of Object.entries(t))!l(n)||!("content"in n)||(e[r]=Ne(n.content));return e}function An(t,e,r){let n=t??e??r;return!Array.isArray(n)||n.length===0?[_("/")]:n.map(s=>{if(!l(s))return _("/");let i=typeof s.url=="string"?s.url:"/",o=l(s.variables)?s.variables:void 0;return _(i,o)})}function On(t,e,r){return r||`${t.toUpperCase()} ${e}`}function $n(t){try{let e=te(t.parsed);return ee(e)==="oas3"?e:null}catch{return null}}function Ve(t){return Array.isArray(t)?t:void 0}function Cn(t,e){let r,n,s={},i="/",o=[],a;return{Root:{enter(c){r=c.servers,n=c.security;let p=l(c.components)?c.components.securitySchemes:void 0;s=l(p)?p:{}}},Paths:{PathItem:{enter(c,p){i=Le(String(p.key)),o=_e(c.parameters),a=c.servers},Operation:{enter(c,p){let u=String(p.key);if(!In(u))return;let m=bn(o,_e(c.parameters)),x=de(i),q=An(c.servers,a,r),P=c.requestBody,h={operationId:On(u,i,typeof c.operationId=="string"?c.operationId:void 0),method:u,pathTemplate:i,pathRegex:x.regex,pathParams:x.params,pathScore:x.score,servers:q,requestParameters:m,requestBodyContent:xn(P),requestBodyRequired:l(P)&&!!P.required,responseBodyContent:kn(c.responses),security:Ve(c.security)??Ve(n),securitySchemes:s,specSource:t},f=e.get(u)??[];f.push(h),e.set(u,f)}}}}}}function En(t,e,r,n,s){let i=Y(r.extendTypes(Q(e),e),r),o=new Map,a={problems:[],specVersion:e,config:r,visitorsData:{}},c=re([{severity:"warn",ruleId:"drift-index",visitor:Cn(n,s)}],i);se({document:t,rootType:i.Root,normalizedVisitors:c,resolvedRefMap:o,ctx:a})}function qn(t){return`${t.host??""}|${t.basePath}`}function Tn(t){for(let e of t.values()){let r=new Map;for(let n of e){let s=r.get(n.pathRegex.source)??[];s.push(n),r.set(n.pathRegex.source,s)}for(let n of r.values()){let s=new Map;for(let i of n)for(let o of i.servers){let a=qn(o),c=s.get(a)??new Set;c.add(i.specSource),s.set(a,c)}for(let i of s.values())if(i.size>1){let[o]=n;w.warn(`"${o.method.toUpperCase()} ${o.pathTemplate}" is documented for the same server in multiple descriptions (${Array.from(i).join(", ")}). Matching traffic is validated against only one of them.
19
- `);break}}}}function Fn(t,e){for(let n of t.values())n.sort((s,i)=>i.pathScore-s.pathScore);let r=Array.from(t.values()).reduce((n,s)=>n+s.length,0);return{operationsByMethod:t,loadedSpecs:e,loadedOperations:r}}async function Mn(t){return(await vn(t)).isDirectory()?{specFiles:await oe(t),fromDirectory:!0}:{specFiles:[t],fromDirectory:!1}}async function Rr(t,e){let{specFiles:r,fromDirectory:n}=await Mn(t),s=new Map,i=new ne(e.resolve),o=0;for(let a of r){let c=await i.resolveDocument(null,a,!0);if(c instanceof Error){w.warn(`Failed to load OpenAPI description ${a}: ${c.message}
18
+ `)}return r}var je=class t{startedAt=Date.now();runId=Be();previewLimit;rules;schemaValidator=new E;coercingSchemaValidator=new E({coerceTypes:!0});options;counters=ln();findings=[];previewFindings=[];problemGroupsByRule={};problemKeyStats=new Map;totalProblemGroups=0;server;ignoreHeaders;minSeverityRank;specServerHosts;hasHostlessSpecServer;constructor(e,r){this.options=e,this.rules=r,this.server=he(e.server),this.ignoreHeaders=e.ignoreHeaders?pe(e.ignoreHeaders):void 0;let{specServerHosts:n,hasHostlessSpecServer:s}=yn(e.openApiIndex);this.specServerHosts=n,this.hasHostlessSpecServer=s,this.minSeverityRank=Me[e.minSeverity??"info"],this.previewLimit=e.previewFindingsLimit&&e.previewFindingsLimit>0?e.previewFindingsLimit:pn}static create(e){if(e.openApiIndex.loadedOperations===0)throw new Error("No OpenAPI operations available to validate traffic against.");return new t(e,Oe(e.activeRules))}async process(e){this.counters.totalExchanges+=1;let r;if(this.server!==void 0&&(r=me(e.request,this.server),r===void 0))return this.counters.skippedExchanges+=1,[];let n=this.isHostCompatible(e.request.host);n&&(this.counters.hostCompatibleExchanges+=1);let s=ye(this.options.openApiIndex,e,this.options.matchMode,r);s?this.counters.documentedExchanges+=1:this.counters.undocumentedExchanges+=1;let i=await Sn(this.rules,{exchange:e,matchedOperation:s,matchMode:this.options.matchMode,hostCompatibleWithSpecServers:r!==void 0||n,ignoreCookies:this.options.ignoreCookies??!1,ignoreHeaders:this.ignoreHeaders,validateSchema:(a,c,p)=>p?.coerce?this.coercingSchemaValidator.validate(a,c,p?.target):this.schemaValidator.validate(a,c,p?.target)}),o=[];for(let a of i){if(Me[a.severity]<this.minSeverityRank)continue;gn(a,s);let c=mn(a,e);this.findings.push(c),o.push(c),hn(this.counters,a);let p=T({ruleId:a.ruleId,severity:a.severity,message:a.message,operationId:a.operationId,path:e.request.path,target:a.target,schemaPath:a.schemaPath}),u=this.problemKeyStats.get(p);if(u){u.occurrences+=1,u.previewIndex!==null&&(this.previewFindings[u.previewIndex].occurrences=u.occurrences);continue}if(this.totalProblemGroups+=1,this.problemGroupsByRule[a.ruleId]=(this.problemGroupsByRule[a.ruleId]??0)+1,this.previewFindings.length<this.previewLimit){let m=this.previewFindings.length;this.previewFindings.push(fn(a,e)),this.problemKeyStats.set(p,{occurrences:1,previewIndex:m});continue}this.problemKeyStats.set(p,{occurrences:1,previewIndex:null})}return o}isHostCompatible(e){return!e||this.hasHostlessSpecServer||this.specServerHosts.has(e.toLowerCase())}finalize(){let e={runId:this.runId,totalExchanges:this.counters.totalExchanges,documentedExchanges:this.counters.documentedExchanges,undocumentedExchanges:this.counters.undocumentedExchanges,skippedExchanges:this.counters.skippedExchanges,hostCompatibleExchanges:this.counters.hostCompatibleExchanges,findingsBySeverity:this.counters.findingsBySeverity,findingsByRule:this.counters.findingsByRule,problemGroupsByRule:this.problemGroupsByRule,totalProblemGroups:this.totalProblemGroups,durationMs:Date.now()-this.startedAt,previewFindings:this.previewFindings,previewLimit:this.previewLimit,previewTruncated:this.totalProblemGroups>this.previewFindings.length};return{runId:this.runId,summary:e,findings:this.findings}}};import{stat as vn}from"node:fs/promises";function _(t,e){let r=t.replace(/\{([^}]+)\}/g,(i,o)=>{let a=e?.[o];return a?.default!==void 0?String(a.default):Array.isArray(a?.enum)&&a.enum.length>0?String(a.enum[0]):""}),n=ce(r),s=!!(n.host&&!ae(n.host));return{rawUrl:t,protocol:s?n.protocol:void 0,host:s?n.host.toLowerCase():void 0,basePath:b(n.pathname||"/")}}function Le(t){return t?t.startsWith("/")?t:`/${t}`:"/"}var wn=["get","put","post","delete","patch","head","options","trace"],Rn=new Set(["query","header","path","cookie"]);function In(t){return wn.includes(t)}function Pn(t){return Rn.has(t)}function _e(t){if(!Array.isArray(t))return[];let e=[];for(let r of t){if(!l(r))continue;let n=r.in;typeof n!="string"||!Pn(n)||e.push({name:String(r.name??""),in:n,required:!!r.required||n==="path",style:typeof r.style=="string"?r.style:void 0,schema:r.schema})}return e}function He(t){let e=t.in==="header";return`${t.in}:${e?t.name.toLowerCase():t.name}`}function bn(t,e){let r=new Map;for(let n of t)r.set(He(n),n);for(let n of e)r.set(He(n),n);return Array.from(r.values())}function Ne(t){let e={};if(!l(t))return e;for(let[r,n]of Object.entries(t))l(n)&&"schema"in n&&(e[r.toLowerCase()]=n.schema);return e}function xn(t){return l(t)?Ne(t.content):{}}function kn(t){if(!l(t))return{};let e={};for(let[r,n]of Object.entries(t))!l(n)||!("content"in n)||(e[r]=Ne(n.content));return e}function An(t,e,r){let n=t??e??r;return!Array.isArray(n)||n.length===0?[_("/")]:n.map(s=>{if(!l(s))return _("/");let i=typeof s.url=="string"?s.url:"/",o=l(s.variables)?s.variables:void 0;return _(i,o)})}function On(t,e,r){return r||`${t.toUpperCase()} ${e}`}function $n(t){try{let e=ne(t.parsed);return te(e)==="oas3"?e:null}catch{return null}}function Ve(t){return Array.isArray(t)?t:void 0}function Cn(t,e){let r,n,s={},i="/",o=[],a;return{Root:{enter(c){r=c.servers,n=c.security;let p=l(c.components)?c.components.securitySchemes:void 0;s=l(p)?p:{}}},Paths:{PathItem:{enter(c,p){i=Le(String(p.key)),o=_e(c.parameters),a=c.servers},Operation:{enter(c,p){let u=String(p.key);if(!In(u))return;let m=bn(o,_e(c.parameters)),x=de(i),q=An(c.servers,a,r),P=c.requestBody,h={operationId:On(u,i,typeof c.operationId=="string"?c.operationId:void 0),method:u,pathTemplate:i,pathRegex:x.regex,pathParams:x.params,pathScore:x.score,servers:q,requestParameters:m,requestBodyContent:xn(P),requestBodyRequired:l(P)&&!!P.required,responseBodyContent:kn(c.responses),security:Ve(c.security)??Ve(n),securitySchemes:s,specSource:t},f=e.get(u)??[];f.push(h),e.set(u,f)}}}}}}function En(t,e,r,n,s){let i=Y(r.extendTypes(Q(e),e),r),o=new Map,a={problems:[],specVersion:e,config:r,visitorsData:{}},c=re([{severity:"warn",ruleId:"drift-index",visitor:Cn(n,s)}],i);se({document:t,rootType:i.Root,normalizedVisitors:c,resolvedRefMap:o,ctx:a})}function qn(t){return`${t.host??""}|${t.basePath}`}function Tn(t){for(let e of t.values()){let r=new Map;for(let n of e){let s=r.get(n.pathRegex.source)??[];s.push(n),r.set(n.pathRegex.source,s)}for(let n of r.values()){let s=new Map;for(let i of n)for(let o of i.servers){let a=qn(o),c=s.get(a)??new Set;c.add(i.specSource),s.set(a,c)}for(let i of s.values())if(i.size>1){let[o]=n;w.warn(`"${o.method.toUpperCase()} ${o.pathTemplate}" is documented for the same server in multiple descriptions (${Array.from(i).join(", ")}). Matching traffic is validated against only one of them.
19
+ `);break}}}}function Fn(t,e){for(let n of t.values())n.sort((s,i)=>i.pathScore-s.pathScore);let r=Array.from(t.values()).reduce((n,s)=>n+s.length,0);return{operationsByMethod:t,loadedSpecs:e,loadedOperations:r}}async function Mn(t){return(await vn(t)).isDirectory()?{specFiles:await oe(t),fromDirectory:!0}:{specFiles:[t],fromDirectory:!1}}async function Rr(t,e){let{specFiles:r,fromDirectory:n}=await Mn(t),s=new Map,i=new X(e.resolve),o=0;for(let a of r){let c=await i.resolveDocument(null,a,!0);if(c instanceof Error){w.warn(`Failed to load OpenAPI description ${a}: ${c.message}
20
20
  `);continue}let p=$n(c);if(!p){n||w.warn(`Skipping ${a}: not an OpenAPI 3.x description.
21
21
  `);continue}let u;try{let{bundle:m}=await ie({config:e,doc:c,externalRefResolver:i,dereference:!0});u=m}catch(m){w.warn(`Failed to bundle OpenAPI description ${a}: ${m.message}
22
22
  `);continue}o+=1,En(u,p,e,a,s)}return o>1&&Tn(s),Fn(s,o)}function Pr(t){return t.split(",").map(e=>e.trim()).filter(Boolean)}export{Hn as a,je as b,Rr as c,Pr as d};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{b as D,g as L}from"./4OMVSQVK.js";import{a as h,c as F,d as J,e as U}from"./VGBSMXRM.js";import{a as _,d as G,e as x,f as R,h as K,i as O,j as Q,k as b,l as V,m as z}from"./NB54XRRU.js";import{n as H}from"./HJYFWIVE.js";import{join as Se}from"node:path";var q="// Generated by @redocly/client-generator \u2014 do not edit by hand.\n// Source: OpenAPI description. Re-run `redocly generate-client` to update.";function N(e){return e.filter(t=>t.length>0).join(`
7
+ import{b as D,g as L}from"./BQM4LA5W.js";import{a as h,c as F,d as J,e as U}from"./VFTQZ2K5.js";import{a as _,d as G,e as x,f as R,h as K,i as O,j as Q,k as b,l as V,m as z}from"./NB54XRRU.js";import{n as H}from"./HJYFWIVE.js";import{join as Se}from"node:path";var q="// Generated by @redocly/client-generator \u2014 do not edit by hand.\n// Source: OpenAPI description. Re-run `redocly generate-client` to update.";function N(e){return e.filter(t=>t.length>0).join(`
8
8
 
9
9
  `)+`
10
10
  `}function v(e){let t=["/**",` * ${O(`${e.title} (v${e.version})`)}`];if(e.description)for(let n of z(O(e.description)))t.push(` * ${n}`.replace(/ +$/,""));return t.push(" */"),t.join(`
@@ -4,5 +4,5 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{c}from"./M3XP3LQ3.js";import{open as C,readdir as N,stat as P}from"node:fs/promises";import d from"node:path";var $=new Set([".yaml",".yml",".json"]);async function D(e){let n=[];async function t(r){let o=await N(r,{withFileTypes:!0});for(let s of o){if(s.name.startsWith("."))continue;let i=d.join(r,s.name);if(s.isDirectory()){await t(i);continue}s.isFile()&&$.has(d.extname(s.name).toLowerCase())&&n.push(i)}}return await t(e),n.sort(),n}async function _(e,n=4096){let t=await C(e,"r");try{let r=Buffer.allocUnsafe(n),{bytesRead:o}=await t.read(r,0,n,0);return r.toString("utf8",0,o)}finally{await t.close()}}function M(e){return d.resolve(process.cwd(),e)}async function K(e){let n=await P(e);if(n.isFile())return[e];if(!n.isDirectory())return[];let t=[];async function r(o){let s=await N(o,{withFileTypes:!0});for(let i of s){if(i.name.startsWith("."))continue;let a=d.join(o,i.name);if(i.isDirectory()){await r(a);continue}i.isFile()&&t.push(a)}}return await r(e),t.sort(),t}var k="drift.local",O=`http://${k}`;function u(e){return e===k}var U=new Set(["accept","accept-charset","accept-encoding","accept-language","authorization","baggage","cache-control","cdn-loop","cookie","connection","content-length","content-type","dpr","dnt","downlink","ect","forwarded","host","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","origin","pragma","priority","range","referer","sec-fetch-dest","sec-fetch-mode","sec-fetch-site","sec-fetch-user","sec-gpc","sentry-trace","te","traceparent","tracestate","upgrade","upgrade-insecure-requests","user-agent","via","x-client-trace-id","x-cloud-trace-context","x-correlation-id","x-http-method-override","x-hub-signature","x-hub-signature-256","x-method-override","x-real-ip","x-request-id","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto"]),J=["cf-","sec-ch-","sec-fetch-","x-amz-","x-amzn-","x-b3-","x-envoy-","x-forwarded-","x-github-"],R=`
7
+ import{c}from"./AYCCHB2H.js";import{open as C,readdir as N,stat as P}from"node:fs/promises";import d from"node:path";var $=new Set([".yaml",".yml",".json"]);async function D(e){let n=[];async function t(r){let o=await N(r,{withFileTypes:!0});for(let s of o){if(s.name.startsWith("."))continue;let i=d.join(r,s.name);if(s.isDirectory()){await t(i);continue}s.isFile()&&$.has(d.extname(s.name).toLowerCase())&&n.push(i)}}return await t(e),n.sort(),n}async function _(e,n=4096){let t=await C(e,"r");try{let r=Buffer.allocUnsafe(n),{bytesRead:o}=await t.read(r,0,n,0);return r.toString("utf8",0,o)}finally{await t.close()}}function M(e){return d.resolve(process.cwd(),e)}async function K(e){let n=await P(e);if(n.isFile())return[e];if(!n.isDirectory())return[];let t=[];async function r(o){let s=await N(o,{withFileTypes:!0});for(let i of s){if(i.name.startsWith("."))continue;let a=d.join(o,i.name);if(i.isDirectory()){await r(a);continue}i.isFile()&&t.push(a)}}return await r(e),t.sort(),t}var k="drift.local",O=`http://${k}`;function u(e){return e===k}var U=new Set(["accept","accept-charset","accept-encoding","accept-language","authorization","baggage","cache-control","cdn-loop","cookie","connection","content-length","content-type","dpr","dnt","downlink","ect","forwarded","host","if-match","if-modified-since","if-none-match","if-range","if-unmodified-since","origin","pragma","priority","range","referer","sec-fetch-dest","sec-fetch-mode","sec-fetch-site","sec-fetch-user","sec-gpc","sentry-trace","te","traceparent","tracestate","upgrade","upgrade-insecure-requests","user-agent","via","x-client-trace-id","x-cloud-trace-context","x-correlation-id","x-http-method-override","x-hub-signature","x-hub-signature-256","x-method-override","x-real-ip","x-request-id","x-forwarded-for","x-forwarded-host","x-forwarded-port","x-forwarded-proto"]),J=["cf-","sec-ch-","sec-fetch-","x-amz-","x-amzn-","x-b3-","x-envoy-","x-forwarded-","x-github-"],R=`
8
8
  `;function Y(e){return e.split(R)}function g(e,n,t){let r=n.toLowerCase(),o=e[r];if(o===void 0){e[r]=t;return}e[r]=r==="set-cookie"?`${o}${R}${t}`:`${o},${t}`}function p(e){if(!c(e)&&!Array.isArray(e))return{};let n={};if(Array.isArray(e)){for(let t of e){if(!c(t))continue;let{name:r,value:o}=t;typeof r=="string"&&o!==void 0&&g(n,r,String(o))}return n}for(let[t,r]of Object.entries(e))if(r!=null){if(Array.isArray(r)){for(let o of r)g(n,t,String(o));continue}g(n,t,String(r))}return n}function f(e){try{return new URL(e)}catch{return new URL(e,O)}}function m(e){return e.length>1&&e.endsWith("/")?e.slice(0,-1):e}function L(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function V(e){let n=[],t=0,r=e.startsWith("/")?e:`/${e}`,s=m(r).split("/").map(i=>{if(!i)return"";let a=i.match(/^\{([^}]+)\}$/);return a?(n.push(a[1]),"([^/]+)"):(t+=2,L(i))}).join("/");return{regex:new RegExp(`^${s||"/"}$`),params:n,score:t}}function l(e,n){if(n&&A(e))try{return JSON.parse(n)}catch{return}}function E(e){return e?e.split(";")[0]?.trim().toLowerCase()??"":""}function A(e){let n=E(e);return n==="application/json"||n.endsWith("+json")}function Q(e,n){let t=E(n);if(!t)return e["application/json"]??e["*/*"];if(e[t]!==void 0)return e[t];let[r,o]=t.split("/");if(r&&o){let s=`${r}/*`;if(e[s]!==void 0)return e[s]}return e["*/*"]}function Z(e){let n=new Set,t=[];for(let r of e){let o=r.trim().toLowerCase();o.length!==0&&(o.endsWith("*")?t.push(o.slice(0,-1)):n.add(o))}return{names:n,prefixes:t}}function v(e,n){let t=e.toLowerCase();return t.startsWith(":")||U.has(t)||J.some(r=>t.startsWith(r))?!0:n?n.names.has(t)||n.prefixes.some(r=>t.startsWith(r)):!1}import{createReadStream as q}from"node:fs";import{readFile as B}from"node:fs/promises";import{createInterface as F}from"node:readline";function I(e){if(e!=null){if(typeof e=="string")return e;if(Buffer.isBuffer(e))return e.toString("utf8");if(c(e)||Array.isArray(e))try{return JSON.stringify(e)}catch{return String(e)}return String(e)}}function se(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){let n=Number(e);if(Number.isFinite(n))return n}}function H(e,n){if(e!=null){if(n==="base64"&&typeof e=="string")try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}return I(e)}}function ae(e,n,t){let r=e.method?.toUpperCase(),o=e.url;if(!r||!o)return null;let s=p(e.requestHeaders),i=f(o);if(u(i.host)&&s.host)try{i=new URL(`${i.protocol}//${s.host}${i.pathname}${i.search}`)}catch{i=f(o)}let a=e.requestContentType??s["content-type"],y=H(e.requestBody),T={method:r,url:i.toString(),path:i.pathname,query:i.searchParams,protocol:i.protocol,protocolKnown:e.schemeKnown??/^https?:\/\//i.test(o),host:u(i.host)?void 0:i.host||void 0,headers:s,contentType:a,bodyText:y,bodyJson:l(a,y)},h,x=e.responseStatus;if(x!==void 0){let w=p(e.responseHeaders),S=e.responseContentType??w["content-type"],b=H(e.responseBody);h={status:x,statusText:e.responseStatusText,headers:w,contentType:S,bodyText:b,bodyJson:l(S,b)}}return{index:n,source:t,startedAt:e.startedAt,request:T,response:h,raw:e.raw}}async function*ce(e){let n=q(e,{encoding:"utf8"}),t=F({input:n,crlfDelay:1/0});for await(let r of t){let o=r.trim();if(o)try{let s=JSON.parse(o);c(s)&&(yield s)}catch{}}}async function*ue(e,n){let t=await B(e,"utf8"),r=JSON.parse(t);if(n)for(let o of n.split("."))r=c(r)?r[o]:void 0;if(Array.isArray(r))for(let o of r)c(o)&&(yield o)}function fe(e){return p(e)["content-type"]}function ge(e){return e?.replace(/\/+$/,"")||void 0}function z(e,n){if(!n||n==="/")return e||"/";if(e===n)return"/";if(e.startsWith(`${n}/`))return e.slice(n.length)||"/"}function me(e,n){if(n.startsWith("/"))return z(e.path,n);let t=f(n.includes("://")?n:`http://${n}`);if(!(u(t.host)||e.host!==void 0&&e.host.toLowerCase()!==t.host))return z(e.path,m(t.pathname))}export{D as a,_ as b,M as c,K as d,u as e,Y as f,f as g,m as h,V as i,E as j,A as k,Q as l,Z as m,v as n,I as o,se as p,H as q,ae as r,ce as s,ue as t,fe as u,ge as v,me as w};
@@ -4,7 +4,7 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a as C}from"./VGBSMXRM.js";import{c as w}from"./M3XP3LQ3.js";import{a as H,e as q,g as P,h as g,k as E}from"./NB54XRRU.js";import{join as ae}from"node:path";var j=class{code;constructor(r){this.code=r}};function A(e,r,n={}){let t=new Map(r.map(s=>[s.name,s.schema])),o=k(e,t,new Set,n.dateType??"string");return o===b?null:o}var b=Symbol("cycle");function J(e,r){if(e.kind==="union"){for(let t of e.members){let o=J(t,r);if(o)return o}return}if(e.kind!=="scalar")return;let n=e.metadata?.format;if(n==="binary")return new j("new Blob([])");if(r==="Date"){if(n==="date-time")return new j('new Date("2024-01-01T00:00:00Z")');if(n==="date")return new j('new Date("2024-01-01")')}}function I(e,r){let n=new Map,t=[],o=!1;for(let s of e){if(s.kind==="unknown")continue;let i=G(s,r);if(i?.kind!=="object"){t.push(s);continue}o=!0;for(let a of i.properties){let u=O(a.schema,r,new Set),c=n.get(a.name);(c===void 0||u>=c.rank)&&n.set(a.name,{schema:a.schema,required:a.required||(c?.required??!1),rank:u})}}return o?{merged:{kind:"object",properties:[...n.entries()].map(([s,i])=>({name:s,schema:i.schema,required:i.required}))},rest:t}:{merged:void 0,rest:t}}function G(e,r){let n=new Set,t=e;for(;t?.kind==="ref";){if(n.has(t.name))return;n.add(t.name),t=r.get(t.name)}return t}function O(e,r,n){switch(e.kind){case"literal":return 40;case"enum":return e.values.length===1?40:30;case"union":return Math.max(0,...e.members.map(t=>O(t,r,n)))-1;case"ref":{if(n.has(e.name))return 20;let t=r.get(e.name);return t===void 0?20:O(t,r,new Set(n).add(e.name))}case"null":case"unknown":return 10;default:return 20}}function k(e,r,n,t){let o=J(e,t);if(o)return o;let s=e.metadata,i=a=>a===null?e.kind==="null"||e.kind==="union"&&e.members.some(u=>u.kind==="null"):e.kind==="enum"?e.values.includes(a):e.kind==="literal"?a===e.value:!0;if(s?.example!==void 0&&i(s.example))return s.example;if(s?.default!==void 0&&i(s.default))return s.default;switch(e.kind){case"scalar":return K(e.scalar,s);case"array":{let a=k(e.items,r,n,t);return a===b?[]:[a]}case"object":return Object.fromEntries(e.properties.flatMap(a=>{let u=k(a.schema,r,n,t);return u===b?a.required?[[a.name,null]]:[]:[[a.name,u]]}));case"record":{let a=k(e.value,r,n,t);return a===b?{}:{key:a}}case"enum":return e.values[0];case"literal":return e.value;case"union":{for(let a of e.members){let u=k(a,r,n,t);if(u!==b)return u}return e.members.length>0?b:null}case"intersection":{let{merged:a,rest:u}=I(e.members,r),c=u.map(m=>k(m,r,n,t)).filter(m=>m!==b);if(a){let m=k(a,r,n,t),M=w(m)?m:{};for(let V of c)w(V)&&Object.assign(M,V);return M}let h=c.filter(w);return h.length>0?h.reduce((m,M)=>Object.assign(m,M),{}):c.length>0?c[0]:{}}case"omit":{let a=r.get(e.base);if(!a)return null;let u=k(a,r,n,t);if(w(u)){let c={...u};for(let h of e.keys)delete c[h];return c}return u}case"ref":{if(n.has(e.name))return b;let a=r.get(e.name);if(!a)return null;n.add(e.name);let u=k(a,r,n,t);return n.delete(e.name),u}case"null":case"unknown":return null}}function K(e,r){if(e==="boolean")return!0;if(e==="integer"||e==="number")return 0;switch(r?.format){case"email":return"user@example.com";case"uuid":return"00000000-0000-4000-8000-000000000000";case"date-time":return"2024-01-01T00:00:00Z";case"date":return"2024-01-01";case"uri":case"url":return"https://example.com";default:return"string"}}var f=e=>({kind:"expr",text:e}),d=e=>({kind:"object",entries:e});function l(e){return e.kind==="object"}function D(e,r){return l(e)?d([...e.entries,{spread:r}]):e}var L=" ";function x(e,r){switch(e.kind){case"expr":return e.text;case"wrap":return`${e.before}${x(e.value,r)}${e.after}`;case"array":{if(e.items.length===0)return"[]";let n=r+L;return`[
7
+ import{a as C}from"./VFTQZ2K5.js";import{c as w}from"./AYCCHB2H.js";import{a as H,e as q,g as P,h as g,k as E}from"./NB54XRRU.js";import{join as ae}from"node:path";var j=class{code;constructor(r){this.code=r}};function A(e,r,n={}){let t=new Map(r.map(s=>[s.name,s.schema])),o=k(e,t,new Set,n.dateType??"string");return o===b?null:o}var b=Symbol("cycle");function J(e,r){if(e.kind==="union"){for(let t of e.members){let o=J(t,r);if(o)return o}return}if(e.kind!=="scalar")return;let n=e.metadata?.format;if(n==="binary")return new j("new Blob([])");if(r==="Date"){if(n==="date-time")return new j('new Date("2024-01-01T00:00:00Z")');if(n==="date")return new j('new Date("2024-01-01")')}}function I(e,r){let n=new Map,t=[],o=!1;for(let s of e){if(s.kind==="unknown")continue;let i=G(s,r);if(i?.kind!=="object"){t.push(s);continue}o=!0;for(let a of i.properties){let u=O(a.schema,r,new Set),c=n.get(a.name);(c===void 0||u>=c.rank)&&n.set(a.name,{schema:a.schema,required:a.required||(c?.required??!1),rank:u})}}return o?{merged:{kind:"object",properties:[...n.entries()].map(([s,i])=>({name:s,schema:i.schema,required:i.required}))},rest:t}:{merged:void 0,rest:t}}function G(e,r){let n=new Set,t=e;for(;t?.kind==="ref";){if(n.has(t.name))return;n.add(t.name),t=r.get(t.name)}return t}function O(e,r,n){switch(e.kind){case"literal":return 40;case"enum":return e.values.length===1?40:30;case"union":return Math.max(0,...e.members.map(t=>O(t,r,n)))-1;case"ref":{if(n.has(e.name))return 20;let t=r.get(e.name);return t===void 0?20:O(t,r,new Set(n).add(e.name))}case"null":case"unknown":return 10;default:return 20}}function k(e,r,n,t){let o=J(e,t);if(o)return o;let s=e.metadata,i=a=>a===null?e.kind==="null"||e.kind==="union"&&e.members.some(u=>u.kind==="null"):e.kind==="enum"?e.values.includes(a):e.kind==="literal"?a===e.value:!0;if(s?.example!==void 0&&i(s.example))return s.example;if(s?.default!==void 0&&i(s.default))return s.default;switch(e.kind){case"scalar":return K(e.scalar,s);case"array":{let a=k(e.items,r,n,t);return a===b?[]:[a]}case"object":return Object.fromEntries(e.properties.flatMap(a=>{let u=k(a.schema,r,n,t);return u===b?a.required?[[a.name,null]]:[]:[[a.name,u]]}));case"record":{let a=k(e.value,r,n,t);return a===b?{}:{key:a}}case"enum":return e.values[0];case"literal":return e.value;case"union":{for(let a of e.members){let u=k(a,r,n,t);if(u!==b)return u}return e.members.length>0?b:null}case"intersection":{let{merged:a,rest:u}=I(e.members,r),c=u.map(m=>k(m,r,n,t)).filter(m=>m!==b);if(a){let m=k(a,r,n,t),M=w(m)?m:{};for(let V of c)w(V)&&Object.assign(M,V);return M}let h=c.filter(w);return h.length>0?h.reduce((m,M)=>Object.assign(m,M),{}):c.length>0?c[0]:{}}case"omit":{let a=r.get(e.base);if(!a)return null;let u=k(a,r,n,t);if(w(u)){let c={...u};for(let h of e.keys)delete c[h];return c}return u}case"ref":{if(n.has(e.name))return b;let a=r.get(e.name);if(!a)return null;n.add(e.name);let u=k(a,r,n,t);return n.delete(e.name),u}case"null":case"unknown":return null}}function K(e,r){if(e==="boolean")return!0;if(e==="integer"||e==="number")return 0;switch(r?.format){case"email":return"user@example.com";case"uuid":return"00000000-0000-4000-8000-000000000000";case"date-time":return"2024-01-01T00:00:00Z";case"date":return"2024-01-01";case"uri":case"url":return"https://example.com";default:return"string"}}var f=e=>({kind:"expr",text:e}),d=e=>({kind:"object",entries:e});function l(e){return e.kind==="object"}function D(e,r){return l(e)?d([...e.entries,{spread:r}]):e}var L=" ";function x(e,r){switch(e.kind){case"expr":return e.text;case"wrap":return`${e.before}${x(e.value,r)}${e.after}`;case"array":{if(e.items.length===0)return"[]";let n=r+L;return`[
8
8
  ${e.items.map((o,s)=>`${n}${x(o,n)}${s===e.items.length-1?"":","}`).join(`
9
9
  `)}
10
10
  ${r}]`}case"object":{if(e.entries.length===0)return"{}";let n=r+L;return`{
@@ -4,4 +4,4 @@ import { dirname as __pathDirname } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  var __filename = __fileURLToPath(import.meta.url);
6
6
  var __dirname = __pathDirname(__filename);
7
- import{a}from"./M3HF5ZRI.js";import"./4OMVSQVK.js";import"./VGBSMXRM.js";import"./PFYPTG4G.js";import"./M3XP3LQ3.js";import"./NEWT5A6S.js";import"./NB54XRRU.js";import"./HJYFWIVE.js";import"./RFWIIJFG.js";export{a as mockGenerator};
7
+ import{a}from"./M5NHHJLI.js";import"./BQM4LA5W.js";import"./VFTQZ2K5.js";import"./PFYPTG4G.js";import"./AYCCHB2H.js";import"./NEWT5A6S.js";import"./NB54XRRU.js";import"./HJYFWIVE.js";import"./RFWIIJFG.js";export{a as mockGenerator};