@easbot/memory 0.1.13 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.en.md ADDED
@@ -0,0 +1,79 @@
1
+ # @easbot/memory
2
+
3
+ [中文](./README.md) | English
4
+
5
+ Memory management library for the EASBOT ecosystem, providing intelligent memory indexing, search, and management capabilities.
6
+
7
+ ## Features
8
+
9
+ - **Hybrid Search**: Combines vector search, full-text search (FTS), and graph search
10
+ - **Chinese/English Tokenization**: High-quality tokenization via jieba-wasm
11
+ - **Incremental Indexing**: Supports incremental updates with automatic file change detection
12
+ - **Multi-source Support**: Supports both memory and sessions memory sources
13
+ - **XDG Compliance**: Database stored in XDG data directory by default
14
+
15
+ ## Installation
16
+
17
+ ```bash
18
+ pnpm add @easbot/memory
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ ```typescript
24
+ import { MemoryIndexManager } from '@easbot/memory';
25
+
26
+ // Get memory manager instance
27
+ const manager = await MemoryIndexManager.get({
28
+ workspaceDir: '/path/to/workspace',
29
+ });
30
+
31
+ // Search memories
32
+ const results = await manager.search('machine learning', {
33
+ maxResults: 10,
34
+ minScore: 0.5,
35
+ });
36
+
37
+ // Index a file
38
+ await manager.indexFile('/path/to/file.md');
39
+ ```
40
+
41
+ ## API
42
+
43
+ ### MemoryIndexManager
44
+
45
+ | Method | Description |
46
+ |--------|-------------|
47
+ | `get(params)` | Get or create manager instance |
48
+ | `search(query, options)` | Hybrid search |
49
+ | `indexFile(filePath)` | Index a single file |
50
+ | `indexDirectory(dirPath)` | Index a directory |
51
+ | `getStatus()` | Get status information |
52
+
53
+ ## Development
54
+
55
+ ```bash
56
+ # Install dependencies
57
+ pnpm install
58
+
59
+ # Build
60
+ pnpm build
61
+
62
+ # Test
63
+ pnpm test
64
+
65
+ # Type check
66
+ pnpm type-check
67
+ ```
68
+
69
+ ## Database Location
70
+
71
+ Default storage: `$XDG_DATA_HOME/easbot/memory.db`
72
+
73
+ - Linux: `~/.local/share/easbot/memory.db`
74
+ - macOS: `~/Library/Application Support/easbot/memory.db`
75
+ - Windows: `%APPDATA%/easbot/memory.db`
76
+
77
+ ## License
78
+
79
+ MIT
package/README.md CHANGED
@@ -1,16 +1,10 @@
1
1
  # @easbot/memory
2
2
 
3
- [English](#english) | [中文](#中文)
3
+ [English](./README.en.md) | 中文
4
4
 
5
- ---
5
+ EASBOT 生态系统的记忆管理库,提供智能化的记忆索引、搜索和管理功能。
6
6
 
7
- <a name="中文"></a>
8
-
9
- ## 中文
10
-
11
- EASBOT 生态系统的记忆管理库,提供智能化的记忆索引、搜索和管理功能。
12
-
13
- ### 特性
7
+ ## 特性
14
8
 
15
9
  - **混合搜索**:支持向量搜索、全文搜索(FTS)和图搜索的混合检索
16
10
  - **中英文分词**:基于 jieba-wasm 实现高质量中英文分词
@@ -18,13 +12,13 @@ EASBOT 生态系统的记忆管理库,提供智能化的记忆索引、搜索
18
12
  - **多源支持**:支持 memory 和 sessions 两种记忆源
19
13
  - **XDG 规范**:数据库默认存储在 XDG 数据目录
20
14
 
21
- ### 安装
15
+ ## 安装
22
16
 
23
17
  ```bash
24
18
  pnpm add @easbot/memory
25
19
  ```
26
20
 
27
- ### 使用示例
21
+ ## 使用示例
28
22
 
29
23
  ```typescript
30
24
  import { MemoryIndexManager } from '@easbot/memory';
@@ -35,7 +29,7 @@ const manager = await MemoryIndexManager.get({
35
29
  });
36
30
 
37
31
  // 搜索记忆
38
- const results = manager.search('机器学习', {
32
+ const results = await manager.search('机器学习', {
39
33
  maxResults: 10,
40
34
  minScore: 0.5,
41
35
  });
@@ -44,19 +38,19 @@ const results = manager.search('机器学习', {
44
38
  await manager.indexFile('/path/to/file.md');
45
39
  ```
46
40
 
47
- ### API
41
+ ## API
48
42
 
49
- #### MemoryIndexManager
43
+ ### MemoryIndexManager
50
44
 
51
- | 方法 | 说明 |
52
- |------|------|
53
- | `get(params)` | 获取或创建管理器实例 |
54
- | `search(query, options)` | 混合搜索 |
55
- | `indexFile(filePath)` | 索引单个文件 |
56
- | `indexDirectory(dirPath)` | 索引目录 |
57
- | `getStatus()` | 获取状态信息 |
45
+ | 方法 | 说明 |
46
+ |------|------|
47
+ | `get(params)` | 获取或创建管理器实例 |
48
+ | `search(query, options)` | 混合搜索 |
49
+ | `indexFile(filePath)` | 索引单个文件 |
50
+ | `indexDirectory(dirPath)` | 索引目录 |
51
+ | `getStatus()` | 获取状态信息 |
58
52
 
59
- ### 开发
53
+ ## 开发
60
54
 
61
55
  ```bash
62
56
  # 安装依赖
@@ -72,92 +66,14 @@ pnpm test
72
66
  pnpm type-check
73
67
  ```
74
68
 
75
- ### 数据库位置
76
-
77
- 默认存储位置:`$XDG_DATA_HOME/easbot/memory.db`
78
-
79
- - Linux: `~/.local/share/easbot/memory.db`
80
- - macOS: `~/Library/Application Support/easbot/memory.db`
81
- - Windows: `%APPDATA%/easbot/memory.db`
82
-
83
- ---
84
-
85
- <a name="english"></a>
86
-
87
- ## English
88
-
89
- Memory management library for the EASBOT ecosystem, providing intelligent memory indexing, search, and management capabilities.
90
-
91
- ### Features
92
-
93
- - **Hybrid Search**: Combines vector search, full-text search (FTS), and graph search
94
- - **Chinese/English Tokenization**: High-quality tokenization via jieba-wasm
95
- - **Incremental Indexing**: Supports incremental updates with automatic file change detection
96
- - **Multi-source Support**: Supports both 'memory' and 'sessions' memory sources
97
- - **XDG Compliance**: Database stored in XDG data directory by default
98
-
99
- ### Installation
100
-
101
- ```bash
102
- pnpm add @easbot/memory
103
- ```
104
-
105
- ### Usage
106
-
107
- ```typescript
108
- import { MemoryIndexManager } from '@easbot/memory';
109
-
110
- // Get memory manager instance
111
- const manager = await MemoryIndexManager.get({
112
- workspaceDir: '/path/to/workspace',
113
- });
114
-
115
- // Search memories
116
- const results = manager.search('machine learning', {
117
- maxResults: 10,
118
- minScore: 0.5,
119
- });
120
-
121
- // Index a file
122
- await manager.indexFile('/path/to/file.md');
123
- ```
124
-
125
- ### API
126
-
127
- #### MemoryIndexManager
128
-
129
- | Method | Description |
130
- |--------|-------------|
131
- | `get(params)` | Get or create manager instance |
132
- | `search(query, options)` | Hybrid search |
133
- | `indexFile(filePath)` | Index a single file |
134
- | `indexDirectory(dirPath)` | Index a directory |
135
- | `getStatus()` | Get status information |
136
-
137
- ### Development
138
-
139
- ```bash
140
- # Install dependencies
141
- pnpm install
142
-
143
- # Build
144
- pnpm build
145
-
146
- # Test
147
- pnpm test
148
-
149
- # Type check
150
- pnpm type-check
151
- ```
152
-
153
- ### Database Location
69
+ ## 数据库位置
154
70
 
155
- Default storage: `$XDG_DATA_HOME/easbot/memory.db`
71
+ 默认存储位置:`$XDG_DATA_HOME/easbot/memory.db`
156
72
 
157
73
  - Linux: `~/.local/share/easbot/memory.db`
158
74
  - macOS: `~/Library/Application Support/easbot/memory.db`
159
75
  - Windows: `%APPDATA%/easbot/memory.db`
160
76
 
161
- ## License
77
+ ## 许可证
162
78
 
163
- MIT
79
+ MIT
@@ -0,0 +1,4 @@
1
+ 'use strict';var qi=require('path'),lh=require('fs/promises'),Tn=require('fs'),fo=require('zod'),url=require('url'),events=require('events'),jr=require('stream'),string_decoder=require('string_decoder'),utils=require('@easbot/utils');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var qi__default=/*#__PURE__*/_interopDefault(qi);var lh__default=/*#__PURE__*/_interopDefault(lh);var Tn__namespace=/*#__PURE__*/_interopNamespace(Tn);var fo__default=/*#__PURE__*/_interopDefault(fo);var jr__default=/*#__PURE__*/_interopDefault(jr);var ph=Object.defineProperty;var ks=e=>{throw TypeError(e)};var fh=(e,t,i)=>t in e?ph(e,t,{enumerable:true,configurable:true,writable:true,value:i}):e[t]=i;var p=(e,t,i)=>fh(e,typeof t!="symbol"?t+"":t,i),Vi=(e,t,i)=>t.has(e)||ks("Cannot "+i);var r=(e,t,i)=>(Vi(e,t,"read from private field"),i?i.call(e):t.get(e)),m=(e,t,i)=>t.has(e)?ks("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),c=(e,t,i,s)=>(Vi(e,t,"write to private field"),t.set(e,i),i),g=(e,t,i)=>(Vi(e,t,"access private method"),i);var Ei=(e,t,i,s)=>({set _(h){c(e,t,h);},get _(){return r(e,t,s)}});var dh=()=>typeof document>"u"?new URL(`file:${__filename}`).href:document.currentScript&&document.currentScript.tagName.toUpperCase()==="SCRIPT"?document.currentScript.src:new URL("main.js",document.baseURI).href,Cs=dh();var yr=(e,t,i)=>{let s=e instanceof RegExp?Rs(e,i):e,h=t instanceof RegExp?Rs(t,i):t,n=s!==null&&h!=null&&gh(s,h,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]+h.length)}},Rs=(e,t)=>{let i=t.match(e);return i?i[0]:null},gh=(e,t,i)=>{let s,h,n,o,a,l=i.indexOf(e),u=i.indexOf(t,l+1),d=l;if(l>=0&&u>0){if(e===t)return [l,u];for(s=[],n=i.length;d>=0&&!a;){if(d===l)s.push(d),l=i.indexOf(e,d+1);else if(s.length===1){let f=s.pop();f!==void 0&&(a=[f,u]);}else h=s.pop(),h!==void 0&&h<n&&(n=h,o=u),u=i.indexOf(t,d+1);d=l<u&&l>=0?l:u;}s.length&&o!==void 0&&(a=[n,o]);}return a},br="\0SLASH"+Math.random()+"\0",Sr="\0OPEN"+Math.random()+"\0",ys="\0CLOSE"+Math.random()+"\0",vr="\0COMMA"+Math.random()+"\0",Er="\0PERIOD"+Math.random()+"\0",mh=new RegExp(br,"g"),wh=new RegExp(Sr,"g"),yh=new RegExp(ys,"g"),bh=new RegExp(vr,"g"),Sh=new RegExp(Er,"g"),vh=/\\\\/g,Eh=/\\{/g,xh=/\\}/g,kh=/\\,/g,Ch=/\\./g,Rh=1e5;function Ki(e){return isNaN(e)?e.charCodeAt(0):parseInt(e,10)}function Oh(e){return e.replace(vh,br).replace(Eh,Sr).replace(xh,ys).replace(kh,vr).replace(Ch,Er)}function Ah(e){return e.replace(mh,"\\").replace(wh,"{").replace(yh,"}").replace(bh,",").replace(Sh,".")}function xr(e){if(!e)return [""];let t=[],i=yr("{","}",e);if(!i)return e.split(",");let{pre:s,body:h,post:n}=i,o=s.split(",");o[o.length-1]+="{"+h+"}";let a=xr(n);return n.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),t.push.apply(t,o),t}function Th(e,t={}){if(!e)return [];let{max:i=Rh}=t;return e.slice(0,2)==="{}"&&(e="\\{\\}"+e.slice(2)),He(Oh(e),i,true).map(Ah)}function Fh(e){return "{"+e+"}"}function Mh(e){return /^-?0\d/.test(e)}function Lh(e,t){return e<=t}function Wh(e,t){return e>=t}function He(e,t,i){let s=[],h=yr("{","}",e);if(!h)return [e];let n=h.pre,o=h.post.length?He(h.post,t,false):[""];if(/\$$/.test(h.pre))for(let a=0;a<o.length&&a<t;a++){let l=n+"{"+h.body+"}"+o[a];s.push(l);}else {let a=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(h.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(h.body),u=a||l,d=h.body.indexOf(",")>=0;if(!u&&!d)return h.post.match(/,(?!,).*\}/)?(e=h.pre+"{"+h.body+ys+h.post,He(e,t,true)):[e];let f;if(u)f=h.body.split(/\.\./);else if(f=xr(h.body),f.length===1&&f[0]!==void 0&&(f=He(f[0],t,false).map(Fh),f.length===1))return o.map(S=>h.pre+f[0]+S);let w;if(u&&f[0]!==void 0&&f[1]!==void 0){let S=Ki(f[0]),E=Ki(f[1]),b=Math.max(f[0].length,f[1].length),x=f.length===3&&f[2]!==void 0?Math.abs(Ki(f[2])):1,v=Lh;E<S&&(x*=-1,v=Wh);let R=f.some(Mh);w=[];for(let T=S;v(T,E);T+=x){let F;if(l)F=String.fromCharCode(T),F==="\\"&&(F="");else if(F=String(T),R){let k=b-F.length;if(k>0){let M=new Array(k+1).join("0");T<0?F="-"+M+F.slice(1):F=M+F;}}w.push(F);}}else {w=[];for(let S=0;S<f.length;S++)w.push.apply(w,He(f[S],t,false));}for(let S=0;S<w.length;S++)for(let E=0;E<o.length&&s.length<t;E++){let b=n+w[S]+o[E];(!i||u||b)&&s.push(b);}}return s}var _i=e=>{if(typeof e!="string")throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")},Dh={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",true],"[:alpha:]":["\\p{L}\\p{Nl}",true],"[:ascii:]":["\\x00-\\x7f",false],"[:blank:]":["\\p{Zs}\\t",true],"[:cntrl:]":["\\p{Cc}",true],"[:digit:]":["\\p{Nd}",true],"[:graph:]":["\\p{Z}\\p{C}",true,true],"[:lower:]":["\\p{Ll}",true],"[:print:]":["\\p{C}",true],"[:punct:]":["\\p{P}",true],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",true],"[:upper:]":["\\p{Lu}",true],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",true],"[:xdigit:]":["A-Fa-f0-9",false]},_e=e=>e.replace(/[[\]\\-]/g,"\\$&"),Ph=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Os=e=>e.join(""),jh=(e,t)=>{let i=t;if(e.charAt(i)!=="[")throw new Error("not in a brace expression");let s=[],h=[],n=i+1,o=false,a=false,l=false,u=false,d=i,f="";t:for(;n<e.length;){let E=e.charAt(n);if((E==="!"||E==="^")&&n===i+1){u=true,n++;continue}if(E==="]"&&o&&!l){d=n+1;break}if(o=true,E==="\\"&&!l){l=true,n++;continue}if(E==="["&&!l){for(let[b,[x,v,R]]of Object.entries(Dh))if(e.startsWith(b,n)){if(f)return ["$.",false,e.length-i,true];n+=b.length,R?h.push(x):s.push(x),a=a||v;continue t}}if(l=false,f){E>f?s.push(_e(f)+"-"+_e(E)):E===f&&s.push(_e(E)),f="",n++;continue}if(e.startsWith("-]",n+1)){s.push(_e(E+"-")),n+=2;continue}if(e.startsWith("-",n+1)){f=E,n+=2;continue}s.push(_e(E)),n++;}if(d<n)return ["",false,0,false];if(!s.length&&!h.length)return ["$.",false,e.length-i,true];if(h.length===0&&s.length===1&&/^\\?.$/.test(s[0])&&!u){let E=s[0].length===2?s[0].slice(-1):s[0];return [Ph(E),false,d-i,false]}let w="["+(u?"^":"")+Os(s)+"]",S="["+(u?"":"^")+Os(h)+"]";return [s.length&&h.length?"("+w+"|"+S+")":s.length?w:S,a,d-i,true]},Ce=(e,{windowsPathsNoEscape:t=false,magicalBraces:i=true}={})=>i?t?e.replace(/\[([^\/\\])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):t?e.replace(/\[([^\/\\{}])\]/g,"$1"):e.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1"),zh=new Set(["!","?","+","*","@"]),As=e=>zh.has(e),Nh="(?!(?:^|/)\\.\\.?(?:$|/))",xi="(?!\\.)",_h=new Set(["[","."]),Bh=new Set(["..","."]),$h=new Set("().*{}+?[]^$\\!"),Uh=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),bs="[^/]",Ts=bs+"*?",Fs=bs+"+?",B,J,_t,W,N,Xt,ce,Qt,Wt,ue,Xe,Se,Cr,he,Y,Mi,rs,Rr,kr=(Y=class{constructor(t,i,s={}){m(this,Se);p(this,"type");m(this,B);m(this,J);m(this,_t,false);m(this,W,[]);m(this,N);m(this,Xt);m(this,ce);m(this,Qt,false);m(this,Wt);m(this,ue);m(this,Xe,false);this.type=t,t&&c(this,J,true),c(this,N,i),c(this,B,r(this,N)?r(r(this,N),B):this),c(this,Wt,r(this,B)===this?s:r(r(this,B),Wt)),c(this,ce,r(this,B)===this?[]:r(r(this,B),ce)),t==="!"&&!r(r(this,B),Qt)&&r(this,ce).push(this),c(this,Xt,r(this,N)?r(r(this,N),W).length:0);}get hasMagic(){if(r(this,J)!==void 0)return r(this,J);for(let t of r(this,W))if(typeof t!="string"&&(t.type||t.hasMagic))return c(this,J,true);return r(this,J)}toString(){return r(this,ue)!==void 0?r(this,ue):this.type?c(this,ue,this.type+"("+r(this,W).map(t=>String(t)).join("|")+")"):c(this,ue,r(this,W).map(t=>String(t)).join(""))}push(...t){for(let i of t)if(i!==""){if(typeof i!="string"&&!(i instanceof Y&&r(i,N)===this))throw new Error("invalid part: "+i);r(this,W).push(i);}}toJSON(){let t=this.type===null?r(this,W).slice().map(i=>typeof i=="string"?i:i.toJSON()):[this.type,...r(this,W).map(i=>i.toJSON())];return this.isStart()&&!this.type&&t.unshift([]),this.isEnd()&&(this===r(this,B)||r(r(this,B),Qt)&&r(this,N)?.type==="!")&&t.push({}),t}isStart(){if(r(this,B)===this)return true;if(!r(this,N)?.isStart())return false;if(r(this,Xt)===0)return true;let t=r(this,N);for(let i=0;i<r(this,Xt);i++){let s=r(t,W)[i];if(!(s instanceof Y&&s.type==="!"))return false}return true}isEnd(){if(r(this,B)===this||r(this,N)?.type==="!")return true;if(!r(this,N)?.isEnd())return false;if(!this.type)return r(this,N)?.isEnd();let t=r(this,N)?r(r(this,N),W).length:0;return r(this,Xt)===t-1}copyIn(t){typeof t=="string"?this.push(t):this.push(t.clone(this));}clone(t){let i=new Y(this.type,t);for(let s of r(this,W))i.copyIn(s);return i}static fromGlob(t,i={}){var h;let s=new Y(null,void 0,i);return g(h=Y,he,Mi).call(h,t,s,0,i),s}toMMPattern(){if(this!==r(this,B))return r(this,B).toMMPattern();let t=this.toString(),[i,s,h,n]=this.toRegExpSource();if(!(h||r(this,J)||r(this,Wt).nocase&&!r(this,Wt).nocaseMagicOnly&&t.toUpperCase()!==t.toLowerCase()))return s;let o=(r(this,Wt).nocase?"i":"")+(n?"u":"");return Object.assign(new RegExp(`^${i}$`,o),{_src:i,_glob:t})}get options(){return r(this,Wt)}toRegExpSource(t){let i=t??!!r(this,Wt).dot;if(r(this,B)===this&&g(this,Se,Cr).call(this),!this.type){let l=this.isStart()&&this.isEnd()&&!r(this,W).some(w=>typeof w!="string"),u=r(this,W).map(w=>{var v;let[S,E,b,x]=typeof w=="string"?g(v=Y,he,Rr).call(v,w,r(this,J),l):w.toRegExpSource(t);return c(this,J,r(this,J)||b),c(this,_t,r(this,_t)||x),S}).join(""),d="";if(this.isStart()&&typeof r(this,W)[0]=="string"&&!(r(this,W).length===1&&Bh.has(r(this,W)[0]))){let w=_h,S=i&&w.has(u.charAt(0))||u.startsWith("\\.")&&w.has(u.charAt(2))||u.startsWith("\\.\\.")&&w.has(u.charAt(4)),E=!i&&!t&&w.has(u.charAt(0));d=S?Nh:E?xi:"";}let f="";return this.isEnd()&&r(r(this,B),Qt)&&r(this,N)?.type==="!"&&(f="(?:$|\\/)"),[d+u+f,Ce(u),c(this,J,!!r(this,J)),r(this,_t)]}let s=this.type==="*"||this.type==="+",h=this.type==="!"?"(?:(?!(?:":"(?:",n=g(this,Se,rs).call(this,i);if(this.isStart()&&this.isEnd()&&!n&&this.type!=="!"){let l=this.toString();return c(this,W,[l]),this.type=null,c(this,J,void 0),[l,Ce(this.toString()),false,false]}let o=!s||t||i||!xi?"":g(this,Se,rs).call(this,true);o===n&&(o=""),o&&(n=`(?:${n})(?:${o})*?`);let a="";if(this.type==="!"&&r(this,Xe))a=(this.isStart()&&!i?xi:"")+Fs;else {let l=this.type==="!"?"))"+(this.isStart()&&!i&&!t?xi:"")+Ts+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=h+n+l;}return [a,Ce(n),c(this,J,!!r(this,J)),r(this,_t)]}},B=new WeakMap,J=new WeakMap,_t=new WeakMap,W=new WeakMap,N=new WeakMap,Xt=new WeakMap,ce=new WeakMap,Qt=new WeakMap,Wt=new WeakMap,ue=new WeakMap,Xe=new WeakMap,Se=new WeakSet,Cr=function(){if(this!==r(this,B))throw new Error("should only call on root");if(r(this,Qt))return this;this.toString(),c(this,Qt,true);let t;for(;t=r(this,ce).pop();){if(t.type!=="!")continue;let i=t,s=r(i,N);for(;s;){for(let h=r(i,Xt)+1;!s.type&&h<r(s,W).length;h++)for(let n of r(t,W)){if(typeof n=="string")throw new Error("string part in extglob AST??");n.copyIn(r(s,W)[h]);}i=s,s=r(i,N);}}return this},he=new WeakSet,Mi=function(t,i,s,h){var S,E;let n=false,o=false,a=-1,l=false;if(i.type===null){let b=s,x="";for(;b<t.length;){let v=t.charAt(b++);if(n||v==="\\"){n=!n,x+=v;continue}if(o){b===a+1?(v==="^"||v==="!")&&(l=true):v==="]"&&!(b===a+2&&l)&&(o=false),x+=v;continue}else if(v==="["){o=true,a=b,l=false,x+=v;continue}if(!h.noext&&As(v)&&t.charAt(b)==="("){i.push(x),x="";let R=new Y(v,i);b=g(S=Y,he,Mi).call(S,t,R,b,h),i.push(R);continue}x+=v;}return i.push(x),b}let u=s+1,d=new Y(null,i),f=[],w="";for(;u<t.length;){let b=t.charAt(u++);if(n||b==="\\"){n=!n,w+=b;continue}if(o){u===a+1?(b==="^"||b==="!")&&(l=true):b==="]"&&!(u===a+2&&l)&&(o=false),w+=b;continue}else if(b==="["){o=true,a=u,l=false,w+=b;continue}if(As(b)&&t.charAt(u)==="("){d.push(w),w="";let x=new Y(b,d);d.push(x),u=g(E=Y,he,Mi).call(E,t,x,u,h);continue}if(b==="|"){d.push(w),w="",f.push(d),d=new Y(null,i);continue}if(b===")")return w===""&&r(i,W).length===0&&c(i,Xe,true),d.push(w),w="",i.push(...f,d),u;w+=b;}return i.type=null,c(i,J,void 0),c(i,W,[t.substring(s-1)]),u},rs=function(t){return r(this,W).map(i=>{if(typeof i=="string")throw new Error("string type in extglob ast??");let[s,h,n,o]=i.toRegExpSource(t);return c(this,_t,r(this,_t)||o),s}).filter(i=>!(this.isStart()&&this.isEnd())||!!i).join("|")},Rr=function(t,i,s=false){let h=false,n="",o=false,a=false;for(let l=0;l<t.length;l++){let u=t.charAt(l);if(h){h=false,n+=($h.has(u)?"\\":"")+u;continue}if(u==="*"){if(a)continue;a=true,n+=s&&/^[*]+$/.test(t)?Fs:Ts,i=true;continue}else a=false;if(u==="\\"){l===t.length-1?n+="\\\\":h=true;continue}if(u==="["){let[d,f,w,S]=jh(t,l);if(w){n+=d,o=o||f,l+=w-1,i=i||S;continue}}if(u==="?"){n+=bs,i=true;continue}n+=Uh(u);}return [n,Ce(t),!!i,o]},m(Y,he),Y),Or=(e,{windowsPathsNoEscape:t=false,magicalBraces:i=false}={})=>i?t?e.replace(/[?*()[\]{}]/g,"[$&]"):e.replace(/[?*()[\]\\{}]/g,"\\$&"):t?e.replace(/[?*()[\]]/g,"[$&]"):e.replace(/[?*()[\]\\]/g,"\\$&"),ht=(e,t,i={})=>(_i(t),!i.nocomment&&t.charAt(0)==="#"?false:new ne(t,i).match(e)),Ih=/^\*+([^+@!?\*\[\(]*)$/,Gh=e=>t=>!t.startsWith(".")&&t.endsWith(e),Hh=e=>t=>t.endsWith(e),qh=e=>(e=e.toLowerCase(),t=>!t.startsWith(".")&&t.toLowerCase().endsWith(e)),Zh=e=>(e=e.toLowerCase(),t=>t.toLowerCase().endsWith(e)),Jh=/^\*+\.\*+$/,Vh=e=>!e.startsWith(".")&&e.includes("."),Kh=e=>e!=="."&&e!==".."&&e.includes("."),Yh=/^\.\*+$/,Xh=e=>e!=="."&&e!==".."&&e.startsWith("."),Qh=/^\*+$/,tn=e=>e.length!==0&&!e.startsWith("."),en=e=>e.length!==0&&e!=="."&&e!=="..",sn=/^\?+([^+@!?\*\[\(]*)?$/,rn=([e,t=""])=>{let i=Ar([e]);return t?(t=t.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(t)):i},hn=([e,t=""])=>{let i=Tr([e]);return t?(t=t.toLowerCase(),s=>i(s)&&s.toLowerCase().endsWith(t)):i},nn=([e,t=""])=>{let i=Tr([e]);return t?s=>i(s)&&s.endsWith(t):i},on=([e,t=""])=>{let i=Ar([e]);return t?s=>i(s)&&s.endsWith(t):i},Ar=([e])=>{let t=e.length;return i=>i.length===t&&!i.startsWith(".")},Tr=([e])=>{let t=e.length;return i=>i.length===t&&i!=="."&&i!==".."},Fr=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",Ms={win32:{sep:"\\"},posix:{sep:"/"}},an=Fr==="win32"?Ms.win32.sep:Ms.posix.sep;ht.sep=an;var rt=Symbol("globstar **");ht.GLOBSTAR=rt;var ln="[^/]",cn=ln+"*?",un="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",pn="(?:(?!(?:\\/|^)\\.).)*?",fn=(e,t={})=>i=>ht(i,e,t);ht.filter=fn;var gt=(e,t={})=>Object.assign({},e,t),dn=e=>{if(!e||typeof e!="object"||!Object.keys(e).length)return ht;let t=ht;return Object.assign((i,s,h={})=>t(i,s,gt(e,h)),{Minimatch:class extends t.Minimatch{constructor(i,s={}){super(i,gt(e,s));}static defaults(i){return t.defaults(gt(e,i)).Minimatch}},AST:class extends t.AST{constructor(i,s,h={}){super(i,s,gt(e,h));}static fromGlob(i,s={}){return t.AST.fromGlob(i,gt(e,s))}},unescape:(i,s={})=>t.unescape(i,gt(e,s)),escape:(i,s={})=>t.escape(i,gt(e,s)),filter:(i,s={})=>t.filter(i,gt(e,s)),defaults:i=>t.defaults(gt(e,i)),makeRe:(i,s={})=>t.makeRe(i,gt(e,s)),braceExpand:(i,s={})=>t.braceExpand(i,gt(e,s)),match:(i,s,h={})=>t.match(i,s,gt(e,h)),sep:t.sep,GLOBSTAR:rt})};ht.defaults=dn;var Mr=(e,t={})=>(_i(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:Th(e,{max:t.braceExpandMax}));ht.braceExpand=Mr;var gn=(e,t={})=>new ne(e,t).makeRe();ht.makeRe=gn;var mn=(e,t,i={})=>{let s=new ne(t,i);return e=e.filter(h=>s.match(h)),s.options.nonull&&!e.length&&e.push(t),e};ht.match=mn;var Ls=/[?*]|[+@!]\(.*?\)|\[|\]/,wn=e=>e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ne=class{constructor(e,t={}){p(this,"options");p(this,"set");p(this,"pattern");p(this,"windowsPathsNoEscape");p(this,"nonegate");p(this,"negate");p(this,"comment");p(this,"empty");p(this,"preserveMultipleSlashes");p(this,"partial");p(this,"globSet");p(this,"globParts");p(this,"nocase");p(this,"isWindows");p(this,"platform");p(this,"windowsNoMagicRoot");p(this,"regexp");_i(e),t=t||{},this.options=t,this.pattern=e,this.platform=t.platform||Fr,this.isWindows=this.platform==="win32";let i="allowWindowsEscape";this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t[i]===false,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!t.preserveMultipleSlashes,this.regexp=null,this.negate=false,this.nonegate=!!t.nonegate,this.comment=false,this.empty=false,this.partial=!!t.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=t.windowsNoMagicRoot!==void 0?t.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make();}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return true;for(let e of this.set)for(let t of e)if(typeof t!="string")return true;return false}debug(...e){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=true;return}if(!e){this.empty=true;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],t.debug&&(this.debug=(...h)=>console.error(...h)),this.debug(this.pattern,this.globSet);let i=this.globSet.map(h=>this.slashSplit(h));this.globParts=this.preprocess(i),this.debug(this.pattern,this.globParts);let s=this.globParts.map((h,n,o)=>{if(this.isWindows&&this.windowsNoMagicRoot){let a=h[0]===""&&h[1]===""&&(h[2]==="?"||!Ls.test(h[2]))&&!Ls.test(h[3]),l=/^[a-z]:/i.test(h[0]);if(a)return [...h.slice(0,4),...h.slice(4).map(u=>this.parse(u))];if(l)return [h[0],...h.slice(1).map(u=>this.parse(u))]}return h.map(a=>this.parse(a))});if(this.debug(this.pattern,s),this.set=s.filter(h=>h.indexOf(false)===-1),this.isWindows)for(let h=0;h<this.set.length;h++){let n=this.set[h];n[0]===""&&n[1]===""&&this.globParts[h][2]==="?"&&typeof n[3]=="string"&&/^[a-z]:$/i.test(n[3])&&(n[2]="?");}this.debug(this.pattern,this.set);}preprocess(e){if(this.options.noglobstar)for(let i=0;i<e.length;i++)for(let s=0;s<e[i].length;s++)e[i][s]==="**"&&(e[i][s]="*");let{optimizationLevel:t=1}=this.options;return t>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):t>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(t=>{let i=-1;for(;(i=t.indexOf("**",i+1))!==-1;){let s=i;for(;t[s+1]==="**";)s++;s!==i&&t.splice(i,s-i);}return t})}levelOneOptimize(e){return e.map(t=>(t=t.reduce((i,s)=>{let h=i[i.length-1];return s==="**"&&h==="**"?i:s===".."&&h&&h!==".."&&h!=="."&&h!=="**"?(i.pop(),i):(i.push(s),i)},[]),t.length===0?[""]:t))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let t=false;do{if(t=false,!this.preserveMultipleSlashes){for(let s=1;s<e.length-1;s++){let h=e[s];s===1&&h===""&&e[0]===""||(h==="."||h==="")&&(t=true,e.splice(s,1),s--);}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(t=true,e.pop());}let i=0;for(;(i=e.indexOf("..",i+1))!==-1;){let s=e[i-1];s&&s!=="."&&s!==".."&&s!=="**"&&(t=true,e.splice(i-1,2),i-=2);}}while(t);return e.length===0?[""]:e}firstPhasePreProcess(e){let t=false;do{t=false;for(let i of e){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],a=i[s+2],l=i[s+3];if(o!==".."||!a||a==="."||a===".."||!l||l==="."||l==="..")continue;t=true,i.splice(s,1);let u=i.slice(0);u[s]="**",e.push(u),s--;}if(!this.preserveMultipleSlashes){for(let n=1;n<i.length-1;n++){let o=i[n];n===1&&o===""&&i[0]===""||(o==="."||o==="")&&(t=true,i.splice(n,1),n--);}i[0]==="."&&i.length===2&&(i[1]==="."||i[1]==="")&&(t=true,i.pop());}let h=0;for(;(h=i.indexOf("..",h+1))!==-1;){let n=i[h-1];if(n&&n!=="."&&n!==".."&&n!=="**"){t=true;let o=h===1&&i[h+1]==="**"?["."]:[];i.splice(h-1,2,...o),i.length===0&&i.push(""),h-=2;}}}}while(t);return e}secondPhasePreProcess(e){for(let t=0;t<e.length-1;t++)for(let i=t+1;i<e.length;i++){let s=this.partsMatch(e[t],e[i],!this.preserveMultipleSlashes);if(s){e[t]=[],e[i]=s;break}}return e.filter(t=>t.length)}partsMatch(e,t,i=false){let s=0,h=0,n=[],o="";for(;s<e.length&&h<t.length;)if(e[s]===t[h])n.push(o==="b"?t[h]:e[s]),s++,h++;else if(i&&e[s]==="**"&&t[h]===e[s+1])n.push(e[s]),s++;else if(i&&t[h]==="**"&&e[s]===t[h+1])n.push(t[h]),h++;else if(e[s]==="*"&&t[h]&&(this.options.dot||!t[h].startsWith("."))&&t[h]!=="**"){if(o==="b")return false;o="a",n.push(e[s]),s++,h++;}else if(t[h]==="*"&&e[s]&&(this.options.dot||!e[s].startsWith("."))&&e[s]!=="**"){if(o==="a")return false;o="b",n.push(t[h]),s++,h++;}else return false;return e.length===t.length&&n}parseNegate(){if(this.nonegate)return;let e=this.pattern,t=false,i=0;for(let s=0;s<e.length&&e.charAt(s)==="!";s++)t=!t,i++;i&&(this.pattern=e.slice(i)),this.negate=t;}matchOne(e,t,i=false){let s=this.options;if(this.isWindows){let E=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),b=!E&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),x=typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]),v=!x&&t[0]===""&&t[1]===""&&t[2]==="?"&&typeof t[3]=="string"&&/^[a-z]:$/i.test(t[3]),R=b?3:E?0:void 0,T=v?3:x?0:void 0;if(typeof R=="number"&&typeof T=="number"){let[F,k]=[e[R],t[T]];F.toLowerCase()===k.toLowerCase()&&(t[T]=F,T>R?t=t.slice(T):R>T&&(e=e.slice(R)));}}let{optimizationLevel:h=1}=this.options;h>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var n=0,o=0,a=e.length,l=t.length;n<a&&o<l;n++,o++){this.debug("matchOne loop");var u=t[o],d=e[n];if(this.debug(t,u,d),u===false)return false;if(u===rt){this.debug("GLOBSTAR",[t,u,d]);var f=n,w=o+1;if(w===l){for(this.debug("** at the end");n<a;n++)if(e[n]==="."||e[n]===".."||!s.dot&&e[n].charAt(0)===".")return false;return true}for(;f<a;){var S=e[f];if(this.debug(`
2
+ globstar while`,e,f,t,w,S),this.matchOne(e.slice(f),t.slice(w),i))return this.debug("globstar found match!",f,a,S),true;if(S==="."||S===".."||!s.dot&&S.charAt(0)==="."){this.debug("dot detected!",e,f,t,w);break}this.debug("globstar swallow a segment, and continue"),f++;}return !!(i&&(this.debug(`
3
+ >>> no match, partial?`,e,f,t,w),f===a))}let E;if(typeof u=="string"?(E=d===u,this.debug("string match",u,d,E)):(E=u.test(d),this.debug("pattern match",u,d,E)),!E)return false}if(n===a&&o===l)return true;if(n===a)return i;if(o===l)return n===a-1&&e[n]==="";throw new Error("wtf?")}braceExpand(){return Mr(this.pattern,this.options)}parse(e){_i(e);let t=this.options;if(e==="**")return rt;if(e==="")return "";let i,s=null;(i=e.match(Qh))?s=t.dot?en:tn:(i=e.match(Ih))?s=(t.nocase?t.dot?Zh:qh:t.dot?Hh:Gh)(i[1]):(i=e.match(sn))?s=(t.nocase?t.dot?hn:rn:t.dot?nn:on)(i):(i=e.match(Jh))?s=t.dot?Kh:Vh:(i=e.match(Yh))&&(s=Xh);let h=kr.fromGlob(e,this.options).toMMPattern();return s&&typeof h=="object"&&Reflect.defineProperty(h,"test",{value:s}),h}makeRe(){if(this.regexp||this.regexp===false)return this.regexp;let e=this.set;if(!e.length)return this.regexp=false,this.regexp;let t=this.options,i=t.noglobstar?cn:t.dot?un:pn,s=new Set(t.nocase?["i"]:[]),h=e.map(a=>{let l=a.map(d=>{if(d instanceof RegExp)for(let f of d.flags.split(""))s.add(f);return typeof d=="string"?wn(d):d===rt?rt:d._src});l.forEach((d,f)=>{let w=l[f+1],S=l[f-1];d!==rt||S===rt||(S===void 0?w!==void 0&&w!==rt?l[f+1]="(?:\\/|"+i+"\\/)?"+w:l[f]=i:w===void 0?l[f-1]=S+"(?:\\/|\\/"+i+")?":w!==rt&&(l[f-1]=S+"(?:\\/|\\/"+i+"\\/)"+w,l[f+1]=rt));});let u=l.filter(d=>d!==rt);if(this.partial&&u.length>=1){let d=[];for(let f=1;f<=u.length;f++)d.push(u.slice(0,f).join("/"));return "(?:"+d.join("|")+")"}return u.join("/")}).join("|"),[n,o]=e.length>1?["(?:",")"]:["",""];h="^"+n+h+o+"$",this.partial&&(h="^(?:\\/|"+n+h.slice(1,-1)+o+")$"),this.negate&&(h="^(?!"+h+").+$");try{this.regexp=new RegExp(h,[...s].join(""));}catch{this.regexp=false;}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return false;if(this.empty)return e==="";if(e==="/"&&t)return true;let i=this.options;this.isWindows&&(e=e.split("\\").join("/"));let s=this.slashSplit(e);this.debug(this.pattern,"split",s);let h=this.set;this.debug(this.pattern,"set",h);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<h.length;o++){let a=h[o],l=s;if(i.matchBase&&a.length===1&&(l=[n]),this.matchOne(l,a,t))return i.flipNegate?true:!this.negate}return i.flipNegate?false:this.negate}static defaults(e){return ht.defaults(e).Minimatch}};ht.AST=kr;ht.Minimatch=ne;ht.escape=Or;ht.unescape=Ce;var bn=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Lr=new Set,hs=typeof process=="object"&&process?process:{},Wr=(e,t,i,s)=>{typeof hs.emitWarning=="function"?hs.emitWarning(e,t,i,s):console.error(`[${i}] ${t}: ${e}`);},Bi=globalThis.AbortController,Ws=globalThis.AbortSignal;if(typeof Bi>"u"){Ws=class{constructor(){p(this,"onabort");p(this,"_onabort",[]);p(this,"reason");p(this,"aborted",false);}addEventListener(i,s){this._onabort.push(s);}},Bi=class{constructor(){p(this,"signal",new Ws);t();}abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=true;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i);}}};let e=hs.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{e&&(e=false,Wr("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",t));};}var Sn=e=>!Lr.has(e),Jt=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),Dr=e=>Jt(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?Li:null:null,Li=class extends Array{constructor(e){super(e),this.fill(0);}},jt,Re,vn=(jt=class{constructor(t,i){p(this,"heap");p(this,"length");if(!r(jt,Re))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(t),this.length=0;}static create(t){let i=Dr(t);if(!i)return [];c(jt,Re,true);let s=new jt(t,i);return c(jt,Re,false),s}push(t){this.heap[this.length++]=t;}pop(){return this.heap[--this.length]}},Re=new WeakMap,m(jt,Re,false),jt),Js,Vs,wt,ct,Et,pe,xt,Oe,Ae,kt,$,Ct,_,D,A,et,ut,Q,V,Rt,K,Ot,At,pt,ft,Tt,te,it,Te,y,ns,fe,Bt,Qe,dt,Pr,de,Fe,ti,Vt,Kt,os,Wi,Di,L,as,qe,Yt,ls,Me,Ii=(Me=class{constructor(t){m(this,y);m(this,wt);m(this,ct);m(this,Et);m(this,pe);m(this,xt);m(this,Oe);m(this,Ae);m(this,kt);p(this,"ttl");p(this,"ttlResolution");p(this,"ttlAutopurge");p(this,"updateAgeOnGet");p(this,"updateAgeOnHas");p(this,"allowStale");p(this,"noDisposeOnSet");p(this,"noUpdateTTL");p(this,"maxEntrySize");p(this,"sizeCalculation");p(this,"noDeleteOnFetchRejection");p(this,"noDeleteOnStaleGet");p(this,"allowStaleOnFetchAbort");p(this,"allowStaleOnFetchRejection");p(this,"ignoreFetchAbort");m(this,$);m(this,Ct);m(this,_);m(this,D);m(this,A);m(this,et);m(this,ut);m(this,Q);m(this,V);m(this,Rt);m(this,K);m(this,Ot);m(this,At);m(this,pt);m(this,ft);m(this,Tt);m(this,te);m(this,it);m(this,Te);m(this,fe,()=>{});m(this,Bt,()=>{});m(this,Qe,()=>{});m(this,dt,()=>false);m(this,de,t=>{});m(this,Fe,(t,i,s)=>{});m(this,ti,(t,i,s,h)=>{if(s||h)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});p(this,Js,"LRUCache");let{max:i=0,ttl:s,ttlResolution:h=1,ttlAutopurge:n,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:l,dispose:u,onInsert:d,disposeAfter:f,noDisposeOnSet:w,noUpdateTTL:S,maxSize:E=0,maxEntrySize:b=0,sizeCalculation:x,fetchMethod:v,memoMethod:R,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:F,allowStaleOnFetchRejection:k,allowStaleOnFetchAbort:M,ignoreFetchAbort:j,perf:nt}=t;if(nt!==void 0&&typeof nt?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(c(this,kt,nt??bn),i!==0&&!Jt(i))throw new TypeError("max option must be a nonnegative integer");let P=i?Dr(i):Array;if(!P)throw new Error("invalid max value: "+i);if(c(this,wt,i),c(this,ct,E),this.maxEntrySize=b||r(this,ct),this.sizeCalculation=x,this.sizeCalculation){if(!r(this,ct)&&!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(R!==void 0&&typeof R!="function")throw new TypeError("memoMethod must be a function if defined");if(c(this,Ae,R),v!==void 0&&typeof v!="function")throw new TypeError("fetchMethod must be a function if specified");if(c(this,Oe,v),c(this,te,!!v),c(this,_,new Map),c(this,D,new Array(i).fill(void 0)),c(this,A,new Array(i).fill(void 0)),c(this,et,new P(i)),c(this,ut,new P(i)),c(this,Q,0),c(this,V,0),c(this,Rt,vn.create(i)),c(this,$,0),c(this,Ct,0),typeof u=="function"&&c(this,Et,u),typeof d=="function"&&c(this,pe,d),typeof f=="function"?(c(this,xt,f),c(this,K,[])):(c(this,xt,void 0),c(this,K,void 0)),c(this,Tt,!!r(this,Et)),c(this,Te,!!r(this,pe)),c(this,it,!!r(this,xt)),this.noDisposeOnSet=!!w,this.noUpdateTTL=!!S,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!k,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!j,this.maxEntrySize!==0){if(r(this,ct)!==0&&!Jt(r(this,ct)))throw new TypeError("maxSize must be a positive integer if specified");if(!Jt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");g(this,y,Pr).call(this);}if(this.allowStale=!!l,this.noDeleteOnStaleGet=!!F,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Jt(h)||h===0?h:1,this.ttlAutopurge=!!n,this.ttl=s||0,this.ttl){if(!Jt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");g(this,y,ns).call(this);}if(r(this,wt)===0&&this.ttl===0&&r(this,ct)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!r(this,wt)&&!r(this,ct)){let G="LRU_CACHE_UNBOUNDED";Sn(G)&&(Lr.add(G),Wr("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",G,Me));}}get perf(){return r(this,kt)}static unsafeExposeInternals(t){return {starts:r(t,At),ttls:r(t,pt),autopurgeTimers:r(t,ft),sizes:r(t,Ot),keyMap:r(t,_),keyList:r(t,D),valList:r(t,A),next:r(t,et),prev:r(t,ut),get head(){return r(t,Q)},get tail(){return r(t,V)},free:r(t,Rt),isBackgroundFetch:i=>{var s;return g(s=t,y,L).call(s,i)},backgroundFetch:(i,s,h,n)=>{var o;return g(o=t,y,Di).call(o,i,s,h,n)},moveToTail:i=>{var s;return g(s=t,y,qe).call(s,i)},indexes:i=>{var s;return g(s=t,y,Vt).call(s,i)},rindexes:i=>{var s;return g(s=t,y,Kt).call(s,i)},isStale:i=>{var s;return r(s=t,dt).call(s,i)}}}get max(){return r(this,wt)}get maxSize(){return r(this,ct)}get calculatedSize(){return r(this,Ct)}get size(){return r(this,$)}get fetchMethod(){return r(this,Oe)}get memoMethod(){return r(this,Ae)}get dispose(){return r(this,Et)}get onInsert(){return r(this,pe)}get disposeAfter(){return r(this,xt)}getRemainingTTL(t){return r(this,_).has(t)?1/0:0}*entries(){for(let t of g(this,y,Vt).call(this))r(this,A)[t]!==void 0&&r(this,D)[t]!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield [r(this,D)[t],r(this,A)[t]]);}*rentries(){for(let t of g(this,y,Kt).call(this))r(this,A)[t]!==void 0&&r(this,D)[t]!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield [r(this,D)[t],r(this,A)[t]]);}*keys(){for(let t of g(this,y,Vt).call(this)){let i=r(this,D)[t];i!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield i);}}*rkeys(){for(let t of g(this,y,Kt).call(this)){let i=r(this,D)[t];i!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield i);}}*values(){for(let t of g(this,y,Vt).call(this))r(this,A)[t]!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield r(this,A)[t]);}*rvalues(){for(let t of g(this,y,Kt).call(this))r(this,A)[t]!==void 0&&!g(this,y,L).call(this,r(this,A)[t])&&(yield r(this,A)[t]);}[(Vs=Symbol.iterator,Js=Symbol.toStringTag,Vs)](){return this.entries()}find(t,i={}){for(let s of g(this,y,Vt).call(this)){let h=r(this,A)[s],n=g(this,y,L).call(this,h)?h.__staleWhileFetching:h;if(n!==void 0&&t(n,r(this,D)[s],this))return this.get(r(this,D)[s],i)}}forEach(t,i=this){for(let s of g(this,y,Vt).call(this)){let h=r(this,A)[s],n=g(this,y,L).call(this,h)?h.__staleWhileFetching:h;n!==void 0&&t.call(i,n,r(this,D)[s],this);}}rforEach(t,i=this){for(let s of g(this,y,Kt).call(this)){let h=r(this,A)[s],n=g(this,y,L).call(this,h)?h.__staleWhileFetching:h;n!==void 0&&t.call(i,n,r(this,D)[s],this);}}purgeStale(){let t=false;for(let i of g(this,y,Kt).call(this,{allowStale:true}))r(this,dt).call(this,i)&&(g(this,y,Yt).call(this,r(this,D)[i],"expire"),t=true);return t}info(t){let i=r(this,_).get(t);if(i===void 0)return;let s=r(this,A)[i],h=g(this,y,L).call(this,s)?s.__staleWhileFetching:s;if(h===void 0)return;let n={value:h};if(r(this,pt)&&r(this,At)){let o=r(this,pt)[i],a=r(this,At)[i];if(o&&a){let l=o-(r(this,kt).now()-a);n.ttl=l,n.start=Date.now();}}return r(this,Ot)&&(n.size=r(this,Ot)[i]),n}dump(){let t=[];for(let i of g(this,y,Vt).call(this,{allowStale:true})){let s=r(this,D)[i],h=r(this,A)[i],n=g(this,y,L).call(this,h)?h.__staleWhileFetching:h;if(n===void 0||s===void 0)continue;let o={value:n};if(r(this,pt)&&r(this,At)){o.ttl=r(this,pt)[i];let a=r(this,kt).now()-r(this,At)[i];o.start=Math.floor(Date.now()-a);}r(this,Ot)&&(o.size=r(this,Ot)[i]),t.unshift([s,o]);}return t}load(t){this.clear();for(let[i,s]of t){if(s.start){let h=Date.now()-s.start;s.start=r(this,kt).now()-h;}this.set(i,s.value,s);}}set(t,i,s={}){var w,S,E,b;if(i===void 0)return this.delete(t),this;let{ttl:h=this.ttl,start:n,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:l}=s,{noUpdateTTL:u=this.noUpdateTTL}=s,d=r(this,ti).call(this,t,i,s.size||0,a);if(this.maxEntrySize&&d>this.maxEntrySize)return l&&(l.set="miss",l.maxEntrySizeExceeded=true),g(this,y,Yt).call(this,t,"set"),this;let f=r(this,$)===0?void 0:r(this,_).get(t);if(f===void 0)f=r(this,$)===0?r(this,V):r(this,Rt).length!==0?r(this,Rt).pop():r(this,$)===r(this,wt)?g(this,y,Wi).call(this,false):r(this,$),r(this,D)[f]=t,r(this,A)[f]=i,r(this,_).set(t,f),r(this,et)[r(this,V)]=f,r(this,ut)[f]=r(this,V),c(this,V,f),Ei(this,$)._++,r(this,Fe).call(this,f,d,l),l&&(l.set="add"),u=false,r(this,Te)&&((w=r(this,pe))==null||w.call(this,i,t,"add"));else {g(this,y,qe).call(this,f);let x=r(this,A)[f];if(i!==x){if(r(this,te)&&g(this,y,L).call(this,x)){x.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:v}=x;v!==void 0&&!o&&(r(this,Tt)&&((S=r(this,Et))==null||S.call(this,v,t,"set")),r(this,it)&&r(this,K)?.push([v,t,"set"]));}else o||(r(this,Tt)&&((E=r(this,Et))==null||E.call(this,x,t,"set")),r(this,it)&&r(this,K)?.push([x,t,"set"]));if(r(this,de).call(this,f),r(this,Fe).call(this,f,d,l),r(this,A)[f]=i,l){l.set="replace";let v=x&&g(this,y,L).call(this,x)?x.__staleWhileFetching:x;v!==void 0&&(l.oldValue=v);}}else l&&(l.set="update");r(this,Te)&&this.onInsert?.(i,t,i===x?"update":"replace");}if(h!==0&&!r(this,pt)&&g(this,y,ns).call(this),r(this,pt)&&(u||r(this,Qe).call(this,f,h,n),l&&r(this,Bt).call(this,l,f)),!o&&r(this,it)&&r(this,K)){let x=r(this,K),v;for(;v=x?.shift();)(b=r(this,xt))==null||b.call(this,...v);}return this}pop(){var t;try{for(;r(this,$);){let i=r(this,A)[r(this,Q)];if(g(this,y,Wi).call(this,!0),g(this,y,L).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(r(this,it)&&r(this,K)){let i=r(this,K),s;for(;s=i?.shift();)(t=r(this,xt))==null||t.call(this,...s);}}}has(t,i={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:h}=i,n=r(this,_).get(t);if(n!==void 0){let o=r(this,A)[n];if(g(this,y,L).call(this,o)&&o.__staleWhileFetching===void 0)return false;if(r(this,dt).call(this,n))h&&(h.has="stale",r(this,Bt).call(this,h,n));else return s&&r(this,fe).call(this,n),h&&(h.has="hit",r(this,Bt).call(this,h,n)),true}else h&&(h.has="miss");return false}peek(t,i={}){let{allowStale:s=this.allowStale}=i,h=r(this,_).get(t);if(h===void 0||!s&&r(this,dt).call(this,h))return;let n=r(this,A)[h];return g(this,y,L).call(this,n)?n.__staleWhileFetching:n}async fetch(t,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:h=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:l=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:d=this.noUpdateTTL,noDeleteOnFetchRejection:f=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:w=this.allowStaleOnFetchRejection,ignoreFetchAbort:S=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:b,forceRefresh:x=false,status:v,signal:R}=i;if(!r(this,te))return v&&(v.fetch="get"),this.get(t,{allowStale:s,updateAgeOnGet:h,noDeleteOnStaleGet:n,status:v});let T={allowStale:s,updateAgeOnGet:h,noDeleteOnStaleGet:n,ttl:o,noDisposeOnSet:a,size:l,sizeCalculation:u,noUpdateTTL:d,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:w,allowStaleOnFetchAbort:E,ignoreFetchAbort:S,status:v,signal:R},F=r(this,_).get(t);if(F===void 0){v&&(v.fetch="miss");let k=g(this,y,Di).call(this,t,F,T,b);return k.__returned=k}else {let k=r(this,A)[F];if(g(this,y,L).call(this,k)){let P=s&&k.__staleWhileFetching!==void 0;return v&&(v.fetch="inflight",P&&(v.returnedStale=true)),P?k.__staleWhileFetching:k.__returned=k}let M=r(this,dt).call(this,F);if(!x&&!M)return v&&(v.fetch="hit"),g(this,y,qe).call(this,F),h&&r(this,fe).call(this,F),v&&r(this,Bt).call(this,v,F),k;let j=g(this,y,Di).call(this,t,F,T,b),nt=j.__staleWhileFetching!==void 0&&s;return v&&(v.fetch=M?"stale":"refresh",nt&&M&&(v.returnedStale=true)),nt?j.__staleWhileFetching:j.__returned=j}}async forceFetch(t,i={}){let s=await this.fetch(t,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(t,i={}){let s=r(this,Ae);if(!s)throw new Error("no memoMethod provided to constructor");let{context:h,forceRefresh:n,...o}=i,a=this.get(t,o);if(!n&&a!==void 0)return a;let l=s(t,a,{options:o,context:h});return this.set(t,l,o),l}get(t,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:h=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,status:o}=i,a=r(this,_).get(t);if(a!==void 0){let l=r(this,A)[a],u=g(this,y,L).call(this,l);return o&&r(this,Bt).call(this,o,a),r(this,dt).call(this,a)?(o&&(o.get="stale"),u?(o&&s&&l.__staleWhileFetching!==void 0&&(o.returnedStale=true),s?l.__staleWhileFetching:void 0):(n||g(this,y,Yt).call(this,t,"expire"),o&&s&&(o.returnedStale=true),s?l:void 0)):(o&&(o.get="hit"),u?l.__staleWhileFetching:(g(this,y,qe).call(this,a),h&&r(this,fe).call(this,a),l))}else o&&(o.get="miss");}delete(t){return g(this,y,Yt).call(this,t,"delete")}clear(){return g(this,y,ls).call(this,"delete")}},wt=new WeakMap,ct=new WeakMap,Et=new WeakMap,pe=new WeakMap,xt=new WeakMap,Oe=new WeakMap,Ae=new WeakMap,kt=new WeakMap,$=new WeakMap,Ct=new WeakMap,_=new WeakMap,D=new WeakMap,A=new WeakMap,et=new WeakMap,ut=new WeakMap,Q=new WeakMap,V=new WeakMap,Rt=new WeakMap,K=new WeakMap,Ot=new WeakMap,At=new WeakMap,pt=new WeakMap,ft=new WeakMap,Tt=new WeakMap,te=new WeakMap,it=new WeakMap,Te=new WeakMap,y=new WeakSet,ns=function(){let t=new Li(r(this,wt)),i=new Li(r(this,wt));c(this,pt,t),c(this,At,i);let s=this.ttlAutopurge?new Array(r(this,wt)):void 0;c(this,ft,s),c(this,Qe,(o,a,l=r(this,kt).now())=>{if(i[o]=a!==0?l:0,t[o]=a,s?.[o]&&(clearTimeout(s[o]),s[o]=void 0),a!==0&&s){let u=setTimeout(()=>{r(this,dt).call(this,o)&&g(this,y,Yt).call(this,r(this,D)[o],"expire");},a+1);u.unref&&u.unref(),s[o]=u;}}),c(this,fe,o=>{i[o]=t[o]!==0?r(this,kt).now():0;}),c(this,Bt,(o,a)=>{if(t[a]){let l=t[a],u=i[a];if(!l||!u)return;o.ttl=l,o.start=u,o.now=h||n();let d=o.now-u;o.remainingTTL=l-d;}});let h=0,n=()=>{let o=r(this,kt).now();if(this.ttlResolution>0){h=o;let a=setTimeout(()=>h=0,this.ttlResolution);a.unref&&a.unref();}return o};this.getRemainingTTL=o=>{let a=r(this,_).get(o);if(a===void 0)return 0;let l=t[a],u=i[a];if(!l||!u)return 1/0;let d=(h||n())-u;return l-d},c(this,dt,o=>{let a=i[o],l=t[o];return !!l&&!!a&&(h||n())-a>l});},fe=new WeakMap,Bt=new WeakMap,Qe=new WeakMap,dt=new WeakMap,Pr=function(){let t=new Li(r(this,wt));c(this,Ct,0),c(this,Ot,t),c(this,de,i=>{c(this,Ct,r(this,Ct)-t[i]),t[i]=0;}),c(this,ti,(i,s,h,n)=>{if(g(this,y,L).call(this,s))return 0;if(!Jt(h))if(n){if(typeof n!="function")throw new TypeError("sizeCalculation must be a function");if(h=n(s,i),!Jt(h))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 h}),c(this,Fe,(i,s,h)=>{if(t[i]=s,r(this,ct)){let n=r(this,ct)-t[i];for(;r(this,Ct)>n;)g(this,y,Wi).call(this,true);}c(this,Ct,r(this,Ct)+t[i]),h&&(h.entrySize=s,h.totalCalculatedSize=r(this,Ct));});},de=new WeakMap,Fe=new WeakMap,ti=new WeakMap,Vt=function*({allowStale:t=this.allowStale}={}){if(r(this,$))for(let i=r(this,V);!(!g(this,y,os).call(this,i)||((t||!r(this,dt).call(this,i))&&(yield i),i===r(this,Q)));)i=r(this,ut)[i];},Kt=function*({allowStale:t=this.allowStale}={}){if(r(this,$))for(let i=r(this,Q);!(!g(this,y,os).call(this,i)||((t||!r(this,dt).call(this,i))&&(yield i),i===r(this,V)));)i=r(this,et)[i];},os=function(t){return t!==void 0&&r(this,_).get(r(this,D)[t])===t},Wi=function(t){var n;let i=r(this,Q),s=r(this,D)[i],h=r(this,A)[i];return r(this,te)&&g(this,y,L).call(this,h)?h.__abortController.abort(new Error("evicted")):(r(this,Tt)||r(this,it))&&(r(this,Tt)&&((n=r(this,Et))==null||n.call(this,h,s,"evict")),r(this,it)&&r(this,K)?.push([h,s,"evict"])),r(this,de).call(this,i),r(this,ft)?.[i]&&(clearTimeout(r(this,ft)[i]),r(this,ft)[i]=void 0),t&&(r(this,D)[i]=void 0,r(this,A)[i]=void 0,r(this,Rt).push(i)),r(this,$)===1?(c(this,Q,c(this,V,0)),r(this,Rt).length=0):c(this,Q,r(this,et)[i]),r(this,_).delete(s),Ei(this,$)._--,i},Di=function(t,i,s,h){let n=i===void 0?void 0:r(this,A)[i];if(g(this,y,L).call(this,n))return n;let o=new Bi,{signal:a}=s;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let l={signal:o.signal,options:s,context:h},u=(b,x=false)=>{let{aborted:v}=o.signal,R=s.ignoreFetchAbort&&b!==void 0,T=s.ignoreFetchAbort||!!(s.allowStaleOnFetchAbort&&b!==void 0);if(s.status&&(v&&!x?(s.status.fetchAborted=true,s.status.fetchError=o.signal.reason,R&&(s.status.fetchAbortIgnored=true)):s.status.fetchResolved=true),v&&!R&&!x)return f(o.signal.reason,T);let F=S,k=r(this,A)[i];return (k===S||R&&x&&k===void 0)&&(b===void 0?F.__staleWhileFetching!==void 0?r(this,A)[i]=F.__staleWhileFetching:g(this,y,Yt).call(this,t,"fetch"):(s.status&&(s.status.fetchUpdated=true),this.set(t,b,l.options))),b},d=b=>(s.status&&(s.status.fetchRejected=true,s.status.fetchError=b),f(b,false)),f=(b,x)=>{let{aborted:v}=o.signal,R=v&&s.allowStaleOnFetchAbort,T=R||s.allowStaleOnFetchRejection,F=T||s.noDeleteOnFetchRejection,k=S;if(r(this,A)[i]===S&&(!F||!x&&k.__staleWhileFetching===void 0?g(this,y,Yt).call(this,t,"fetch"):R||(r(this,A)[i]=k.__staleWhileFetching)),T)return s.status&&k.__staleWhileFetching!==void 0&&(s.status.returnedStale=true),k.__staleWhileFetching;if(k.__returned===k)throw b},w=(b,x)=>{var R;let v=(R=r(this,Oe))==null?void 0:R.call(this,t,n,l);v&&v instanceof Promise&&v.then(T=>b(T===void 0?void 0:T),x),o.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(b(void 0),s.allowStaleOnFetchAbort&&(b=T=>u(T,true)));});};s.status&&(s.status.fetchDispatched=true);let S=new Promise(w).then(u,d),E=Object.assign(S,{__abortController:o,__staleWhileFetching:n,__returned:void 0});return i===void 0?(this.set(t,E,{...l.options,status:void 0}),i=r(this,_).get(t)):r(this,A)[i]=E,E},L=function(t){if(!r(this,te))return false;let i=t;return !!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof Bi},as=function(t,i){r(this,ut)[i]=t,r(this,et)[t]=i;},qe=function(t){t!==r(this,V)&&(t===r(this,Q)?c(this,Q,r(this,et)[t]):g(this,y,as).call(this,r(this,ut)[t],r(this,et)[t]),g(this,y,as).call(this,r(this,V),t),c(this,V,t));},Yt=function(t,i){var h,n;let s=false;if(r(this,$)!==0){let o=r(this,_).get(t);if(o!==void 0)if(r(this,ft)?.[o]&&(clearTimeout(r(this,ft)?.[o]),r(this,ft)[o]=void 0),s=true,r(this,$)===1)g(this,y,ls).call(this,i);else {r(this,de).call(this,o);let a=r(this,A)[o];if(g(this,y,L).call(this,a)?a.__abortController.abort(new Error("deleted")):(r(this,Tt)||r(this,it))&&(r(this,Tt)&&((h=r(this,Et))==null||h.call(this,a,t,i)),r(this,it)&&r(this,K)?.push([a,t,i])),r(this,_).delete(t),r(this,D)[o]=void 0,r(this,A)[o]=void 0,o===r(this,V))c(this,V,r(this,ut)[o]);else if(o===r(this,Q))c(this,Q,r(this,et)[o]);else {let l=r(this,ut)[o];r(this,et)[l]=r(this,et)[o];let u=r(this,et)[o];r(this,ut)[u]=r(this,ut)[o];}Ei(this,$)._--,r(this,Rt).push(o);}}if(r(this,it)&&r(this,K)?.length){let o=r(this,K),a;for(;a=o?.shift();)(n=r(this,xt))==null||n.call(this,...a);}return s},ls=function(t){var i,s;for(let h of g(this,y,Kt).call(this,{allowStale:true})){let n=r(this,A)[h];if(g(this,y,L).call(this,n))n.__abortController.abort(new Error("deleted"));else {let o=r(this,D)[h];r(this,Tt)&&((i=r(this,Et))==null||i.call(this,n,o,t)),r(this,it)&&r(this,K)?.push([n,o,t]);}}if(r(this,_).clear(),r(this,A).fill(void 0),r(this,D).fill(void 0),r(this,pt)&&r(this,At)){r(this,pt).fill(0),r(this,At).fill(0);for(let h of r(this,ft)??[])h!==void 0&&clearTimeout(h);r(this,ft)?.fill(void 0);}if(r(this,Ot)&&r(this,Ot).fill(0),c(this,Q,0),c(this,V,0),r(this,Rt).length=0,c(this,Ct,0),c(this,$,0),r(this,it)&&r(this,K)){let h=r(this,K),n;for(;n=h?.shift();)(s=r(this,xt))==null||s.call(this,...n);}},Me),Ds=typeof process=="object"&&process?process:{stdout:null,stderr:null},Pn=e=>!!e&&typeof e=="object"&&(e instanceof $i||e instanceof jr__default.default||jn(e)||zn(e)),jn=e=>!!e&&typeof e=="object"&&e instanceof events.EventEmitter&&typeof e.pipe=="function"&&e.pipe!==jr__default.default.Writable.prototype.pipe,zn=e=>!!e&&typeof e=="object"&&e instanceof events.EventEmitter&&typeof e.write=="function"&&typeof e.end=="function",zt=Symbol("EOF"),Nt=Symbol("maybeEmitEnd"),Zt=Symbol("emittedEnd"),ki=Symbol("emittingEnd"),Be=Symbol("emittedError"),Ci=Symbol("closed"),Ps=Symbol("read"),Ri=Symbol("flush"),js=Symbol("flushChunk"),St=Symbol("encoding"),xe=Symbol("decoder"),H=Symbol("flowing"),$e=Symbol("paused"),ke=Symbol("resume"),q=Symbol("buffer"),tt=Symbol("pipes"),Z=Symbol("bufferLength"),Yi=Symbol("bufferPush"),Oi=Symbol("bufferShift"),X=Symbol("objectMode"),z=Symbol("destroyed"),Xi=Symbol("error"),Qi=Symbol("emitData"),zs=Symbol("emitEnd"),ts=Symbol("emitEnd2"),Mt=Symbol("async"),es=Symbol("abort"),Ai=Symbol("aborted"),Ue=Symbol("signal"),oe=Symbol("dataListeners"),lt=Symbol("discarded"),Ie=e=>Promise.resolve().then(e),Nn=e=>e(),_n=e=>e==="end"||e==="finish"||e==="prefinish",Bn=e=>e instanceof ArrayBuffer||!!e&&typeof e=="object"&&e.constructor&&e.constructor.name==="ArrayBuffer"&&e.byteLength>=0,$n=e=>!Buffer.isBuffer(e)&&ArrayBuffer.isView(e),zr=class{constructor(e,t,i){p(this,"src");p(this,"dest");p(this,"opts");p(this,"ondrain");this.src=e,this.dest=t,this.opts=i,this.ondrain=()=>e[ke](),this.dest.on("drain",this.ondrain);}unpipe(){this.dest.removeListener("drain",this.ondrain);}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end();}},Un=class extends zr{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe();}constructor(e,t,i){super(e,t,i),this.proxyErrors=s=>this.dest.emit("error",s),e.on("error",this.proxyErrors);}},In=e=>!!e.objectMode,Gn=e=>!e.objectMode&&!!e.encoding&&e.encoding!=="buffer",Ks,Ys,Xs,Qs,tr,er,ir,sr,rr,hr,nr,or,ar,lr,cr,ur,pr,fr,dr,$i=class extends events.EventEmitter{constructor(...t){let i=t[0]||{};super();p(this,dr,false);p(this,fr,false);p(this,pr,[]);p(this,ur,[]);p(this,cr);p(this,lr);p(this,ar);p(this,or);p(this,nr,false);p(this,hr,false);p(this,rr,false);p(this,sr,false);p(this,ir,null);p(this,er,0);p(this,tr,false);p(this,Qs);p(this,Xs,false);p(this,Ys,0);p(this,Ks,false);p(this,"writable",true);p(this,"readable",true);if(i.objectMode&&typeof i.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");In(i)?(this[X]=true,this[St]=null):Gn(i)?(this[St]=i.encoding,this[X]=false):(this[X]=false,this[St]=null),this[Mt]=!!i.async,this[xe]=this[St]?new string_decoder.StringDecoder(this[St]):null,i&&i.debugExposeBuffer===true&&Object.defineProperty(this,"buffer",{get:()=>this[q]}),i&&i.debugExposePipes===true&&Object.defineProperty(this,"pipes",{get:()=>this[tt]});let{signal:s}=i;s&&(this[Ue]=s,s.aborted?this[es]():s.addEventListener("abort",()=>this[es]()));}get bufferLength(){return this[Z]}get encoding(){return this[St]}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[X]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[Mt]}set async(t){this[Mt]=this[Mt]||!!t;}[(dr=H,fr=$e,pr=tt,ur=q,cr=X,lr=St,ar=Mt,or=xe,nr=zt,hr=Zt,rr=ki,sr=Ci,ir=Be,er=Z,tr=z,Qs=Ue,Xs=Ai,Ys=oe,Ks=lt,es)](){this[Ai]=true,this.emit("abort",this[Ue]?.reason),this.destroy(this[Ue]?.reason);}get aborted(){return this[Ai]}set aborted(t){}write(t,i,s){if(this[Ai])return false;if(this[zt])throw new Error("write after end");if(this[z])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),true;typeof i=="function"&&(s=i,i="utf8"),i||(i="utf8");let h=this[Mt]?Ie:Nn;if(!this[X]&&!Buffer.isBuffer(t)){if($n(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(Bn(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[X]?(this[H]&&this[Z]!==0&&this[Ri](true),this[H]?this.emit("data",t):this[Yi](t),this[Z]!==0&&this.emit("readable"),s&&h(s),this[H]):t.length?(typeof t=="string"&&!(i===this[St]&&!this[xe]?.lastNeed)&&(t=Buffer.from(t,i)),Buffer.isBuffer(t)&&this[St]&&(t=this[xe].write(t)),this[H]&&this[Z]!==0&&this[Ri](true),this[H]?this.emit("data",t):this[Yi](t),this[Z]!==0&&this.emit("readable"),s&&h(s),this[H]):(this[Z]!==0&&this.emit("readable"),s&&h(s),this[H])}read(t){if(this[z])return null;if(this[lt]=false,this[Z]===0||t===0||t&&t>this[Z])return this[Nt](),null;this[X]&&(t=null),this[q].length>1&&!this[X]&&(this[q]=[this[St]?this[q].join(""):Buffer.concat(this[q],this[Z])]);let i=this[Ps](t||null,this[q][0]);return this[Nt](),i}[Ps](t,i){if(this[X])this[Oi]();else {let s=i;t===s.length||t===null?this[Oi]():typeof s=="string"?(this[q][0]=s.slice(t),i=s.slice(0,t),this[Z]-=t):(this[q][0]=s.subarray(t),i=s.subarray(0,t),this[Z]-=t);}return this.emit("data",i),!this[q].length&&!this[zt]&&this.emit("drain"),i}end(t,i,s){return typeof t=="function"&&(s=t,t=void 0),typeof i=="function"&&(s=i,i="utf8"),t!==void 0&&this.write(t,i),s&&this.once("end",s),this[zt]=true,this.writable=false,(this[H]||!this[$e])&&this[Nt](),this}[ke](){this[z]||(!this[oe]&&!this[tt].length&&(this[lt]=true),this[$e]=false,this[H]=true,this.emit("resume"),this[q].length?this[Ri]():this[zt]?this[Nt]():this.emit("drain"));}resume(){return this[ke]()}pause(){this[H]=false,this[$e]=true,this[lt]=false;}get destroyed(){return this[z]}get flowing(){return this[H]}get paused(){return this[$e]}[Yi](t){this[X]?this[Z]+=1:this[Z]+=t.length,this[q].push(t);}[Oi](){return this[X]?this[Z]-=1:this[Z]-=this[q][0].length,this[q].shift()}[Ri](t=false){do;while(this[js](this[Oi]())&&this[q].length);!t&&!this[q].length&&!this[zt]&&this.emit("drain");}[js](t){return this.emit("data",t),this[H]}pipe(t,i){if(this[z])return t;this[lt]=false;let s=this[Zt];return i=i||{},t===Ds.stdout||t===Ds.stderr?i.end=false:i.end=i.end!==false,i.proxyErrors=!!i.proxyErrors,s?i.end&&t.end():(this[tt].push(i.proxyErrors?new Un(this,t,i):new zr(this,t,i)),this[Mt]?Ie(()=>this[ke]()):this[ke]()),t}unpipe(t){let i=this[tt].find(s=>s.dest===t);i&&(this[tt].length===1?(this[H]&&this[oe]===0&&(this[H]=false),this[tt]=[]):this[tt].splice(this[tt].indexOf(i),1),i.unpipe());}addListener(t,i){return this.on(t,i)}on(t,i){let s=super.on(t,i);if(t==="data")this[lt]=false,this[oe]++,!this[tt].length&&!this[H]&&this[ke]();else if(t==="readable"&&this[Z]!==0)super.emit("readable");else if(_n(t)&&this[Zt])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[Be]){let h=i;this[Mt]?Ie(()=>h.call(this,this[Be])):h.call(this,this[Be]);}return s}removeListener(t,i){return this.off(t,i)}off(t,i){let s=super.off(t,i);return t==="data"&&(this[oe]=this.listeners("data").length,this[oe]===0&&!this[lt]&&!this[tt].length&&(this[H]=false)),s}removeAllListeners(t){let i=super.removeAllListeners(t);return (t==="data"||t===void 0)&&(this[oe]=0,!this[lt]&&!this[tt].length&&(this[H]=false)),i}get emittedEnd(){return this[Zt]}[Nt](){!this[ki]&&!this[Zt]&&!this[z]&&this[q].length===0&&this[zt]&&(this[ki]=true,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Ci]&&this.emit("close"),this[ki]=false);}emit(t,...i){let s=i[0];if(t!=="error"&&t!=="close"&&t!==z&&this[z])return false;if(t==="data")return !this[X]&&!s?false:this[Mt]?(Ie(()=>this[Qi](s)),true):this[Qi](s);if(t==="end")return this[zs]();if(t==="close"){if(this[Ci]=true,!this[Zt]&&!this[z])return false;let n=super.emit("close");return this.removeAllListeners("close"),n}else if(t==="error"){this[Be]=s,super.emit(Xi,s);let n=!this[Ue]||this.listeners("error").length?super.emit("error",s):false;return this[Nt](),n}else if(t==="resume"){let n=super.emit("resume");return this[Nt](),n}else if(t==="finish"||t==="prefinish"){let n=super.emit(t);return this.removeAllListeners(t),n}let h=super.emit(t,...i);return this[Nt](),h}[Qi](t){for(let s of this[tt])s.dest.write(t)===false&&this.pause();let i=this[lt]?false:super.emit("data",t);return this[Nt](),i}[zs](){return this[Zt]?false:(this[Zt]=true,this.readable=false,this[Mt]?(Ie(()=>this[ts]()),true):this[ts]())}[ts](){if(this[xe]){let i=this[xe].end();if(i){for(let s of this[tt])s.dest.write(i);this[lt]||super.emit("data",i);}}for(let i of this[tt])i.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[X]||(t.dataLength=0);let i=this.promise();return this.on("data",s=>{t.push(s),this[X]||(t.dataLength+=s.length);}),await i,t}async concat(){if(this[X])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[St]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise((t,i)=>{this.on(z,()=>i(new Error("stream destroyed"))),this.on("error",s=>i(s)),this.on("end",()=>t());})}[Symbol.asyncIterator](){this[lt]=false;let t=false,i=async()=>(this.pause(),t=true,{value:void 0,done:true});return {next:()=>{if(t)return i();let s=this.read();if(s!==null)return Promise.resolve({done:false,value:s});if(this[zt])return i();let h,n,o=d=>{this.off("data",a),this.off("end",l),this.off(z,u),i(),n(d);},a=d=>{this.off("error",o),this.off("end",l),this.off(z,u),this.pause(),h({value:d,done:!!this[zt]});},l=()=>{this.off("error",o),this.off("data",a),this.off(z,u),i(),h({done:true,value:void 0});},u=()=>o(new Error("stream destroyed"));return new Promise((d,f)=>{n=f,h=d,this.once(z,u),this.once("error",o),this.once("end",l),this.once("data",a);})},throw:i,return:i,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[lt]=false;let t=false,i=()=>(this.pause(),this.off(Xi,i),this.off(z,i),this.off("end",i),t=true,{done:true,value:void 0}),s=()=>{if(t)return i();let h=this.read();return h===null?i():{done:false,value:h}};return this.once("end",i),this.once(Xi,i),this.once(z,i),{next:s,throw:i,return:i,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(t){if(this[z])return t?this.emit("error",t):this.emit(z),this;this[z]=true,this[lt]=true,this[q].length=0,this[Z]=0;let i=this;return typeof i.close=="function"&&!this[Ci]&&i.close(),t?this.emit("error",t):this.emit(z),this}static get isStream(){return Pn}},Hn=Tn.realpathSync.native,Ze={lstatSync:Tn.lstatSync,readdir:Tn.readdir,readdirSync:Tn.readdirSync,readlinkSync:Tn.readlinkSync,realpathSync:Hn,promises:{lstat:lh.lstat,readdir:lh.readdir,readlink:lh.readlink,realpath:lh.realpath}},Nr=e=>!e||e===Ze||e===Tn__namespace?Ze:{...Ze,...e,promises:{...Ze.promises,...e.promises||{}}},_r=/^\\\\\?\\([a-z]:)\\?$/i,qn=e=>e.replace(/\//g,"\\").replace(_r,"$1\\"),Zn=/[\\\/]/,yt=0,Br=1,$r=2,Lt=4,Ur=6,Ir=8,ae=10,Gr=12,mt=15,Ge=~mt,is=16,Ns=32,Je=64,vt=128,Ti=256,Pi=512,_s=Je|vt|Pi,Jn=1023,ss=e=>e.isFile()?Ir:e.isDirectory()?Lt:e.isSymbolicLink()?ae:e.isCharacterDevice()?$r:e.isBlockDevice()?Ur:e.isSocket()?Gr:e.isFIFO()?Br:yt,Bs=new Ii({max:2**12}),Ve=e=>{let t=Bs.get(e);if(t)return t;let i=e.normalize("NFKD");return Bs.set(e,i),i},$s=new Ii({max:2**12}),Fi=e=>{let t=$s.get(e);if(t)return t;let i=Ve(e.toLowerCase());return $s.set(e,i),i},Us=class extends Ii{constructor(){super({max:256});}},Vn=class extends Ii{constructor(e=16*1024){super({maxSize:e,sizeCalculation:t=>t.length+1});}},Hr=Symbol("PathScurry setAsCwd"),st,ei,ii,si,ri,hi,ni,oi,ai,li,ci,ui,pi,fi,di,gi,mi,wi,yi,ee,ge,Dt,$t,Ut,It,O,me,Gt,Pt,C,us,ji,Ke,ps,fs,Ye,zi,ds,gs,Ni,qr,Zr,Jr,ms,Le,We,Vr,we,gr,ot=(gr=class{constructor(e,t=yt,i,s,h,n,o){m(this,C);p(this,"name");p(this,"root");p(this,"roots");p(this,"parent");p(this,"nocase");p(this,"isCWD",false);m(this,st);m(this,ei);m(this,ii);m(this,si);m(this,ri);m(this,hi);m(this,ni);m(this,oi);m(this,ai);m(this,li);m(this,ci);m(this,ui);m(this,pi);m(this,fi);m(this,di);m(this,gi);m(this,mi);m(this,wi);m(this,yi);m(this,ee);m(this,ge);m(this,Dt);m(this,$t);m(this,Ut);m(this,It);m(this,O);m(this,me);m(this,Gt);m(this,Pt);m(this,Le,[]);m(this,We,false);m(this,we);this.name=e,c(this,ee,h?Fi(e):Ve(e)),c(this,O,t&Jn),this.nocase=h,this.roots=s,this.root=i||this,c(this,me,n),c(this,Dt,o.fullpath),c(this,Ut,o.relative),c(this,It,o.relativePosix),this.parent=o.parent,this.parent?c(this,st,r(this.parent,st)):c(this,st,Nr(o.fs));}get dev(){return r(this,ei)}get mode(){return r(this,ii)}get nlink(){return r(this,si)}get uid(){return r(this,ri)}get gid(){return r(this,hi)}get rdev(){return r(this,ni)}get blksize(){return r(this,oi)}get ino(){return r(this,ai)}get size(){return r(this,li)}get blocks(){return r(this,ci)}get atimeMs(){return r(this,ui)}get mtimeMs(){return r(this,pi)}get ctimeMs(){return r(this,fi)}get birthtimeMs(){return r(this,di)}get atime(){return r(this,gi)}get mtime(){return r(this,mi)}get ctime(){return r(this,wi)}get birthtime(){return r(this,yi)}get parentPath(){return (this.parent||this).fullpath()}get path(){return this.parentPath}depth(){return r(this,ge)!==void 0?r(this,ge):this.parent?c(this,ge,this.parent.depth()+1):c(this,ge,0)}childrenCache(){return r(this,me)}resolve(e){var s;if(!e)return this;let t=this.getRootString(e),i=e.substring(t.length).split(this.splitSep);return t?g(s=this.getRoot(t),C,us).call(s,i):g(this,C,us).call(this,i)}children(){let e=r(this,me).get(this);if(e)return e;let t=Object.assign([],{provisional:0});return r(this,me).set(this,t),c(this,O,r(this,O)&~is),t}child(e,t){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let i=this.children(),s=this.nocase?Fi(e):Ve(e);for(let a of i)if(r(a,ee)===s)return a;let h=this.parent?this.sep:"",n=r(this,Dt)?r(this,Dt)+h+e:void 0,o=this.newChild(e,yt,{...t,parent:this,fullpath:n});return this.canReaddir()||c(o,O,r(o,O)|vt),i.push(o),o}relative(){if(this.isCWD)return "";if(r(this,Ut)!==void 0)return r(this,Ut);let e=this.name,t=this.parent;if(!t)return c(this,Ut,this.name);let i=t.relative();return i+(!i||!t.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return "";if(r(this,It)!==void 0)return r(this,It);let e=this.name,t=this.parent;if(!t)return c(this,It,this.fullpathPosix());let i=t.relativePosix();return i+(!i||!t.parent?"":"/")+e}fullpath(){if(r(this,Dt)!==void 0)return r(this,Dt);let e=this.name,t=this.parent;if(!t)return c(this,Dt,this.name);let i=t.fullpath()+(t.parent?this.sep:"")+e;return c(this,Dt,i)}fullpathPosix(){if(r(this,$t)!==void 0)return r(this,$t);if(this.sep==="/")return c(this,$t,this.fullpath());if(!this.parent){let s=this.fullpath().replace(/\\/g,"/");return /^[a-z]:\//i.test(s)?c(this,$t,`//?/${s}`):c(this,$t,s)}let e=this.parent,t=e.fullpathPosix(),i=t+(!t||!e.parent?"":"/")+this.name;return c(this,$t,i)}isUnknown(){return (r(this,O)&mt)===yt}isType(e){return this[`is${e}`]()}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 (r(this,O)&mt)===Ir}isDirectory(){return (r(this,O)&mt)===Lt}isCharacterDevice(){return (r(this,O)&mt)===$r}isBlockDevice(){return (r(this,O)&mt)===Ur}isFIFO(){return (r(this,O)&mt)===Br}isSocket(){return (r(this,O)&mt)===Gr}isSymbolicLink(){return (r(this,O)&ae)===ae}lstatCached(){return r(this,O)&Ns?this:void 0}readlinkCached(){return r(this,Gt)}realpathCached(){return r(this,Pt)}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(r(this,Gt))return true;if(!this.parent)return false;let e=r(this,O)&mt;return !(e!==yt&&e!==ae||r(this,O)&Ti||r(this,O)&vt)}calledReaddir(){return !!(r(this,O)&is)}isENOENT(){return !!(r(this,O)&vt)}isNamed(e){return this.nocase?r(this,ee)===Fi(e):r(this,ee)===Ve(e)}async readlink(){let e=r(this,Gt);if(e)return e;if(this.canReadlink()&&this.parent)try{let t=await r(this,st).promises.readlink(this.fullpath()),i=(await this.parent.realpath())?.resolve(t);if(i)return c(this,Gt,i)}catch(t){g(this,C,gs).call(this,t.code);return}}readlinkSync(){let e=r(this,Gt);if(e)return e;if(this.canReadlink()&&this.parent)try{let t=r(this,st).readlinkSync(this.fullpath()),i=this.parent.realpathSync()?.resolve(t);if(i)return c(this,Gt,i)}catch(t){g(this,C,gs).call(this,t.code);return}}async lstat(){if((r(this,O)&vt)===0)try{return g(this,C,ms).call(this,await r(this,st).promises.lstat(this.fullpath())),this}catch(e){g(this,C,ds).call(this,e.code);}}lstatSync(){if((r(this,O)&vt)===0)try{return g(this,C,ms).call(this,r(this,st).lstatSync(this.fullpath())),this}catch(e){g(this,C,ds).call(this,e.code);}}readdirCB(e,t=false){if(!this.canReaddir()){t?e(null,[]):queueMicrotask(()=>e(null,[]));return}let i=this.children();if(this.calledReaddir()){let h=i.slice(0,i.provisional);t?e(null,h):queueMicrotask(()=>e(null,h));return}if(r(this,Le).push(e),r(this,We))return;c(this,We,true);let s=this.fullpath();r(this,st).readdir(s,{withFileTypes:true},(h,n)=>{if(h)g(this,C,zi).call(this,h.code),i.provisional=0;else {for(let o of n)g(this,C,Ni).call(this,o,i);g(this,C,ji).call(this,i);}g(this,C,Vr).call(this,i.slice(0,i.provisional));});}async readdir(){if(!this.canReaddir())return [];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();if(r(this,we))await r(this,we);else {let i=()=>{};c(this,we,new Promise(s=>i=s));try{for(let s of await r(this,st).promises.readdir(t,{withFileTypes:!0}))g(this,C,Ni).call(this,s,e);g(this,C,ji).call(this,e);}catch(s){g(this,C,zi).call(this,s.code),e.provisional=0;}c(this,we,void 0),i();}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return [];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let t=this.fullpath();try{for(let i of r(this,st).readdirSync(t,{withFileTypes:!0}))g(this,C,Ni).call(this,i,e);g(this,C,ji).call(this,e);}catch(i){g(this,C,zi).call(this,i.code),e.provisional=0;}return e.slice(0,e.provisional)}canReaddir(){if(r(this,O)&_s)return false;let e=mt&r(this,O);return e===yt||e===Lt||e===ae}shouldWalk(e,t){return (r(this,O)&Lt)===Lt&&!(r(this,O)&_s)&&!e.has(this)&&(!t||t(this))}async realpath(){if(r(this,Pt))return r(this,Pt);if(!((Pi|Ti|vt)&r(this,O)))try{let e=await r(this,st).promises.realpath(this.fullpath());return c(this,Pt,this.resolve(e))}catch{g(this,C,fs).call(this);}}realpathSync(){if(r(this,Pt))return r(this,Pt);if(!((Pi|Ti|vt)&r(this,O)))try{let e=r(this,st).realpathSync(this.fullpath());return c(this,Pt,this.resolve(e))}catch{g(this,C,fs).call(this);}}[Hr](e){if(e===this)return;e.isCWD=false,this.isCWD=true;let t=new Set([]),i=[],s=this;for(;s&&s.parent;)t.add(s),c(s,Ut,i.join(this.sep)),c(s,It,i.join("/")),s=s.parent,i.push("..");for(s=e;s&&s.parent&&!t.has(s);)c(s,Ut,void 0),c(s,It,void 0),s=s.parent;}},st=new WeakMap,ei=new WeakMap,ii=new WeakMap,si=new WeakMap,ri=new WeakMap,hi=new WeakMap,ni=new WeakMap,oi=new WeakMap,ai=new WeakMap,li=new WeakMap,ci=new WeakMap,ui=new WeakMap,pi=new WeakMap,fi=new WeakMap,di=new WeakMap,gi=new WeakMap,mi=new WeakMap,wi=new WeakMap,yi=new WeakMap,ee=new WeakMap,ge=new WeakMap,Dt=new WeakMap,$t=new WeakMap,Ut=new WeakMap,It=new WeakMap,O=new WeakMap,me=new WeakMap,Gt=new WeakMap,Pt=new WeakMap,C=new WeakSet,us=function(e){let t=this;for(let i of e)t=t.child(i);return t},ji=function(e){var t;c(this,O,r(this,O)|is);for(let i=e.provisional;i<e.length;i++){let s=e[i];s&&g(t=s,C,Ke).call(t);}},Ke=function(){r(this,O)&vt||(c(this,O,(r(this,O)|vt)&Ge),g(this,C,ps).call(this));},ps=function(){var t;let e=this.children();e.provisional=0;for(let i of e)g(t=i,C,Ke).call(t);},fs=function(){c(this,O,r(this,O)|Pi),g(this,C,Ye).call(this);},Ye=function(){if(r(this,O)&Je)return;let e=r(this,O);(e&mt)===Lt&&(e&=Ge),c(this,O,e|Je),g(this,C,ps).call(this);},zi=function(e=""){e==="ENOTDIR"||e==="EPERM"?g(this,C,Ye).call(this):e==="ENOENT"?g(this,C,Ke).call(this):this.children().provisional=0;},ds=function(e=""){var t;e==="ENOTDIR"?g(t=this.parent,C,Ye).call(t):e==="ENOENT"&&g(this,C,Ke).call(this);},gs=function(e=""){var i;let t=r(this,O);t|=Ti,e==="ENOENT"&&(t|=vt),(e==="EINVAL"||e==="UNKNOWN")&&(t&=Ge),c(this,O,t),e==="ENOTDIR"&&this.parent&&g(i=this.parent,C,Ye).call(i);},Ni=function(e,t){return g(this,C,Zr).call(this,e,t)||g(this,C,qr).call(this,e,t)},qr=function(e,t){let i=ss(e),s=this.newChild(e.name,i,{parent:this}),h=r(s,O)&mt;return h!==Lt&&h!==ae&&h!==yt&&c(s,O,r(s,O)|Je),t.unshift(s),t.provisional++,s},Zr=function(e,t){for(let i=t.provisional;i<t.length;i++){let s=t[i];if((this.nocase?Fi(e.name):Ve(e.name))===r(s,ee))return g(this,C,Jr).call(this,e,s,i,t)}},Jr=function(e,t,i,s){let h=t.name;return c(t,O,r(t,O)&Ge|ss(e)),h!==e.name&&(t.name=e.name),i!==s.provisional&&(i===s.length-1?s.pop():s.splice(i,1),s.unshift(t)),s.provisional++,t},ms=function(e){let{atime:t,atimeMs:i,birthtime:s,birthtimeMs:h,blksize:n,blocks:o,ctime:a,ctimeMs:l,dev:u,gid:d,ino:f,mode:w,mtime:S,mtimeMs:E,nlink:b,rdev:x,size:v,uid:R}=e;c(this,gi,t),c(this,ui,i),c(this,yi,s),c(this,di,h),c(this,oi,n),c(this,ci,o),c(this,wi,a),c(this,fi,l),c(this,ei,u),c(this,hi,d),c(this,ai,f),c(this,ii,w),c(this,mi,S),c(this,pi,E),c(this,si,b),c(this,ni,x),c(this,li,v),c(this,ri,R);let T=ss(e);c(this,O,r(this,O)&Ge|T|Ns),T!==yt&&T!==Lt&&T!==ae&&c(this,O,r(this,O)|Je);},Le=new WeakMap,We=new WeakMap,Vr=function(e){c(this,We,false);let t=r(this,Le).slice();r(this,Le).length=0,t.forEach(i=>i(null,e));},we=new WeakMap,gr),Kr=class Yr extends ot{constructor(i,s=yt,h,n,o,a,l){super(i,s,h,n,o,a,l);p(this,"sep","\\");p(this,"splitSep",Zn);}newChild(i,s=yt,h={}){return new Yr(i,s,this.root,this.roots,this.nocase,this.childrenCache(),h)}getRootString(i){return qi.win32.parse(i).root}getRoot(i){if(i=qn(i.toUpperCase()),i===this.root.name)return this.root;for(let[s,h]of Object.entries(this.roots))if(this.sameRoot(i,s))return this.roots[i]=h;return this.roots[i]=new vs(i,this).root}sameRoot(i,s=this.root.name){return i=i.toUpperCase().replace(/\//g,"\\").replace(_r,"$1\\"),i===s}},Xr=class Qr extends ot{constructor(i,s=yt,h,n,o,a,l){super(i,s,h,n,o,a,l);p(this,"splitSep","/");p(this,"sep","/");}getRootString(i){return i.startsWith("/")?"/":""}getRoot(i){return this.root}newChild(i,s=yt,h={}){return new Qr(i,s,this.root,this.roots,this.nocase,this.childrenCache(),h)}},De,Pe,bi,Si,mr,th=(mr=class{constructor(e=process.cwd(),t,i,{nocase:s,childrenCacheSize:h=16*1024,fs:n=Ze}={}){p(this,"root");p(this,"rootPath");p(this,"roots");p(this,"cwd");m(this,De);m(this,Pe);m(this,bi);p(this,"nocase");m(this,Si);c(this,Si,Nr(n)),(e instanceof URL||e.startsWith("file://"))&&(e=url.fileURLToPath(e));let o=t.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(o),c(this,De,new Us),c(this,Pe,new Us),c(this,bi,new Vn(h));let a=o.substring(this.rootPath.length).split(i);if(a.length===1&&!a[0]&&a.pop(),s===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=s,this.root=this.newRoot(r(this,Si)),this.roots[this.rootPath]=this.root;let l=this.root,u=a.length-1,d=t.sep,f=this.rootPath,w=false;for(let S of a){let E=u--;l=l.child(S,{relative:new Array(E).fill("..").join(d),relativePosix:new Array(E).fill("..").join("/"),fullpath:f+=(w?"":d)+S}),w=true;}this.cwd=l;}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return r(this,bi)}resolve(...e){let t="";for(let h=e.length-1;h>=0;h--){let n=e[h];if(!(!n||n===".")&&(t=t?`${n}/${t}`:n,this.isAbsolute(n)))break}let i=r(this,De).get(t);if(i!==void 0)return i;let s=this.cwd.resolve(t).fullpath();return r(this,De).set(t,s),s}resolvePosix(...e){let t="";for(let h=e.length-1;h>=0;h--){let n=e[h];if(!(!n||n===".")&&(t=t?`${n}/${t}`:n,this.isAbsolute(n)))break}let i=r(this,Pe).get(t);if(i!==void 0)return i;let s=this.cwd.resolve(t).fullpathPosix();return r(this,Pe).set(t,s),s}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,t={withFileTypes:true}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i}=t;if(e.canReaddir()){let s=await e.readdir();return i?s:s.map(h=>h.name)}else return []}readdirSync(e=this.cwd,t={withFileTypes:true}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true}=t;return e.canReaddir()?i?e.readdirSync():e.readdirSync().map(s=>s.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e.withFileTypes,e=this.cwd);let i=await e.readlink();return t?i:i?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e.withFileTypes,e=this.cwd);let i=e.readlinkSync();return t?i:i?.fullpath()}async realpath(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e.withFileTypes,e=this.cwd);let i=await e.realpath();return t?i:i?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:t}={withFileTypes:false}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e.withFileTypes,e=this.cwd);let i=e.realpathSync();return t?i:i?.fullpath()}async walk(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true,follow:s=false,filter:h,walkFilter:n}=t,o=[];(!h||h(e))&&o.push(i?e:e.fullpath());let a=new Set,l=(d,f)=>{a.add(d),d.readdirCB((w,S)=>{if(w)return f(w);let E=S.length;if(!E)return f();let b=()=>{--E===0&&f();};for(let x of S)(!h||h(x))&&o.push(i?x:x.fullpath()),s&&x.isSymbolicLink()?x.realpath().then(v=>v?.isUnknown()?v.lstat():v).then(v=>v?.shouldWalk(a,n)?l(v,b):b()):x.shouldWalk(a,n)?l(x,b):b();},true);},u=e;return new Promise((d,f)=>{l(u,w=>{if(w)return f(w);d(o);});})}walkSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true,follow:s=false,filter:h,walkFilter:n}=t,o=[];(!h||h(e))&&o.push(i?e:e.fullpath());let a=new Set([e]);for(let l of a){let u=l.readdirSync();for(let d of u){(!h||h(d))&&o.push(i?d:d.fullpath());let f=d;if(d.isSymbolicLink()){if(!(s&&(f=d.realpathSync())))continue;f.isUnknown()&&f.lstatSync();}f.shouldWalk(a,n)&&a.add(f);}}return o}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,t={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd),this.stream(e,t)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true,follow:s=false,filter:h,walkFilter:n}=t;(!h||h(e))&&(yield i?e:e.fullpath());let o=new Set([e]);for(let a of o){let l=a.readdirSync();for(let u of l){(!h||h(u))&&(yield i?u:u.fullpath());let d=u;if(u.isSymbolicLink()){if(!(s&&(d=u.realpathSync())))continue;d.isUnknown()&&d.lstatSync();}d.shouldWalk(o,n)&&o.add(d);}}}stream(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true,follow:s=false,filter:h,walkFilter:n}=t,o=new $i({objectMode:true});(!h||h(e))&&o.write(i?e:e.fullpath());let a=new Set,l=[e],u=0,d=()=>{let f=false;for(;!f;){let w=l.shift();if(!w){u===0&&o.end();return}u++,a.add(w);let S=(b,x,v=false)=>{if(b)return o.emit("error",b);if(s&&!v){let R=[];for(let T of x)T.isSymbolicLink()&&R.push(T.realpath().then(F=>F?.isUnknown()?F.lstat():F));if(R.length){Promise.all(R).then(()=>S(null,x,true));return}}for(let R of x)R&&(!h||h(R))&&(o.write(i?R:R.fullpath())||(f=true));u--;for(let R of x){let T=R.realpathCached()||R;T.shouldWalk(a,n)&&l.push(T);}f&&!o.flowing?o.once("drain",d):E||d();},E=true;w.readdirCB(S,true),E=false;}};return d(),o}streamSync(e=this.cwd,t={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof ot||(t=e,e=this.cwd);let{withFileTypes:i=true,follow:s=false,filter:h,walkFilter:n}=t,o=new $i({objectMode:true}),a=new Set;(!h||h(e))&&o.write(i?e:e.fullpath());let l=[e],u=0,d=()=>{let f=false;for(;!f;){let w=l.shift();if(!w){u===0&&o.end();return}u++,a.add(w);let S=w.readdirSync();for(let E of S)(!h||h(E))&&(o.write(i?E:E.fullpath())||(f=true));u--;for(let E of S){let b=E;if(E.isSymbolicLink()){if(!(s&&(b=E.realpathSync())))continue;b.isUnknown()&&b.lstatSync();}b.shouldWalk(a,n)&&l.push(b);}}f&&!o.flowing&&o.once("drain",d);};return d(),o}chdir(e=this.cwd){let t=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[Hr](t);}},De=new WeakMap,Pe=new WeakMap,bi=new WeakMap,Si=new WeakMap,mr),vs=class extends th{constructor(t=process.cwd(),i={}){let{nocase:s=true}=i;super(t,qi.win32,"\\",{...i,nocase:s});p(this,"sep","\\");this.nocase=s;for(let h=this.cwd;h;h=h.parent)h.nocase=this.nocase;}parseRootPath(t){return qi.win32.parse(t).root.toUpperCase()}newRoot(t){return new Kr(this.rootPath,Lt,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")||t.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(t)}},Es=class extends th{constructor(t=process.cwd(),i={}){let{nocase:s=false}=i;super(t,qi.posix,"/",{...i,nocase:s});p(this,"sep","/");this.nocase=s;}parseRootPath(t){return "/"}newRoot(t){return new Xr(this.rootPath,Lt,void 0,this.roots,this.nocase,this.childrenCache(),{fs:t})}isAbsolute(t){return t.startsWith("/")}},eh=class extends Es{constructor(e=process.cwd(),t={}){let{nocase:i=true}=t;super(e,{...t,nocase:i});}};process.platform==="win32"?Kr:Xr;var Kn=process.platform==="win32"?vs:process.platform==="darwin"?eh:Es,Yn=e=>e.length>=1,Xn=e=>e.length>=1,Qn=Symbol.for("nodejs.util.inspect.custom"),U,at,I,ye,Ft,vi,ie,se,re,je,ze,ih=(ze=class{constructor(t,i,s,h){m(this,U);m(this,at);m(this,I);p(this,"length");m(this,ye);m(this,Ft);m(this,vi);m(this,ie);m(this,se);m(this,re);m(this,je,true);if(!Yn(t))throw new TypeError("empty pattern list");if(!Xn(i))throw new TypeError("empty glob list");if(i.length!==t.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=t.length,s<0||s>=this.length)throw new TypeError("index out of range");if(c(this,U,t),c(this,at,i),c(this,I,s),c(this,ye,h),r(this,I)===0){if(this.isUNC()){let[n,o,a,l,...u]=r(this,U),[d,f,w,S,...E]=r(this,at);u[0]===""&&(u.shift(),E.shift());let b=[n,o,a,l,""].join("/"),x=[d,f,w,S,""].join("/");c(this,U,[b,...u]),c(this,at,[x,...E]),this.length=r(this,U).length;}else if(this.isDrive()||this.isAbsolute()){let[n,...o]=r(this,U),[a,...l]=r(this,at);o[0]===""&&(o.shift(),l.shift());let u=n+"/",d=a+"/";c(this,U,[u,...o]),c(this,at,[d,...l]),this.length=r(this,U).length;}}}[Qn](){return "Pattern <"+r(this,at).slice(r(this,I)).join("/")+">"}pattern(){return r(this,U)[r(this,I)]}isString(){return typeof r(this,U)[r(this,I)]=="string"}isGlobstar(){return r(this,U)[r(this,I)]===rt}isRegExp(){return r(this,U)[r(this,I)]instanceof RegExp}globString(){return c(this,vi,r(this,vi)||(r(this,I)===0?this.isAbsolute()?r(this,at)[0]+r(this,at).slice(1).join("/"):r(this,at).join("/"):r(this,at).slice(r(this,I)).join("/")))}hasMore(){return this.length>r(this,I)+1}rest(){return r(this,Ft)!==void 0?r(this,Ft):this.hasMore()?(c(this,Ft,new ze(r(this,U),r(this,at),r(this,I)+1,r(this,ye))),c(r(this,Ft),re,r(this,re)),c(r(this,Ft),se,r(this,se)),c(r(this,Ft),ie,r(this,ie)),r(this,Ft)):c(this,Ft,null)}isUNC(){let t=r(this,U);return r(this,se)!==void 0?r(this,se):c(this,se,r(this,ye)==="win32"&&r(this,I)===0&&t[0]===""&&t[1]===""&&typeof t[2]=="string"&&!!t[2]&&typeof t[3]=="string"&&!!t[3])}isDrive(){let t=r(this,U);return r(this,ie)!==void 0?r(this,ie):c(this,ie,r(this,ye)==="win32"&&r(this,I)===0&&this.length>1&&typeof t[0]=="string"&&/^[a-z]:$/i.test(t[0]))}isAbsolute(){let t=r(this,U);return r(this,re)!==void 0?r(this,re):c(this,re,t[0]===""&&t.length>1||this.isDrive()||this.isUNC())}root(){let t=r(this,U)[0];return typeof t=="string"&&this.isAbsolute()&&r(this,I)===0?t:""}checkFollowGlobstar(){return !(r(this,I)===0||!this.isGlobstar()||!r(this,je))}markFollowGlobstar(){return r(this,I)===0||!this.isGlobstar()||!r(this,je)?false:(c(this,je,false),true)}},U=new WeakMap,at=new WeakMap,I=new WeakMap,ye=new WeakMap,Ft=new WeakMap,vi=new WeakMap,ie=new WeakMap,se=new WeakMap,re=new WeakMap,je=new WeakMap,ze),to=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Is=class{constructor(e,{nobrace:t,nocase:i,noext:s,noglobstar:h,platform:n=to}){p(this,"relative");p(this,"relativeChildren");p(this,"absolute");p(this,"absoluteChildren");p(this,"platform");p(this,"mmopts");this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=n,this.mmopts={dot:true,nobrace:t,nocase:i,noext:s,noglobstar:h,optimizationLevel:2,platform:n,nocomment:true,nonegate:true};for(let o of e)this.add(o);}add(e){let t=new ne(e,this.mmopts);for(let i=0;i<t.set.length;i++){let s=t.set[i],h=t.globParts[i];if(!s||!h)throw new Error("invalid pattern object");for(;s[0]==="."&&h[0]===".";)s.shift(),h.shift();let n=new ih(s,h,0,this.platform),o=new ne(n.globString(),this.mmopts),a=h[h.length-1]==="**",l=n.isAbsolute();l?this.absolute.push(o):this.relative.push(o),a&&(l?this.absoluteChildren.push(o):this.relativeChildren.push(o));}}ignored(e){let t=e.fullpath(),i=`${t}/`,s=e.relative()||".",h=`${s}/`;for(let n of this.relative)if(n.match(s)||n.match(h))return true;for(let n of this.absolute)if(n.match(t)||n.match(i))return true;return false}childrenIgnored(e){let t=e.fullpath()+"/",i=(e.relative()||".")+"/";for(let s of this.relativeChildren)if(s.match(i))return true;for(let s of this.absoluteChildren)if(s.match(t))return true;return false}},eo=class sh{constructor(t=new Map){p(this,"store");this.store=t;}copy(){return new sh(new Map(this.store))}hasWalked(t,i){return this.store.get(t.fullpath())?.has(i.globString())}storeWalked(t,i){let s=t.fullpath(),h=this.store.get(s);h?h.add(i.globString()):this.store.set(s,new Set([i.globString()]));}},io=class{constructor(){p(this,"store",new Map);}add(e,t,i){let s=(t?2:0)|(i?1:0),h=this.store.get(e);this.store.set(e,h===void 0?s:s&h);}entries(){return [...this.store.entries()].map(([e,t])=>[e,!!(t&2),!!(t&1)])}},so=class{constructor(){p(this,"store",new Map);}add(e,t){if(!e.canReaddir())return;let i=this.store.get(e);i?i.find(s=>s.globString()===t.globString())||i.push(t):this.store.set(e,[t]);}get(e){let t=this.store.get(e);if(!t)throw new Error("attempting to walk unknown path");return t}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return [...this.store.keys()].filter(e=>e.canReaddir())}},Gs=class rh{constructor(t,i){p(this,"hasWalkedCache");p(this,"matches",new io);p(this,"subwalks",new so);p(this,"patterns");p(this,"follow");p(this,"dot");p(this,"opts");this.opts=t,this.follow=!!t.follow,this.dot=!!t.dot,this.hasWalkedCache=i?i.copy():new eo;}processPatterns(t,i){this.patterns=i;let s=i.map(h=>[t,h]);for(let[h,n]of s){this.hasWalkedCache.storeWalked(h,n);let o=n.root(),a=n.isAbsolute()&&this.opts.absolute!==false;if(o){h=h.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let f=n.rest();if(f)n=f;else {this.matches.add(h,true,false);continue}}if(h.isENOENT())continue;let l,u,d=false;for(;typeof(l=n.pattern())=="string"&&(u=n.rest());)h=h.resolve(l),n=u,d=true;if(l=n.pattern(),u=n.rest(),d){if(this.hasWalkedCache.hasWalked(h,n))continue;this.hasWalkedCache.storeWalked(h,n);}if(typeof l=="string"){let f=l===".."||l===""||l===".";this.matches.add(h.resolve(l),a,f);continue}else if(l===rt){(!h.isSymbolicLink()||this.follow||n.checkFollowGlobstar())&&this.subwalks.add(h,n);let f=u?.pattern(),w=u?.rest();if(!u||(f===""||f===".")&&!w)this.matches.add(h,a,f===""||f===".");else if(f===".."){let S=h.parent||h;w?this.hasWalkedCache.hasWalked(S,w)||this.subwalks.add(S,w):this.matches.add(S,a,true);}}else l instanceof RegExp&&this.subwalks.add(h,n);}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new rh(this.opts,this.hasWalkedCache)}filterEntries(t,i){let s=this.subwalks.get(t),h=this.child();for(let n of i)for(let o of s){let a=o.isAbsolute(),l=o.pattern(),u=o.rest();l===rt?h.testGlobstar(n,o,u,a):l instanceof RegExp?h.testRegExp(n,l,u,a):h.testString(n,l,u,a);}return h}testGlobstar(t,i,s,h){if((this.dot||!t.name.startsWith("."))&&(i.hasMore()||this.matches.add(t,h,false),t.canReaddir()&&(this.follow||!t.isSymbolicLink()?this.subwalks.add(t,i):t.isSymbolicLink()&&(s&&i.checkFollowGlobstar()?this.subwalks.add(t,s):i.markFollowGlobstar()&&this.subwalks.add(t,i)))),s){let n=s.pattern();if(typeof n=="string"&&n!==".."&&n!==""&&n!==".")this.testString(t,n,s.rest(),h);else if(n===".."){let o=t.parent||t;this.subwalks.add(o,s);}else n instanceof RegExp&&this.testRegExp(t,n,s.rest(),h);}}testRegExp(t,i,s,h){i.test(t.name)&&(s?this.subwalks.add(t,s):this.matches.add(t,h,false));}testString(t,i,s,h){t.isNamed(i)&&(s?this.subwalks.add(t,s):this.matches.add(t,h,false));}},ro=(e,t)=>typeof e=="string"?new Is([e],t):Array.isArray(e)?new Is(e,t):e,Ne,Ht,be,bt,le,ws,wr,hh=(wr=class{constructor(e,t,i){m(this,bt);p(this,"path");p(this,"patterns");p(this,"opts");p(this,"seen",new Set);p(this,"paused",false);p(this,"aborted",false);m(this,Ne,[]);m(this,Ht);m(this,be);p(this,"signal");p(this,"maxDepth");p(this,"includeChildMatches");if(this.patterns=e,this.path=t,this.opts=i,c(this,be,!i.posix&&i.platform==="win32"?"\\":"/"),this.includeChildMatches=i.includeChildMatches!==false,(i.ignore||!this.includeChildMatches)&&(c(this,Ht,ro(i.ignore??[],i)),!this.includeChildMatches&&typeof r(this,Ht).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",()=>{r(this,Ne).length=0;}));}pause(){this.paused=true;}resume(){if(this.signal?.aborted)return;this.paused=false;let e;for(;!this.paused&&(e=r(this,Ne).shift());)e();}onResume(e){this.signal?.aborted||(this.paused?r(this,Ne).push(e):e());}async matchCheck(e,t){if(t&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=e.realpathCached()||await e.realpath(),!i)return;e=i;}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let h=await s.realpath();h&&(h.isUnknown()||this.opts.stat)&&await h.lstat();}return this.matchCheckTest(s,t)}matchCheckTest(e,t){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!t||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!g(this,bt,le).call(this,e)?e:void 0}matchCheckSync(e,t){if(t&&this.opts.nodir)return;let i;if(this.opts.realpath){if(i=e.realpathCached()||e.realpathSync(),!i)return;e=i;}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let h=s.realpathSync();h&&(h?.isUnknown()||this.opts.stat)&&h.lstatSync();}return this.matchCheckTest(s,t)}matchFinish(e,t){if(g(this,bt,le).call(this,e))return;if(!this.includeChildMatches&&r(this,Ht)?.add){let h=`${e.relativePosix()}/**`;r(this,Ht).add(h);}let i=this.opts.absolute===void 0?t:this.opts.absolute;this.seen.add(e);let s=this.opts.mark&&e.isDirectory()?r(this,be):"";if(this.opts.withFileTypes)this.matchEmit(e);else if(i){let h=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(h+s);}else {let h=this.opts.posix?e.relativePosix():e.relative(),n=this.opts.dotRelative&&!h.startsWith(".."+r(this,be))?"."+r(this,be):"";this.matchEmit(h?n+h+s:"."+s);}}async match(e,t,i){let s=await this.matchCheck(e,i);s&&this.matchFinish(s,t);}matchSync(e,t,i){let s=this.matchCheckSync(e,i);s&&this.matchFinish(s,t);}walkCB(e,t,i){this.signal?.aborted&&i(),this.walkCB2(e,t,new Gs(this.opts),i);}walkCB2(e,t,i,s){if(g(this,bt,ws).call(this,e))return s();if(this.signal?.aborted&&s(),this.paused){this.onResume(()=>this.walkCB2(e,t,i,s));return}i.processPatterns(e,t);let h=1,n=()=>{--h===0&&s();};for(let[o,a,l]of i.matches.entries())g(this,bt,le).call(this,o)||(h++,this.match(o,a,l).then(()=>n()));for(let o of i.subwalkTargets()){if(this.maxDepth!==1/0&&o.depth()>=this.maxDepth)continue;h++;let a=o.readdirCached();o.calledReaddir()?this.walkCB3(o,a,i,n):o.readdirCB((l,u)=>this.walkCB3(o,u,i,n),true);}n();}walkCB3(e,t,i,s){i=i.filterEntries(e,t);let h=1,n=()=>{--h===0&&s();};for(let[o,a,l]of i.matches.entries())g(this,bt,le).call(this,o)||(h++,this.match(o,a,l).then(()=>n()));for(let[o,a]of i.subwalks.entries())h++,this.walkCB2(o,a,i.child(),n);n();}walkCBSync(e,t,i){this.signal?.aborted&&i(),this.walkCB2Sync(e,t,new Gs(this.opts),i);}walkCB2Sync(e,t,i,s){if(g(this,bt,ws).call(this,e))return s();if(this.signal?.aborted&&s(),this.paused){this.onResume(()=>this.walkCB2Sync(e,t,i,s));return}i.processPatterns(e,t);let h=1,n=()=>{--h===0&&s();};for(let[o,a,l]of i.matches.entries())g(this,bt,le).call(this,o)||this.matchSync(o,a,l);for(let o of i.subwalkTargets()){if(this.maxDepth!==1/0&&o.depth()>=this.maxDepth)continue;h++;let a=o.readdirSync();this.walkCB3Sync(o,a,i,n);}n();}walkCB3Sync(e,t,i,s){i=i.filterEntries(e,t);let h=1,n=()=>{--h===0&&s();};for(let[o,a,l]of i.matches.entries())g(this,bt,le).call(this,o)||this.matchSync(o,a,l);for(let[o,a]of i.subwalks.entries())h++,this.walkCB2Sync(o,a,i.child(),n);n();}},Ne=new WeakMap,Ht=new WeakMap,be=new WeakMap,bt=new WeakSet,le=function(e){return this.seen.has(e)||!!r(this,Ht)?.ignored?.(e)},ws=function(e){return !!r(this,Ht)?.childrenIgnored?.(e)},wr),Hs=class extends hh{constructor(t,i,s){super(t,i,s);p(this,"matches",new Set);}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,i)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?i(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}},qs=class extends hh{constructor(t,i,s){super(t,i,s);p(this,"results");this.results=new $i({signal:this.signal,objectMode:true}),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}},ho=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",ve=class{constructor(e,t){p(this,"absolute");p(this,"cwd");p(this,"root");p(this,"dot");p(this,"dotRelative");p(this,"follow");p(this,"ignore");p(this,"magicalBraces");p(this,"mark");p(this,"matchBase");p(this,"maxDepth");p(this,"nobrace");p(this,"nocase");p(this,"nodir");p(this,"noext");p(this,"noglobstar");p(this,"pattern");p(this,"platform");p(this,"realpath");p(this,"scurry");p(this,"stat");p(this,"signal");p(this,"windowsPathsNoEscape");p(this,"withFileTypes");p(this,"includeChildMatches");p(this,"opts");p(this,"patterns");if(!t)throw new TypeError("glob options required");if(this.withFileTypes=!!t.withFileTypes,this.signal=t.signal,this.follow=!!t.follow,this.dot=!!t.dot,this.dotRelative=!!t.dotRelative,this.nodir=!!t.nodir,this.mark=!!t.mark,t.cwd?(t.cwd instanceof URL||t.cwd.startsWith("file://"))&&(t.cwd=url.fileURLToPath(t.cwd)):this.cwd="",this.cwd=t.cwd||"",this.root=t.root,this.magicalBraces=!!t.magicalBraces,this.nobrace=!!t.nobrace,this.noext=!!t.noext,this.realpath=!!t.realpath,this.absolute=t.absolute,this.includeChildMatches=t.includeChildMatches!==false,this.noglobstar=!!t.noglobstar,this.matchBase=!!t.matchBase,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:1/0,this.stat=!!t.stat,this.ignore=t.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===false,this.windowsPathsNoEscape&&(e=e.map(a=>a.replace(/\\/g,"/"))),this.matchBase){if(t.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(a=>a.includes("/")?a:`./**/${a}`);}if(this.pattern=e,this.platform=t.platform||ho,this.opts={...t,platform:this.platform},t.scurry){if(this.scurry=t.scurry,t.nocase!==void 0&&t.nocase!==t.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else {let a=t.platform==="win32"?vs:t.platform==="darwin"?eh:t.platform?Es:Kn;this.scurry=new a(this.cwd,{nocase:t.nocase,fs:t.fs});}this.nocase=this.scurry.nocase;let i=this.platform==="darwin"||this.platform==="win32",s={braceExpandMax:1e4,...t,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:i,nocomment:true,noext:this.noext,nonegate:true,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},h=this.pattern.map(a=>new ne(a,s)),[n,o]=h.reduce((a,l)=>(a[0].push(...l.set),a[1].push(...l.globParts),a),[[],[]]);this.patterns=n.map((a,l)=>{let u=o[l];if(!u)throw new Error("invalid pattern object");return new ih(a,u,0,this.platform)});}async walk(){return [...await new Hs(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 Hs(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 qs(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 qs(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()}},no=(e,t={})=>{Array.isArray(e)||(e=[e]);for(let i of e)if(new ne(i,t).hasMagic())return true;return false};function Gi(e,t={}){return new ve(e,t).streamSync()}function nh(e,t={}){return new ve(e,t).stream()}function oh(e,t={}){return new ve(e,t).walkSync()}async function Zs(e,t={}){return new ve(e,t).walk()}function Hi(e,t={}){return new ve(e,t).iterateSync()}function ah(e,t={}){return new ve(e,t).iterate()}var oo=Gi,ao=Object.assign(nh,{sync:Gi}),lo=Hi,co=Object.assign(ah,{sync:Hi}),uo=Object.assign(oh,{stream:Gi,iterate:Hi}),Ui=Object.assign(Zs,{glob:Zs,globSync:oh,sync:uo,globStream:nh,stream:ao,globStreamSync:Gi,streamSync:oo,globIterate:ah,iterate:co,globIterateSync:Hi,iterateSync:lo,Glob:ve,hasMagic:no,escape:Or,unescape:Ce});Ui.glob=Ui;exports.c=void 0;(F=>{F.Level=fo__default.default.enum(["DEBUG","INFO","WARN","ERROR"]).meta({ref:"LogLevel",description:"Log level"});let t={DEBUG:0,INFO:1,WARN:2,ERROR:3},i="INFO";function s(k){return t[k]>=t[i]}function h(){return i}F.getLevel=h;let n=new Map;F.Default=T({service:"default"});let a="";function l(){return a}F.file=l;let u,d,f=false,w=()=>{},S=false;async function E(k){if(f)return;if(k.print){f=true;return}k.level&&(i=k.level);let M=k.logDir||qi__default.default.join(process.env.EASBOT_LOG_PATH??process.cwd(),"logs");k.logFile?a=qi__default.default.join(M,k.logFile??"memory.log"):a=qi__default.default.join(M,"memory.log");try{await lh__default.default.mkdir(M,{recursive:!0}),u=await lh__default.default.open(a,"a"),d=Tn.createWriteStream("",{fd:u.fd,autoClose:!1}),w=j=>{if(!(S||!d||d.destroyed))try{if(!d.writable)return;d.write(j,nt=>{nt&&!S&&(S=!0,setTimeout(()=>{S=!1;},1e3));});}catch{S||(S=!0,setTimeout(()=>{S=!1;},1e3));}},f=!0;}catch{w=j=>{try{process.stderr.write(j);}catch{}},f=true;}}F.init=E;async function b(){f&&(d&&!d.destroyed&&(await new Promise((k,M)=>{d.end(j=>{j?M(j):k();});}).catch(()=>{}),d=void 0),u&&(await u.close().catch(()=>{}),u=void 0),w=k=>{try{process.stderr.write(k);}catch{}},f=false);}F.close=b;function v(k,M=0){let j=k.message;return k.cause instanceof Error&&M<10?j+" Caused by: "+v(k.cause,M+1):j}let R=Date.now();function T(k){k=k||{};let M=k.service;if(M&&typeof M=="string"){let P=n.get(M);if(P)return P}function j(P,G){let Zi=Object.entries({...k,...G}).filter(([xs,qt])=>qt!=null).map(([xs,qt])=>{let Ji=`${xs}=`;return qt instanceof Error?Ji+v(qt):typeof qt=="object"?Ji+JSON.stringify(qt):Ji+qt}).join(" "),Ee=new Date,uh=Ee.getTime()-R;return R=Ee.getTime(),[utils.formatLogTime(Ee),"+"+uh+"ms",Zi,P].filter(Boolean).join(" ")+`
4
+ `}let nt={debug(P,G){s("DEBUG")&&w("DEBUG "+j(P,G));},info(P,G){s("INFO")&&w("INFO "+j(P,G));},error(P,G){s("ERROR")&&w("ERROR "+j(P,G));},warn(P,G){s("WARN")&&w("WARN "+j(P,G));},tag(P,G){return k&&(k[P]=G),nt},clone(){return F.create({...k})},time(P,G){let Zi=Date.now();nt.info(P,{status:"started",...G});function Ee(){nt.info(P,{status:"completed",duration:Date.now()-Zi,...G});}return {stop:Ee,[Symbol.dispose](){Ee();}}}};return M&&typeof M=="string"&&n.set(M,nt),nt}F.create=T;})(exports.c||(exports.c={}));exports.a=p;exports.b=Cs;