@vitnode/core 1.2.0-canary.46 → 1.2.0-canary.48

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.
@@ -3,9 +3,9 @@ import 'tsx/esm';
3
3
  import { createRequire } from 'module';
4
4
  const require = createRequire(import.meta.url);
5
5
 
6
- var Ut=Object.create;var Ge=Object.defineProperty;var Kt=Object.getOwnPropertyDescriptor;var Ht=Object.getOwnPropertyNames;var Gt=Object.getPrototypeOf,qt=Object.prototype.hasOwnProperty;var ee=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,s)=>(typeof require<"u"?require:t)[s]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var qe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Bt=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Ht(t))!qt.call(e,r)&&r!==s&&Ge(e,r,{get:()=>t[r],enumerable:!(n=Kt(t,r))||n.enumerable});return e};var Jt=(e,t,s)=>(s=e!=null?Ut(Gt(e)):{},Bt(t||!e||!e.__esModule?Ge(s,"default",{value:e,enumerable:!0}):s,e));var Be=qe((Ar,Qt)=>{Qt.exports={name:"dotenv",version:"17.2.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var tt=qe((kr,A)=>{"use strict";var Te=ee("fs"),te=ee("path"),Xt=ee("os"),Zt=ee("crypto"),es=Be(),Re=es.version,Je=["\u{1F510} encrypt with dotenvx: https://dotenvx.com","\u{1F510} prevent committing .env to code: https://dotenvx.com/precommit","\u{1F510} prevent building .env in docker: https://dotenvx.com/prebuild","\u{1F6E0}\uFE0F run anywhere with `dotenvx run -- yourcommand`","\u2699\uFE0F specify custom .env file path with { path: '/custom/path/.env' }","\u2699\uFE0F enable debug logging with { debug: true }","\u2699\uFE0F override existing env vars with { override: true }","\u2699\uFE0F suppress all logs with { quiet: true }","\u2699\uFE0F write to custom object with { processEnv: myObject }","\u2699\uFE0F load multiple .env files with { path: ['.env.local', '.env'] }"];function ts(){return Je[Math.floor(Math.random()*Je.length)]}function j(e){return typeof e=="string"?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}function ss(){return process.stdout.isTTY}function rs(e){return ss()?`\x1B[2m${e}\x1B[0m`:e}var ns=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function is(e){let t={},s=e.toString();s=s.replace(/\r\n?/mg,`
6
+ var Ut=Object.create;var Ge=Object.defineProperty;var Kt=Object.getOwnPropertyDescriptor;var Ht=Object.getOwnPropertyNames;var Gt=Object.getPrototypeOf,qt=Object.prototype.hasOwnProperty;var ee=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,s)=>(typeof require<"u"?require:t)[s]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var qe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Bt=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Ht(t))!qt.call(e,r)&&r!==s&&Ge(e,r,{get:()=>t[r],enumerable:!(n=Kt(t,r))||n.enumerable});return e};var Jt=(e,t,s)=>(s=e!=null?Ut(Gt(e)):{},Bt(t||!e||!e.__esModule?Ge(s,"default",{value:e,enumerable:!0}):s,e));var Be=qe((Ar,Qt)=>{Qt.exports={name:"dotenv",version:"17.2.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var tt=qe((kr,k)=>{"use strict";var Te=ee("fs"),te=ee("path"),Xt=ee("os"),Zt=ee("crypto"),es=Be(),Re=es.version,Je=["\u{1F510} encrypt with dotenvx: https://dotenvx.com","\u{1F510} prevent committing .env to code: https://dotenvx.com/precommit","\u{1F510} prevent building .env in docker: https://dotenvx.com/prebuild","\u{1F6E0}\uFE0F run anywhere with `dotenvx run -- yourcommand`","\u2699\uFE0F specify custom .env file path with { path: '/custom/path/.env' }","\u2699\uFE0F enable debug logging with { debug: true }","\u2699\uFE0F override existing env vars with { override: true }","\u2699\uFE0F suppress all logs with { quiet: true }","\u2699\uFE0F write to custom object with { processEnv: myObject }","\u2699\uFE0F load multiple .env files with { path: ['.env.local', '.env'] }"];function ts(){return Je[Math.floor(Math.random()*Je.length)]}function j(e){return typeof e=="string"?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}function ss(){return process.stdout.isTTY}function rs(e){return ss()?`\x1B[2m${e}\x1B[0m`:e}var ns=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function is(e){let t={},s=e.toString();s=s.replace(/\r\n?/mg,`
7
7
  `);let n;for(;(n=ns.exec(s))!=null;){let r=n[1],i=n[2]||"";i=i.trim();let o=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),o==='"'&&(i=i.replace(/\\n/g,`
8
- `),i=i.replace(/\\r/g,"\r")),t[r]=i}return t}function os(e){e=e||{};let t=et(e);e.path=t;let s=E.configDotenv(e);if(!s.parsed){let o=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw o.code="MISSING_DATA",o}let n=Ze(e).split(","),r=n.length,i;for(let o=0;o<r;o++)try{let a=n[o].trim(),c=cs(s,a);i=E.decrypt(c.ciphertext,c.key);break}catch(a){if(o+1>=r)throw a}return E.parse(i)}function as(e){console.error(`[dotenv@${Re}][WARN] ${e}`)}function V(e){console.log(`[dotenv@${Re}][DEBUG] ${e}`)}function Xe(e){console.log(`[dotenv@${Re}] ${e}`)}function Ze(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function cs(e,t){let s;try{s=new URL(t)}catch(a){if(a.code==="ERR_INVALID_URL"){let c=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw c.code="INVALID_DOTENV_KEY",c}throw a}let n=s.password;if(!n){let a=new Error("INVALID_DOTENV_KEY: Missing key part");throw a.code="INVALID_DOTENV_KEY",a}let r=s.searchParams.get("environment");if(!r){let a=new Error("INVALID_DOTENV_KEY: Missing environment part");throw a.code="INVALID_DOTENV_KEY",a}let i=`DOTENV_VAULT_${r.toUpperCase()}`,o=e.parsed[i];if(!o){let a=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw a.code="NOT_FOUND_DOTENV_ENVIRONMENT",a}return{ciphertext:o,key:n}}function et(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let s of e.path)Te.existsSync(s)&&(t=s.endsWith(".vault")?s:`${s}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=te.resolve(process.cwd(),".env.vault");return Te.existsSync(t)?t:null}function Qe(e){return e[0]==="~"?te.join(Xt.homedir(),e.slice(1)):e}function ls(e){let t=j(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),s=j(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(t||!s)&&Xe("Loading env from encrypted .env.vault");let n=E._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),E.populate(r,n,e),{parsed:n}}function ds(e){let t=te.resolve(process.cwd(),".env"),s="utf8",n=process.env;e&&e.processEnv!=null&&(n=e.processEnv);let r=j(n.DOTENV_CONFIG_DEBUG||e&&e.debug),i=j(n.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?s=e.encoding:r&&V("No encoding is specified. UTF-8 is used by default");let o=[t];if(e&&e.path)if(!Array.isArray(e.path))o=[Qe(e.path)];else{o=[];for(let l of e.path)o.push(Qe(l))}let a,c={};for(let l of o)try{let u=E.parse(Te.readFileSync(l,{encoding:s}));E.populate(c,u,e)}catch(u){r&&V(`Failed to load ${l} ${u.message}`),a=u}let d=E.populate(n,c,e);if(r=j(n.DOTENV_CONFIG_DEBUG||r),i=j(n.DOTENV_CONFIG_QUIET||i),r||!i){let l=Object.keys(d).length,u=[];for(let f of o)try{let m=te.relative(process.cwd(),f);u.push(m)}catch(m){r&&V(`Failed to load ${f} ${m.message}`),a=m}Xe(`injecting env (${l}) from ${u.join(",")} ${rs(`(tip: ${ts()})`)}`)}return a?{parsed:c,error:a}:{parsed:c}}function us(e){if(Ze(e).length===0)return E.configDotenv(e);let t=et(e);return t?E._configVault(e):(as(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),E.configDotenv(e))}function fs(e,t){let s=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),r=n.subarray(0,12),i=n.subarray(-16);n=n.subarray(12,-16);try{let o=Zt.createDecipheriv("aes-256-gcm",s,r);return o.setAuthTag(i),`${o.update(n)}${o.final()}`}catch(o){let a=o instanceof RangeError,c=o.message==="Invalid key length",d=o.message==="Unsupported state or unable to authenticate data";if(a||c){let l=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw l.code="INVALID_DOTENV_KEY",l}else if(d){let l=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw l.code="DECRYPTION_FAILED",l}else throw o}}function hs(e,t,s={}){let n=!!(s&&s.debug),r=!!(s&&s.override),i={};if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(r===!0&&(e[o]=t[o],i[o]=t[o]),n&&V(r===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):(e[o]=t[o],i[o]=t[o]);return i}var E={configDotenv:ds,_configVault:ls,_parseVault:os,config:us,decrypt:fs,parse:is,populate:hs};A.exports.configDotenv=E.configDotenv;A.exports._configVault=E._configVault;A.exports._parseVault=E._parseVault;A.exports.config=E.config;A.exports.decrypt=E.decrypt;A.exports.parse=E.parse;A.exports.populate=E.populate;A.exports=E});var Yt=Jt(tt(),1);import{stat as zs}from"fs";import{stat as Us,readdir as Ks}from"fs/promises";import{EventEmitter as Hs}from"events";import*as p from"path";import{stat as ps,lstat as st,readdir as ms,realpath as gs}from"fs/promises";import{Readable as _s}from"stream";import{resolve as rt,relative as ws,join as ys,sep as Es}from"path";var D={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},Ae={root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:D.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(Ae);var at="READDIRP_RECURSIVE_ERROR",bs=new Set(["ENOENT","EPERM","EACCES","ELOOP",at]),nt=[D.DIR_TYPE,D.EVERYTHING_TYPE,D.FILE_DIR_TYPE,D.FILE_TYPE],vs=new Set([D.DIR_TYPE,D.EVERYTHING_TYPE,D.FILE_DIR_TYPE]),xs=new Set([D.EVERYTHING_TYPE,D.FILE_DIR_TYPE,D.FILE_TYPE]),Ds=e=>bs.has(e.code),Ns=process.platform==="win32",it=e=>!0,ot=e=>{if(e===void 0)return it;if(typeof e=="function")return e;if(typeof e=="string"){let t=e.trim();return s=>s.basename===t}if(Array.isArray(e)){let t=e.map(s=>s.trim());return s=>t.some(n=>s.basename===n)}return it},ke=class extends _s{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let s={...Ae,...t},{root:n,type:r}=s;this._fileFilter=ot(s.fileFilter),this._directoryFilter=ot(s.directoryFilter);let i=s.lstat?st:ps;Ns?this._stat=o=>i(o,{bigint:!0}):this._stat=i,this._maxDepth=s.depth??Ae.depth,this._wantsDir=r?vs.has(r):!1,this._wantsFile=r?xs.has(r):!1,this._wantsEverything=r===D.EVERYTHING_TYPE,this._root=rt(n),this._isDirent=!s.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let s=this.parent,n=s&&s.files;if(n&&n.length>0){let{path:r,depth:i}=s,o=n.splice(0,t).map(c=>this._formatEntry(c,r)),a=await Promise.all(o);for(let c of a){if(!c)continue;if(this.destroyed)return;let d=await this._getEntryType(c);d==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(d==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let r=this.parents.pop();if(!r){this.push(null);break}if(this.parent=await r,this.destroyed)return}}}catch(s){this.destroy(s)}finally{this.reading=!1}}}async _exploreDir(t,s){let n;try{n=await ms(t,this._rdOptions)}catch(r){this._onError(r)}return{files:n,depth:s,path:t}}async _formatEntry(t,s){let n,r=this._isDirent?t.name:t;try{let i=rt(ys(s,r));n={path:ws(this._root,i),fullPath:i,basename:r},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){Ds(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let s=t[this._statsProp];if(s.isFile())return"file";if(s.isDirectory())return"directory";if(s&&s.isSymbolicLink()){let n=t.fullPath;try{let r=await gs(n),i=await st(r);if(i.isFile())return"file";if(i.isDirectory()){let o=r.length;if(n.startsWith(r)&&n.substr(o,1)===Es){let a=new Error(`Circular symlink detected: "${n}" points to "${r}"`);return a.code=at,this._onError(a)}return"directory"}}catch(r){return this._onError(r),""}}}_includeAsFile(t){let s=t&&t[this._statsProp];return s&&this._wantsEverything&&!s.isDirectory()}};function ct(e,t={}){let s=t.entryType||t.type;if(s==="both"&&(s=D.FILE_DIR_TYPE),s&&(t.type=s),e){if(typeof e!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(s&&!nt.includes(s))throw new Error(`readdirp: Invalid type passed. Use one of ${nt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=e,new ke(t)}import{watchFile as Ps,unwatchFile as lt,watch as Is}from"fs";import{open as Ts,stat as ut,lstat as Rs,realpath as Fe}from"fs/promises";import*as w from"path";import{type as As}from"os";var ks="data",Le="end",ft="close",oe=()=>{};var ae=process.platform,Oe=ae==="win32",Fs=ae==="darwin",Ss=ae==="linux",Cs=ae==="freebsd",ht=As()==="OS400",y={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},P=y,Ls="watch",Os={lstat:Rs,stat:ut},L="listeners",se="errHandlers",W="rawEmitters",$s=[L,se,W],js=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),Ws=e=>js.has(w.extname(e).slice(1).toLowerCase()),Ce=(e,t)=>{e instanceof Set?e.forEach(t):t(e)},Y=(e,t,s)=>{let n=e[t];n instanceof Set||(e[t]=n=new Set([n])),n.add(s)},Ms=e=>t=>{let s=e[t];s instanceof Set?s.clear():delete e[t]},z=(e,t,s)=>{let n=e[t];n instanceof Set?n.delete(s):n===s&&delete e[t]},pt=e=>e instanceof Set?e.size===0:!e,re=new Map;function dt(e,t,s,n,r){let i=(o,a)=>{s(e),r(o,a,{watchedPath:e}),a&&e!==a&&ne(w.resolve(e,a),L,w.join(e,a))};try{return Is(e,{persistent:t.persistent},i)}catch(o){n(o);return}}var ne=(e,t,s,n,r)=>{let i=re.get(e);i&&Ce(i[t],o=>{o(s,n,r)})},Vs=(e,t,s,n)=>{let{listener:r,errHandler:i,rawEmitter:o}=n,a=re.get(t),c;if(!s.persistent)return c=dt(e,s,r,i,o),c?c.close.bind(c):void 0;if(a)Y(a,L,r),Y(a,se,i),Y(a,W,o);else{if(c=dt(e,s,ne.bind(null,t,L),i,ne.bind(null,t,W)),!c)return;c.on(P.ERROR,async d=>{let l=ne.bind(null,t,se);if(a&&(a.watcherUnusable=!0),Oe&&d.code==="EPERM")try{await(await Ts(e,"r")).close(),l(d)}catch{}else l(d)}),a={listeners:r,errHandlers:i,rawEmitters:o,watcher:c},re.set(t,a)}return()=>{z(a,L,r),z(a,se,i),z(a,W,o),pt(a.listeners)&&(a.watcher.close(),re.delete(t),$s.forEach(Ms(a)),a.watcher=void 0,Object.freeze(a))}},Se=new Map,Ys=(e,t,s,n)=>{let{listener:r,rawEmitter:i}=n,o=Se.get(t),a=o&&o.options;return a&&(a.persistent<s.persistent||a.interval>s.interval)&&(lt(t),o=void 0),o?(Y(o,L,r),Y(o,W,i)):(o={listeners:r,rawEmitters:i,options:s,watcher:Ps(t,s,(c,d)=>{Ce(o.rawEmitters,u=>{u(P.CHANGE,t,{curr:c,prev:d})});let l=c.mtimeMs;(c.size!==d.size||l>d.mtimeMs||l===0)&&Ce(o.listeners,u=>u(e,c))})},Se.set(t,o)),()=>{z(o,L,r),z(o,W,i),pt(o.listeners)&&(Se.delete(t),lt(t),o.options=o.watcher=void 0,Object.freeze(o))}},ie=class{constructor(t){this.fsw=t,this._boundHandleError=s=>t._handleError(s)}_watchWithNodeFs(t,s){let n=this.fsw.options,r=w.dirname(t),i=w.basename(t);this.fsw._getWatchedDir(r).add(i);let a=w.resolve(t),c={persistent:n.persistent};s||(s=oe);let d;if(n.usePolling){let l=n.interval!==n.binaryInterval;c.interval=l&&Ws(i)?n.binaryInterval:n.interval,d=Ys(t,a,c,{listener:s,rawEmitter:this.fsw._emitRaw})}else d=Vs(t,a,c,{listener:s,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return d}_handleFile(t,s,n){if(this.fsw.closed)return;let r=w.dirname(t),i=w.basename(t),o=this.fsw._getWatchedDir(r),a=s;if(o.has(i))return;let c=async(l,u)=>{if(this.fsw._throttle(Ls,t,5)){if(!u||u.mtimeMs===0)try{let f=await ut(t);if(this.fsw.closed)return;let m=f.atimeMs,b=f.mtimeMs;if((!m||m<=b||b!==a.mtimeMs)&&this.fsw._emit(P.CHANGE,t,f),(Fs||Ss||Cs)&&a.ino!==f.ino){this.fsw._closeFile(l),a=f;let v=this._watchWithNodeFs(t,c);v&&this.fsw._addPathCloser(l,v)}else a=f}catch{this.fsw._remove(r,i)}else if(o.has(i)){let f=u.atimeMs,m=u.mtimeMs;(!f||f<=m||m!==a.mtimeMs)&&this.fsw._emit(P.CHANGE,t,u),a=u}}},d=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(P.ADD,t,0))return;this.fsw._emit(P.ADD,t,s)}return d}async _handleSymlink(t,s,n,r){if(this.fsw.closed)return;let i=t.fullPath,o=this.fsw._getWatchedDir(s);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await Fe(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(o.has(r)?this.fsw._symlinkPaths.get(i)!==a&&(this.fsw._symlinkPaths.set(i,a),this.fsw._emit(P.CHANGE,n,t.stats)):(o.add(r),this.fsw._symlinkPaths.set(i,a),this.fsw._emit(P.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,s,n,r,i,o,a){if(t=w.join(t,""),a=this.fsw._throttle("readdir",t,1e3),!a)return;let c=this.fsw._getWatchedDir(n.path),d=new Set,l=this.fsw._readdirp(t,{fileFilter:u=>n.filterPath(u),directoryFilter:u=>n.filterDir(u)});if(l)return l.on(ks,async u=>{if(this.fsw.closed){l=void 0;return}let f=u.path,m=w.join(t,f);if(d.add(f),!(u.stats.isSymbolicLink()&&await this._handleSymlink(u,t,m,f))){if(this.fsw.closed){l=void 0;return}(f===r||!r&&!c.has(f))&&(this.fsw._incrReadyCount(),m=w.join(i,w.relative(i,m)),this._addToNodeFs(m,s,n,o+1))}}).on(P.ERROR,this._boundHandleError),new Promise((u,f)=>{if(!l)return f();l.once(Le,()=>{if(this.fsw.closed){l=void 0;return}let m=a?a.clear():!1;u(void 0),c.getChildren().filter(b=>b!==t&&!d.has(b)).forEach(b=>{this.fsw._remove(t,b)}),l=void 0,m&&this._handleRead(t,!1,n,r,i,o,a)})})}async _handleDir(t,s,n,r,i,o,a){let c=this.fsw._getWatchedDir(w.dirname(t)),d=c.has(w.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!d&&this.fsw._emit(P.ADD_DIR,t,s),c.add(w.basename(t)),this.fsw._getWatchedDir(t);let l,u,f=this.fsw.options.depth;if((f==null||r<=f)&&!this.fsw._symlinkPaths.has(a)){if(!i&&(await this._handleRead(t,n,o,i,t,r,l),this.fsw.closed))return;u=this._watchWithNodeFs(t,(m,b)=>{b&&b.mtimeMs===0||this._handleRead(m,!1,o,i,t,r,l)})}return u}async _addToNodeFs(t,s,n,r,i){let o=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return o(),!1;let a=this.fsw._getWatchHelpers(t);n&&(a.filterPath=c=>n.filterPath(c),a.filterDir=c=>n.filterDir(c));try{let c=await Os[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return o(),!1;let d=this.fsw.options.followSymlinks,l;if(c.isDirectory()){let u=w.resolve(t),f=d?await Fe(t):t;if(this.fsw.closed||(l=await this._handleDir(a.watchPath,c,s,r,i,a,f),this.fsw.closed))return;u!==f&&f!==void 0&&this.fsw._symlinkPaths.set(u,f)}else if(c.isSymbolicLink()){let u=d?await Fe(t):t;if(this.fsw.closed)return;let f=w.dirname(a.watchPath);if(this.fsw._getWatchedDir(f).add(a.watchPath),this.fsw._emit(P.ADD,a.watchPath,c),l=await this._handleDir(f,c,s,r,t,a,u),this.fsw.closed)return;u!==void 0&&this.fsw._symlinkPaths.set(w.resolve(t),u)}else l=this._handleFile(a.watchPath,c,s);return o(),l&&this.fsw._addPathCloser(t,l),!1}catch(c){if(this.fsw._handleError(c))return o(),t}}};var $e="/",Gs="//",Et=".",qs="..",Bs="string",Js=/\\/g,mt=/\/\//,Qs=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,Xs=/^\.[/\\]/;function ce(e){return Array.isArray(e)?e:[e]}var je=e=>typeof e=="object"&&e!==null&&!(e instanceof RegExp);function Zs(e){return typeof e=="function"?e:typeof e=="string"?t=>e===t:e instanceof RegExp?t=>e.test(t):typeof e=="object"&&e!==null?t=>{if(e.path===t)return!0;if(e.recursive){let s=p.relative(e.path,t);return s?!s.startsWith("..")&&!p.isAbsolute(s):!1}return!1}:()=>!1}function er(e){if(typeof e!="string")throw new Error("string expected");e=p.normalize(e),e=e.replace(/\\/g,"/");let t=!1;e.startsWith("//")&&(t=!0);let s=/\/\//;for(;e.match(s);)e=e.replace(s,"/");return t&&(e="/"+e),e}function gt(e,t,s){let n=er(t);for(let r=0;r<e.length;r++){let i=e[r];if(i(n,s))return!0}return!1}function tr(e,t){if(e==null)throw new TypeError("anymatch: specify first argument");let n=ce(e).map(r=>Zs(r));return t==null?(r,i)=>gt(n,r,i):gt(n,t)}var _t=e=>{let t=ce(e).flat();if(!t.every(s=>typeof s===Bs))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(bt)},wt=e=>{let t=e.replace(Js,$e),s=!1;for(t.startsWith(Gs)&&(s=!0);t.match(mt);)t=t.replace(mt,$e);return s&&(t=$e+t),t},bt=e=>wt(p.normalize(wt(e))),yt=(e="")=>t=>typeof t=="string"?bt(p.isAbsolute(t)?t:p.join(e,t)):t,sr=(e,t)=>p.isAbsolute(e)?e:p.join(t,e),rr=Object.freeze(new Set),We=class{constructor(t,s){this.path=t,this._removeWatcher=s,this.items=new Set}add(t){let{items:s}=this;s&&t!==Et&&t!==qs&&s.add(t)}async remove(t){let{items:s}=this;if(!s||(s.delete(t),s.size>0))return;let n=this.path;try{await Ks(n)}catch{this._removeWatcher&&this._removeWatcher(p.dirname(n),p.basename(n))}}has(t){let{items:s}=this;if(s)return s.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=oe,this.items=rr,Object.freeze(this)}},nr="stat",ir="lstat",Me=class{constructor(t,s,n){this.fsw=n;let r=t;this.path=t=t.replace(Xs,""),this.watchPath=r,this.fullWatchPath=p.resolve(r),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=s,this.statMethod=s?nr:ir}entryPath(t){return p.join(this.watchPath,p.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:s}=t;if(s&&s.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,s)&&this.fsw._hasReadPermissions(s)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},le=class extends Hs{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let s=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},r={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?ce(t.ignored):ce([]),awaitWriteFinish:s===!0?n:typeof s=="object"?{...n,...s}:!1};ht&&(r.usePolling=!0),r.atomic===void 0&&(r.atomic=!r.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?r.usePolling=!1:c==="true"||c==="1"?r.usePolling=!0:r.usePolling=!!c}let o=process.env.CHOKIDAR_INTERVAL;o&&(r.interval=Number.parseInt(o,10));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=oe,this._readyEmitted=!0,process.nextTick(()=>this.emit(y.READY)))},this._emitRaw=(...c)=>this.emit(y.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=r,this._nodeFsHandler=new ie(this),Object.freeze(r)}_addIgnoredPath(t){if(je(t)){for(let s of this._ignoredPaths)if(je(s)&&s.path===t.path&&s.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let s of this._ignoredPaths)je(s)&&s.path===t&&this._ignoredPaths.delete(s)}add(t,s,n){let{cwd:r}=this.options;this.closed=!1,this._closePromise=void 0;let i=_t(t);return r&&(i=i.map(o=>sr(o,r))),i.forEach(o=>{this._removeIgnoredPath(o)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async o=>{let a=await this._nodeFsHandler._addToNodeFs(o,!n,void 0,0,s);return a&&this._emitReady(),a})).then(o=>{this.closed||o.forEach(a=>{a&&this.add(p.dirname(a),p.basename(s||a))})}),this}unwatch(t){if(this.closed)return this;let s=_t(t),{cwd:n}=this.options;return s.forEach(r=>{!p.isAbsolute(r)&&!this._closers.has(r)&&(n&&(r=p.join(n,r)),r=p.resolve(r)),this._closePath(r),this._addIgnoredPath(r),this._watched.has(r)&&this._addIgnoredPath({path:r,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(s=>s.forEach(n=>{let r=n();r instanceof Promise&&t.push(r)})),this._streams.forEach(s=>s.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(s=>s.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((s,n)=>{let i=(this.options.cwd?p.relative(this.options.cwd,n):n)||Et;t[i]=s.getChildren().sort()}),t}emitWithAll(t,s){this.emit(t,...s),t!==y.ERROR&&this.emit(y.ALL,t,...s)}async _emit(t,s,n){if(this.closed)return;let r=this.options;Oe&&(s=p.normalize(s)),r.cwd&&(s=p.relative(r.cwd,s));let i=[s];n!=null&&i.push(n);let o=r.awaitWriteFinish,a;if(o&&(a=this._pendingWrites.get(s)))return a.lastChange=new Date,this;if(r.atomic){if(t===y.UNLINK)return this._pendingUnlinks.set(s,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,d)=>{this.emit(...c),this.emit(y.ALL,...c),this._pendingUnlinks.delete(d)})},typeof r.atomic=="number"?r.atomic:100),this;t===y.ADD&&this._pendingUnlinks.has(s)&&(t=y.CHANGE,this._pendingUnlinks.delete(s))}if(o&&(t===y.ADD||t===y.CHANGE)&&this._readyEmitted){let c=(d,l)=>{d?(t=y.ERROR,i[0]=d,this.emitWithAll(t,i)):l&&(i.length>1?i[1]=l:i.push(l),this.emitWithAll(t,i))};return this._awaitWriteFinish(s,o.stabilityThreshold,t,c),this}if(t===y.CHANGE&&!this._throttle(y.CHANGE,s,50))return this;if(r.alwaysStat&&n===void 0&&(t===y.ADD||t===y.ADD_DIR||t===y.CHANGE)){let c=r.cwd?p.join(r.cwd,s):s,d;try{d=await Us(c)}catch{}if(!d||this.closed)return;i.push(d)}return this.emitWithAll(t,i),this}_handleError(t){let s=t&&t.code;return t&&s!=="ENOENT"&&s!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||s!=="EPERM"&&s!=="EACCES")&&this.emit(y.ERROR,t),t||this.closed}_throttle(t,s,n){this._throttled.has(t)||this._throttled.set(t,new Map);let r=this._throttled.get(t);if(!r)throw new Error("invalid throttle");let i=r.get(s);if(i)return i.count++,!1;let o,a=()=>{let d=r.get(s),l=d?d.count:0;return r.delete(s),clearTimeout(o),d&&clearTimeout(d.timeoutObject),l};o=setTimeout(a,n);let c={timeoutObject:o,clear:a,count:0};return r.set(s,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,s,n,r){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let o=i.pollInterval,a,c=t;this.options.cwd&&!p.isAbsolute(t)&&(c=p.join(this.options.cwd,t));let d=new Date,l=this._pendingWrites;function u(f){zs(c,(m,b)=>{if(m||!l.has(t)){m&&m.code!=="ENOENT"&&r(m);return}let v=Number(new Date);f&&b.size!==f.size&&(l.get(t).lastChange=v);let R=l.get(t);v-R.lastChange>=s?(l.delete(t),r(void 0,b)):a=setTimeout(u,o,b)})}l.has(t)||(l.set(t,{lastChange:d,cancelWait:()=>(l.delete(t),clearTimeout(a),n)}),a=setTimeout(u,o))}_isIgnored(t,s){if(this.options.atomic&&Qs.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(yt(n)),a=[...[...this._ignoredPaths].map(yt(n)),...i];this._userIgnored=tr(a,void 0)}return this._userIgnored(t,s)}_isntIgnored(t,s){return!this._isIgnored(t,s)}_getWatchHelpers(t){return new Me(t,this.options.followSymlinks,this)}_getWatchedDir(t){let s=p.resolve(t);return this._watched.has(s)||this._watched.set(s,new We(s,this._boundRemove)),this._watched.get(s)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,s,n){let r=p.join(t,s),i=p.resolve(r);if(n=n??(this._watched.has(r)||this._watched.has(i)),!this._throttle("remove",r,100))return;!n&&this._watched.size===1&&this.add(t,s,!0),this._getWatchedDir(r).getChildren().forEach(f=>this._remove(r,f));let c=this._getWatchedDir(t),d=c.has(s);c.remove(s),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let l=r;if(this.options.cwd&&(l=p.relative(this.options.cwd,r)),this.options.awaitWriteFinish&&this._pendingWrites.has(l)&&this._pendingWrites.get(l).cancelWait()===y.ADD)return;this._watched.delete(r),this._watched.delete(i);let u=n?y.UNLINK_DIR:y.UNLINK;d&&!this._isIgnored(r)&&this._emit(u,r),this._closePath(r)}_closePath(t){this._closeFile(t);let s=p.dirname(t);this._getWatchedDir(s).remove(p.basename(t))}_closeFile(t){let s=this._closers.get(t);s&&(s.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,s){if(!s)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(s)}_readdirp(t,s){if(this.closed)return;let n={type:y.ALL,alwaysStat:!0,lstat:!0,...s,depth:0},r=ct(t,n);return this._streams.add(r),r.once(ft,()=>{r=void 0}),r.once(Le,()=>{r&&(this._streams.delete(r),r=void 0)}),r}};function or(e,t={}){let s=new le(t);return s.add(e),s}var vt={watch:or,FSWatcher:le};import{existsSync as O,mkdirSync as wr,readFileSync as yr,unlinkSync as Er}from"fs";import{basename as It,join as N,relative as Tt}from"path";import{copyFileSync as ar,existsSync as S,mkdirSync as cr,readdirSync as Ye,readFileSync as lr,writeFileSync as dr}from"fs";import{basename as xt,dirname as Nt,extname as ur,join as k,normalize as fr,relative as M,resolve as Dt,sep as hr}from"path";var pr=/import\s+(?:(?:{[^}]*})|(?:[^{}\s,]*))?\s*(?:,\s*(?:{[^}]*}))?\s*from\s+['"]([./]+[^'"]*)['"]/g,mr=/import\s+(?:(?:{[^}]*})|(?:[^{}\s,]*))?\s*(?:,\s*(?:{[^}]*}))?\s*from\s+['"](@\/[^'"]*)['"]/g,gr=/import\s*\(\s*['"](@\/[^'"]*)['"]\s*\)/g,de=/\.(js|jsx|ts|tsx)$/,Ve=/^page\.(tsx|ts|jsx|js)$/i,U=(e,t)=>{let n=M(t,e).split(hr);n.pop();let r=n.filter(i=>!i.startsWith("("));return fr(r.join("/"))},ue=e=>{let t=new Map,s=n=>{if(S(n))for(let r of Ye(n,{withFileTypes:!0})){let i=k(n,r.name);if(r.isDirectory()){s(i);continue}if(Ve.test(r.name)){let o=U(i,e);t.set(o,i)}}};return s(e),t},_r=(e,t)=>{let s=e.replace(pr,(n,r)=>{if(r.startsWith(".")){let o=r.replace(de,"").replace(/^(?:\.\.\/)+/,"");return n.replace(r,`${t}/${o}`)}return n});return s=s.replace(mr,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s=s.replace(gr,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s=s.replace(/dynamic\s*\(\s*\(\s*=>\s*import\s*\(\s*['"](@\/[^'"]*)['"]\s*\)\s*\)\s*\)/g,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s};function fe(e){let t=e;for(;t!==Dt(t,"..");){let s=k(t,"turbo.json");if(S(s))return t;t=Dt(t,"..")}throw new Error("\u274C Could not locate project root")}function he(e){let t=k(e,"src","app","[locale]");if(S(t))return t;let n=(i=>{let o=[];if(!S(i))return o;let a=(c,d=0)=>{if(!(d>4))try{let l=Ye(c,{withFileTypes:!0});for(let u of l){if(!u.isDirectory())continue;let f=k(c,u.name);if(u.name==="[locale]"&&Nt(f).endsWith(k("src","app"))){o.push(f);continue}a(f,d+1)}}catch{}};return a(i),o})(e);return n.length>0?n[0]:k(e,"apps","docs","src","app","[locale]")}var K=e=>{let t=[];if(!S(e))return t;let s=Ye(e,{withFileTypes:!0});for(let n of s){let r=k(e,n.name);n.isDirectory()?t.push(...K(r)):t.push(r)}return t},H=e=>S(e)?K(e).length===0:!0,ze=(e,t,s,n,r,i,o=!0)=>{let a=xt(e);if(Ve.test(a)){let c=U(t,r),d=n.get(c);if(d&&d!==t){o&&console.log(`\x1B[31mSkipped duplicate page:\x1B[0m ${M(i,t)} (collides with ${M(i,d)})`);return}}try{let c=Nt(t);S(c)||cr(c,{recursive:!0});let d=ur(e);if(s&&[".js",".jsx",".ts",".tsx"].includes(d)){let l=lr(e,"utf-8"),u=_r(l,s);dr(t,u)}else ar(e,t);if(o){let l=e.indexOf(k("src","app")),u=l!==-1?e.substring(l):e.startsWith(i)?M(i,e):e,f=t.startsWith(i)?M(i,t):t;console.log(`\x1B[32mCopied:\x1B[0m ${u} \u2192 ${f}`)}if(Ve.test(xt(t))){let l=U(t,r);n.set(l,t)}}catch(c){console.error(`\x1B[31mError copying file:\x1B[0m ${e}`,c)}},Pt=(e,t,s,n,r,i,o=!0)=>{if(!S(e)||H(e))return;let a=K(e);for(let c of a){let d=M(e,c),l=k(t,d);ze(c,l,s,n,r,i,o)}};var Rt=({initMessage:e})=>{let t=process.cwd(),s=fe(t),n=he(s),r=ue(n),i=It(t);try{let h=N(t,"package.json");O(h)&&(i=JSON.parse(yr(h,"utf-8")).name??"")}catch(h){console.error("\x1B[31mError reading package.json:\x1B[0m",h);return}let o=i.replace(/\//g,"-").replace(/@/g,""),a=N(s,"apps","docs","src","app","[locale]","(main)",N("(plugins)",`(${o})`)),c=N(s,"apps","docs","src","app","[locale]","admin","(auth)",N("(plugins)",`(${o})`)),d=N(s,"apps","docs","src","locales",i),l=[{sourceDir:N(t,"src","app_admin"),destinationDir:c},{sourceDir:N(t,"src","app"),destinationDir:a},{sourceDir:N(t,"src","locales"),destinationDir:d}];for(let{sourceDir:h,destinationDir:_}of l)O(h)&&!H(h)&&!O(_)&&wr(_,{recursive:!0});let u=(h,_)=>{ze(h,_,i,r,n,s)},f=h=>{try{if(O(h)&&(Er(h),console.log(`\x1B[33mRemoved:\x1B[0m ${h}`),/^page\.(tsx|ts|jsx|js)$/i.test(It(h)))){let _=U(h,n);r.get(_)===h&&r.delete(_)}}catch(_){console.error(`\x1B[31mError removing file:\x1B[0m ${h}`,_)}},m=(h,_)=>{if(!O(_)||_.includes(N("src","locales")))return;let Ie=K(_);for(let C of Ie){let Z=Tt(_,C),zt=N(h,Z);O(zt)||f(C)}};for(let{sourceDir:h,destinationDir:_}of l)m(h,_);console.log(`${e} \x1B[34mWatching for changes in plugins...\x1B[0m`);let b=l.map(h=>h.sourceDir).filter(h=>O(h)),v=vt.watch(b,{ignoreInitial:!1,persistent:!0}),R=h=>{let _=l.filter(({sourceDir:C})=>h.startsWith(C));if(_.length===0)throw new Error(`No matching source directory for: ${h}`);let Pe=_.reduce((C,Z)=>Z.sourceDir.length>C.sourceDir.length?Z:C),Ie=Tt(Pe.sourceDir,h);return N(Pe.destinationDir,Ie)};v.on("add",h=>{let _=R(h);u(h,_)}).on("change",h=>{let _=R(h);u(h,_)}).on("unlink",h=>{let _=R(h);f(_)}).on("error",h=>{console.error("\x1B[31mWatcher error:\x1B[0m",h)})};import{count as jt}from"drizzle-orm";import{relations as Ct}from"drizzle-orm";import{index as Ee,pgTable as Lt}from"drizzle-orm/pg-core";import{pgTable as br}from"drizzle-orm/pg-core";var x=br("core_roles",e=>({id:e.serial().primaryKey(),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1),default:e.boolean().notNull().default(!1),root:e.boolean().notNull().default(!1),guest:e.boolean().notNull().default(!1),color:e.varchar({length:19})})).enableRLS();import{relations as kt}from"drizzle-orm";import{index as Ft,pgTable as St}from"drizzle-orm/pg-core";import{relations as we}from"drizzle-orm";import{index as me,pgTable as ye}from"drizzle-orm/pg-core";import{relations as vr}from"drizzle-orm";import{index as Ue,pgTable as At}from"drizzle-orm/pg-core";var T=At("core_languages",e=>({id:e.serial().primaryKey(),code:e.varchar({length:32}).notNull().unique(),name:e.varchar({length:255}).notNull(),timezone:e.varchar({length:255}).notNull().default("UTC"),protected:e.boolean().notNull().default(!1),default:e.boolean().notNull().default(!1),enabled:e.boolean().notNull().default(!0),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),time24:e.boolean().notNull().default(!1)}),e=>[Ue("core_languages_code_idx").on(e.code),Ue("core_languages_name_idx").on(e.name)]).enableRLS(),pe=At("core_languages_words",e=>({id:e.serial().primaryKey(),languageCode:e.varchar().notNull().references(()=>T.code,{onDelete:"cascade"}),pluginCode:e.varchar({length:50}).notNull(),itemId:e.integer().notNull(),value:e.text().notNull(),tableName:e.varchar({length:255}).notNull(),variable:e.varchar({length:255}).notNull()}),e=>[Ue("core_languages_words_lang_code_idx").on(e.languageCode)]).enableRLS(),nn=vr(pe,({one:e})=>({language:e(T,{fields:[pe.languageCode],references:[T.code]})}));var g=ye("core_users",e=>({id:e.serial().primaryKey(),nameCode:e.varchar({length:255}).notNull().unique(),name:e.varchar({length:255}).notNull().unique(),email:e.varchar({length:255}).notNull().unique(),password:e.varchar(),createdAt:e.timestamp().notNull().defaultNow(),newsletter:e.boolean().notNull().default(!1),avatarColor:e.varchar({length:6}).notNull(),emailVerified:e.boolean().notNull().default(!1),roleId:e.integer().references(()=>x.id).notNull(),birthday:e.timestamp(),ipAddress:e.varchar({length:40}).notNull(),language:e.varchar({length:32}).notNull().default("en").references(()=>T.code,{onDelete:"set default"})}),e=>[me("core_users_name_code_idx").on(e.nameCode),me("core_users_name_idx").on(e.name),me("core_users_email_idx").on(e.email)]).enableRLS(),un=we(g,({one:e,many:t})=>({group:e(x,{fields:[g.roleId],references:[x.id]}),language:e(T,{fields:[g.language],references:[T.code]}),confirm_email:e(ge,{fields:[g.id],references:[ge.userId]}),sso:t(Ke),forgot_password:e(_e,{fields:[g.id],references:[_e.userId]})})),Ke=ye("core_users_sso",e=>({userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull(),providerId:e.varchar({length:255}).notNull(),providerAccountId:e.varchar({length:255}).notNull(),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date)}),e=>[me("core_users_sso_user_id_idx").on(e.userId)]).enableRLS(),fn=we(Ke,({one:e})=>({user:e(g,{fields:[Ke.userId],references:[g.id]})})),ge=ye("core_users_confirm_emails",e=>({id:e.serial().primaryKey(),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull(),token:e.varchar({length:100}).notNull().unique(),createdAt:e.timestamp().notNull().defaultNow(),expires:e.timestamp().notNull()})).enableRLS(),hn=we(ge,({one:e})=>({user:e(g,{fields:[ge.userId],references:[g.id]})})),_e=ye("core_users_forgot_password",e=>({id:e.serial().primaryKey(),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull().unique(),token:e.varchar({length:100}).notNull().unique(),ip_address:e.varchar({length:40}).notNull(),createdAt:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull()})).enableRLS(),pn=we(_e,({one:e})=>({user:e(g,{fields:[_e.userId],references:[g.id]})}));var G=St("core_sessions",e=>({id:e.serial().primaryKey(),token:e.varchar({length:255}).notNull().unique(),userId:e.integer().notNull().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull(),deviceId:e.integer().references(()=>F.id,{onDelete:"cascade"}).notNull()}),e=>[Ft("core_sessions_user_id_idx").on(e.userId)]).enableRLS(),yn=kt(G,({one:e})=>({user:e(g,{fields:[G.userId],references:[g.id]}),device:e(F,{fields:[G.deviceId],references:[F.id]})})),F=St("core_sessions_known_devices",e=>({id:e.serial().primaryKey(),publicId:e.varchar({length:32}).notNull().unique(),ipAddress:e.varchar({length:40}).notNull(),userAgent:e.text().notNull(),lastSeen:e.timestamp().notNull().defaultNow()}),e=>[Ft("core_sessions_known_devices_ip_address_idx").on(e.ipAddress)]).enableRLS(),En=kt(F,({one:e})=>({session:e(G,{fields:[F.id],references:[G.deviceId]})}));var q=Lt("core_admin_permissions",e=>({id:e.serial().primaryKey(),roleId:e.integer().references(()=>x.id,{onDelete:"cascade"}),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1)}),e=>[Ee("core_admin_permissions_role_id_idx").on(e.roleId),Ee("core_admin_permissions_user_id_idx").on(e.userId)]).enableRLS(),In=Ct(q,({one:e})=>({group:e(x,{fields:[q.roleId],references:[x.id]}),user:e(g,{fields:[q.userId],references:[g.id]})})),He=Lt("core_admin_sessions",e=>({id:e.serial().primaryKey(),token:e.varchar({length:255}).notNull().unique(),userId:e.integer().notNull().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),lastSeen:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull(),deviceId:e.integer().references(()=>F.id,{onDelete:"cascade"}).notNull()}),e=>[Ee("core_admin_sessions_token_idx").on(e.token),Ee("core_admin_sessions_user_id_idx").on(e.userId)]).enableRLS(),Tn=Ct(He,({one:e})=>({user:e(g,{fields:[He.userId],references:[g.id]}),device:e(F,{fields:[He.deviceId],references:[F.id]})}));import{relations as xr}from"drizzle-orm";import{index as Ot,pgTable as Dr}from"drizzle-orm/pg-core";var B=Dr("core_moderators_permissions",e=>({id:e.serial().primaryKey(),roleId:e.integer().references(()=>x.id,{onDelete:"cascade"}),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1)}),e=>[Ot("core_moderators_permissions_role_id_idx").on(e.roleId),Ot("core_moderators_permissions_user_id_idx").on(e.userId)]).enableRLS(),Cn=xr(B,({one:e})=>({group:e(x,{fields:[B.roleId],references:[x.id]}),user:e(g,{fields:[B.userId],references:[g.id]})}));import{join as Nr}from"path";import{pathToFileURL as Pr}from"url";var be=async({type:e="config"})=>{let t=Nr(process.cwd(),"src",`vitnode.${e}.ts`);try{let n=await import(Pr(t).href);return e==="config"?n.vitNodeConfig:n.vitNodeApiConfig}catch(s){console.error("Failed to load config:",s),process.exit(1)}};import{existsSync as ve}from"fs";import{readFile as Ir}from"fs/promises";import{join as I,relative as $t}from"path";var J=async()=>{let t=[...(await be({})).plugins.map(a=>a.pluginId),"@vitnode/core"],s=fe(process.cwd()),n=he(s),r=ue(n),i=process.cwd(),o=a=>{let c=process.cwd(),d=I(c,"node_modules",a);if(ve(d))return d;if(s&&s!==c){let l=I(s,"node_modules",a);if(ve(l))return l}return null};await Promise.all(t.map(async a=>{let c=o(a);if(!c){console.error(`\x1B[31mPlugin not found:\x1B[0m ${a} in node_modules`);return}let d="";try{let v=I(c,"package.json");ve(v)&&(d=JSON.parse(await Ir(v,"utf-8")).name??"")}catch(v){console.error(`\x1B[31mError reading package.json for ${a}:\x1B[0m`,v);return}let l=a.replace(/\//g,"-").replace(/@/g,""),u=I(i,"src","app","[locale]","(main)",I("(plugins)",`(${l})`)),f=I(i,"src","app","[locale]","admin","(auth)",I("(plugins)",`(${l})`)),m=I(i,"src","locales",a),b=[{sourceDir:I(c,"src","app_admin"),destinationDir:f},{sourceDir:I(c,"src","app"),destinationDir:u},{sourceDir:I(c,"src","locales"),destinationDir:m}];for(let{sourceDir:v,destinationDir:R}of b)ve(v)&&!H(v)&&(console.log(`\x1B[36mCopying ${a}:\x1B[0m ${$t(s,v)} \u2192 ${$t(s,R)}`),Pt(v,R,d,r,n,s,!1))}))};import{spawn as Tr}from"child_process";var Q=async(e,t=[])=>new Promise((s,n)=>{let r=Tr(e,t,{stdio:"inherit",shell:!0,env:process.env});r.on("error",i=>{n(i)}),r.on("close",i=>{i!==0?n(new Error(`Command failed with exit code ${i}`)):s(!0)})});var xe=async()=>{try{await Q("npm",["run","drizzle-kit","up"]),await Q("npm",["run","drizzle-kit","generate"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},De=async()=>{try{await Q("npm",["run","drizzle-kit","migrate"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},Wt=async()=>{try{await Q("npm",["run","drizzle-kit","push"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},X=async()=>{let t=(await be({type:"api.config"})).dbProvider,[s]=await t.select({count:jt()}).from(x).limit(1),[n]=await t.select({count:jt()}).from(T);if(n.count===0&&await t.insert(T).values([{code:"en",name:"English (USA)",default:!0,protected:!0,timezone:"America/New_York"}]),s.count===0){let r=await t.insert(x).values([{protected:!0,guest:!0},{protected:!0,default:!0},{protected:!0,color:"hsl(122, 80%, 45%)"},{protected:!0,root:!0,color:"hsl(0, 100%, 50%)"}]).returning({id:x.id});await t.insert(pe).values([{languageCode:"en",pluginCode:"core",itemId:r[0].id,value:"Guest",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[1].id,value:"Member",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[2].id,value:"Moderator",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[3].id,value:"Administrator",tableName:"core_roles",variable:"name"}]),await Promise.all([await t.insert(B).values({roleId:r[2].id,protected:!0}),await t.insert(q).values({roleId:r[3].id,protected:!0})])}},Mt=async({initMessage:e,flag:t})=>{let s=[];t==="--web"?s.push({label:"Prepare plugins files...",action:J}):t==="--api"?s.push({label:"Generate migrations...",action:xe},{label:"Run migrations...",action:De},{label:"Insert initial data...",action:X}):s.push({label:"Prepare plugins files...",action:J},{label:"Generate migrations...",action:xe},{label:"Run migrations...",action:De},{label:"Insert initial data...",action:X});for(let n=0;n<s.length;n++){let r=s[n],i=`[${n+1}/${s.length}]`;r.label==="Insert initial data..."?console.log(`
8
+ `),i=i.replace(/\\r/g,"\r")),t[r]=i}return t}function os(e){e=e||{};let t=et(e);e.path=t;let s=E.configDotenv(e);if(!s.parsed){let o=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw o.code="MISSING_DATA",o}let n=Ze(e).split(","),r=n.length,i;for(let o=0;o<r;o++)try{let a=n[o].trim(),c=cs(s,a);i=E.decrypt(c.ciphertext,c.key);break}catch(a){if(o+1>=r)throw a}return E.parse(i)}function as(e){console.error(`[dotenv@${Re}][WARN] ${e}`)}function V(e){console.log(`[dotenv@${Re}][DEBUG] ${e}`)}function Xe(e){console.log(`[dotenv@${Re}] ${e}`)}function Ze(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function cs(e,t){let s;try{s=new URL(t)}catch(a){if(a.code==="ERR_INVALID_URL"){let c=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw c.code="INVALID_DOTENV_KEY",c}throw a}let n=s.password;if(!n){let a=new Error("INVALID_DOTENV_KEY: Missing key part");throw a.code="INVALID_DOTENV_KEY",a}let r=s.searchParams.get("environment");if(!r){let a=new Error("INVALID_DOTENV_KEY: Missing environment part");throw a.code="INVALID_DOTENV_KEY",a}let i=`DOTENV_VAULT_${r.toUpperCase()}`,o=e.parsed[i];if(!o){let a=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw a.code="NOT_FOUND_DOTENV_ENVIRONMENT",a}return{ciphertext:o,key:n}}function et(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let s of e.path)Te.existsSync(s)&&(t=s.endsWith(".vault")?s:`${s}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=te.resolve(process.cwd(),".env.vault");return Te.existsSync(t)?t:null}function Qe(e){return e[0]==="~"?te.join(Xt.homedir(),e.slice(1)):e}function ls(e){let t=j(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),s=j(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(t||!s)&&Xe("Loading env from encrypted .env.vault");let n=E._parseVault(e),r=process.env;return e&&e.processEnv!=null&&(r=e.processEnv),E.populate(r,n,e),{parsed:n}}function ds(e){let t=te.resolve(process.cwd(),".env"),s="utf8",n=process.env;e&&e.processEnv!=null&&(n=e.processEnv);let r=j(n.DOTENV_CONFIG_DEBUG||e&&e.debug),i=j(n.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?s=e.encoding:r&&V("No encoding is specified. UTF-8 is used by default");let o=[t];if(e&&e.path)if(!Array.isArray(e.path))o=[Qe(e.path)];else{o=[];for(let l of e.path)o.push(Qe(l))}let a,c={};for(let l of o)try{let u=E.parse(Te.readFileSync(l,{encoding:s}));E.populate(c,u,e)}catch(u){r&&V(`Failed to load ${l} ${u.message}`),a=u}let d=E.populate(n,c,e);if(r=j(n.DOTENV_CONFIG_DEBUG||r),i=j(n.DOTENV_CONFIG_QUIET||i),r||!i){let l=Object.keys(d).length,u=[];for(let f of o)try{let m=te.relative(process.cwd(),f);u.push(m)}catch(m){r&&V(`Failed to load ${f} ${m.message}`),a=m}Xe(`injecting env (${l}) from ${u.join(",")} ${rs(`(tip: ${ts()})`)}`)}return a?{parsed:c,error:a}:{parsed:c}}function us(e){if(Ze(e).length===0)return E.configDotenv(e);let t=et(e);return t?E._configVault(e):(as(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),E.configDotenv(e))}function fs(e,t){let s=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),r=n.subarray(0,12),i=n.subarray(-16);n=n.subarray(12,-16);try{let o=Zt.createDecipheriv("aes-256-gcm",s,r);return o.setAuthTag(i),`${o.update(n)}${o.final()}`}catch(o){let a=o instanceof RangeError,c=o.message==="Invalid key length",d=o.message==="Unsupported state or unable to authenticate data";if(a||c){let l=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw l.code="INVALID_DOTENV_KEY",l}else if(d){let l=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw l.code="DECRYPTION_FAILED",l}else throw o}}function hs(e,t,s={}){let n=!!(s&&s.debug),r=!!(s&&s.override),i={};if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(r===!0&&(e[o]=t[o],i[o]=t[o]),n&&V(r===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):(e[o]=t[o],i[o]=t[o]);return i}var E={configDotenv:ds,_configVault:ls,_parseVault:os,config:us,decrypt:fs,parse:is,populate:hs};k.exports.configDotenv=E.configDotenv;k.exports._configVault=E._configVault;k.exports._parseVault=E._parseVault;k.exports.config=E.config;k.exports.decrypt=E.decrypt;k.exports.parse=E.parse;k.exports.populate=E.populate;k.exports=E});var Yt=Jt(tt(),1);import{stat as zs}from"fs";import{stat as Us,readdir as Ks}from"fs/promises";import{EventEmitter as Hs}from"events";import*as p from"path";import{stat as ps,lstat as st,readdir as ms,realpath as gs}from"fs/promises";import{Readable as _s}from"stream";import{resolve as rt,relative as ws,join as ys,sep as Es}from"path";var D={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},Ae={root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:D.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(Ae);var at="READDIRP_RECURSIVE_ERROR",bs=new Set(["ENOENT","EPERM","EACCES","ELOOP",at]),nt=[D.DIR_TYPE,D.EVERYTHING_TYPE,D.FILE_DIR_TYPE,D.FILE_TYPE],vs=new Set([D.DIR_TYPE,D.EVERYTHING_TYPE,D.FILE_DIR_TYPE]),xs=new Set([D.EVERYTHING_TYPE,D.FILE_DIR_TYPE,D.FILE_TYPE]),Ds=e=>bs.has(e.code),Ns=process.platform==="win32",it=e=>!0,ot=e=>{if(e===void 0)return it;if(typeof e=="function")return e;if(typeof e=="string"){let t=e.trim();return s=>s.basename===t}if(Array.isArray(e)){let t=e.map(s=>s.trim());return s=>t.some(n=>s.basename===n)}return it},ke=class extends _s{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let s={...Ae,...t},{root:n,type:r}=s;this._fileFilter=ot(s.fileFilter),this._directoryFilter=ot(s.directoryFilter);let i=s.lstat?st:ps;Ns?this._stat=o=>i(o,{bigint:!0}):this._stat=i,this._maxDepth=s.depth??Ae.depth,this._wantsDir=r?vs.has(r):!1,this._wantsFile=r?xs.has(r):!1,this._wantsEverything=r===D.EVERYTHING_TYPE,this._root=rt(n),this._isDirent=!s.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let s=this.parent,n=s&&s.files;if(n&&n.length>0){let{path:r,depth:i}=s,o=n.splice(0,t).map(c=>this._formatEntry(c,r)),a=await Promise.all(o);for(let c of a){if(!c)continue;if(this.destroyed)return;let d=await this._getEntryType(c);d==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(d==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let r=this.parents.pop();if(!r){this.push(null);break}if(this.parent=await r,this.destroyed)return}}}catch(s){this.destroy(s)}finally{this.reading=!1}}}async _exploreDir(t,s){let n;try{n=await ms(t,this._rdOptions)}catch(r){this._onError(r)}return{files:n,depth:s,path:t}}async _formatEntry(t,s){let n,r=this._isDirent?t.name:t;try{let i=rt(ys(s,r));n={path:ws(this._root,i),fullPath:i,basename:r},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){Ds(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let s=t[this._statsProp];if(s.isFile())return"file";if(s.isDirectory())return"directory";if(s&&s.isSymbolicLink()){let n=t.fullPath;try{let r=await gs(n),i=await st(r);if(i.isFile())return"file";if(i.isDirectory()){let o=r.length;if(n.startsWith(r)&&n.substr(o,1)===Es){let a=new Error(`Circular symlink detected: "${n}" points to "${r}"`);return a.code=at,this._onError(a)}return"directory"}}catch(r){return this._onError(r),""}}}_includeAsFile(t){let s=t&&t[this._statsProp];return s&&this._wantsEverything&&!s.isDirectory()}};function ct(e,t={}){let s=t.entryType||t.type;if(s==="both"&&(s=D.FILE_DIR_TYPE),s&&(t.type=s),e){if(typeof e!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(s&&!nt.includes(s))throw new Error(`readdirp: Invalid type passed. Use one of ${nt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=e,new ke(t)}import{watchFile as Ps,unwatchFile as lt,watch as Is}from"fs";import{open as Ts,stat as ut,lstat as Rs,realpath as Fe}from"fs/promises";import*as w from"path";import{type as As}from"os";var ks="data",Le="end",ft="close",oe=()=>{};var ae=process.platform,Oe=ae==="win32",Fs=ae==="darwin",Ss=ae==="linux",Cs=ae==="freebsd",ht=As()==="OS400",y={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},P=y,Ls="watch",Os={lstat:Rs,stat:ut},L="listeners",se="errHandlers",W="rawEmitters",$s=[L,se,W],js=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),Ws=e=>js.has(w.extname(e).slice(1).toLowerCase()),Ce=(e,t)=>{e instanceof Set?e.forEach(t):t(e)},Y=(e,t,s)=>{let n=e[t];n instanceof Set||(e[t]=n=new Set([n])),n.add(s)},Ms=e=>t=>{let s=e[t];s instanceof Set?s.clear():delete e[t]},z=(e,t,s)=>{let n=e[t];n instanceof Set?n.delete(s):n===s&&delete e[t]},pt=e=>e instanceof Set?e.size===0:!e,re=new Map;function dt(e,t,s,n,r){let i=(o,a)=>{s(e),r(o,a,{watchedPath:e}),a&&e!==a&&ne(w.resolve(e,a),L,w.join(e,a))};try{return Is(e,{persistent:t.persistent},i)}catch(o){n(o);return}}var ne=(e,t,s,n,r)=>{let i=re.get(e);i&&Ce(i[t],o=>{o(s,n,r)})},Vs=(e,t,s,n)=>{let{listener:r,errHandler:i,rawEmitter:o}=n,a=re.get(t),c;if(!s.persistent)return c=dt(e,s,r,i,o),c?c.close.bind(c):void 0;if(a)Y(a,L,r),Y(a,se,i),Y(a,W,o);else{if(c=dt(e,s,ne.bind(null,t,L),i,ne.bind(null,t,W)),!c)return;c.on(P.ERROR,async d=>{let l=ne.bind(null,t,se);if(a&&(a.watcherUnusable=!0),Oe&&d.code==="EPERM")try{await(await Ts(e,"r")).close(),l(d)}catch{}else l(d)}),a={listeners:r,errHandlers:i,rawEmitters:o,watcher:c},re.set(t,a)}return()=>{z(a,L,r),z(a,se,i),z(a,W,o),pt(a.listeners)&&(a.watcher.close(),re.delete(t),$s.forEach(Ms(a)),a.watcher=void 0,Object.freeze(a))}},Se=new Map,Ys=(e,t,s,n)=>{let{listener:r,rawEmitter:i}=n,o=Se.get(t),a=o&&o.options;return a&&(a.persistent<s.persistent||a.interval>s.interval)&&(lt(t),o=void 0),o?(Y(o,L,r),Y(o,W,i)):(o={listeners:r,rawEmitters:i,options:s,watcher:Ps(t,s,(c,d)=>{Ce(o.rawEmitters,u=>{u(P.CHANGE,t,{curr:c,prev:d})});let l=c.mtimeMs;(c.size!==d.size||l>d.mtimeMs||l===0)&&Ce(o.listeners,u=>u(e,c))})},Se.set(t,o)),()=>{z(o,L,r),z(o,W,i),pt(o.listeners)&&(Se.delete(t),lt(t),o.options=o.watcher=void 0,Object.freeze(o))}},ie=class{constructor(t){this.fsw=t,this._boundHandleError=s=>t._handleError(s)}_watchWithNodeFs(t,s){let n=this.fsw.options,r=w.dirname(t),i=w.basename(t);this.fsw._getWatchedDir(r).add(i);let a=w.resolve(t),c={persistent:n.persistent};s||(s=oe);let d;if(n.usePolling){let l=n.interval!==n.binaryInterval;c.interval=l&&Ws(i)?n.binaryInterval:n.interval,d=Ys(t,a,c,{listener:s,rawEmitter:this.fsw._emitRaw})}else d=Vs(t,a,c,{listener:s,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return d}_handleFile(t,s,n){if(this.fsw.closed)return;let r=w.dirname(t),i=w.basename(t),o=this.fsw._getWatchedDir(r),a=s;if(o.has(i))return;let c=async(l,u)=>{if(this.fsw._throttle(Ls,t,5)){if(!u||u.mtimeMs===0)try{let f=await ut(t);if(this.fsw.closed)return;let m=f.atimeMs,b=f.mtimeMs;if((!m||m<=b||b!==a.mtimeMs)&&this.fsw._emit(P.CHANGE,t,f),(Fs||Ss||Cs)&&a.ino!==f.ino){this.fsw._closeFile(l),a=f;let v=this._watchWithNodeFs(t,c);v&&this.fsw._addPathCloser(l,v)}else a=f}catch{this.fsw._remove(r,i)}else if(o.has(i)){let f=u.atimeMs,m=u.mtimeMs;(!f||f<=m||m!==a.mtimeMs)&&this.fsw._emit(P.CHANGE,t,u),a=u}}},d=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(P.ADD,t,0))return;this.fsw._emit(P.ADD,t,s)}return d}async _handleSymlink(t,s,n,r){if(this.fsw.closed)return;let i=t.fullPath,o=this.fsw._getWatchedDir(s);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let a;try{a=await Fe(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(o.has(r)?this.fsw._symlinkPaths.get(i)!==a&&(this.fsw._symlinkPaths.set(i,a),this.fsw._emit(P.CHANGE,n,t.stats)):(o.add(r),this.fsw._symlinkPaths.set(i,a),this.fsw._emit(P.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,s,n,r,i,o,a){if(t=w.join(t,""),a=this.fsw._throttle("readdir",t,1e3),!a)return;let c=this.fsw._getWatchedDir(n.path),d=new Set,l=this.fsw._readdirp(t,{fileFilter:u=>n.filterPath(u),directoryFilter:u=>n.filterDir(u)});if(l)return l.on(ks,async u=>{if(this.fsw.closed){l=void 0;return}let f=u.path,m=w.join(t,f);if(d.add(f),!(u.stats.isSymbolicLink()&&await this._handleSymlink(u,t,m,f))){if(this.fsw.closed){l=void 0;return}(f===r||!r&&!c.has(f))&&(this.fsw._incrReadyCount(),m=w.join(i,w.relative(i,m)),this._addToNodeFs(m,s,n,o+1))}}).on(P.ERROR,this._boundHandleError),new Promise((u,f)=>{if(!l)return f();l.once(Le,()=>{if(this.fsw.closed){l=void 0;return}let m=a?a.clear():!1;u(void 0),c.getChildren().filter(b=>b!==t&&!d.has(b)).forEach(b=>{this.fsw._remove(t,b)}),l=void 0,m&&this._handleRead(t,!1,n,r,i,o,a)})})}async _handleDir(t,s,n,r,i,o,a){let c=this.fsw._getWatchedDir(w.dirname(t)),d=c.has(w.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!d&&this.fsw._emit(P.ADD_DIR,t,s),c.add(w.basename(t)),this.fsw._getWatchedDir(t);let l,u,f=this.fsw.options.depth;if((f==null||r<=f)&&!this.fsw._symlinkPaths.has(a)){if(!i&&(await this._handleRead(t,n,o,i,t,r,l),this.fsw.closed))return;u=this._watchWithNodeFs(t,(m,b)=>{b&&b.mtimeMs===0||this._handleRead(m,!1,o,i,t,r,l)})}return u}async _addToNodeFs(t,s,n,r,i){let o=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return o(),!1;let a=this.fsw._getWatchHelpers(t);n&&(a.filterPath=c=>n.filterPath(c),a.filterDir=c=>n.filterDir(c));try{let c=await Os[a.statMethod](a.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(a.watchPath,c))return o(),!1;let d=this.fsw.options.followSymlinks,l;if(c.isDirectory()){let u=w.resolve(t),f=d?await Fe(t):t;if(this.fsw.closed||(l=await this._handleDir(a.watchPath,c,s,r,i,a,f),this.fsw.closed))return;u!==f&&f!==void 0&&this.fsw._symlinkPaths.set(u,f)}else if(c.isSymbolicLink()){let u=d?await Fe(t):t;if(this.fsw.closed)return;let f=w.dirname(a.watchPath);if(this.fsw._getWatchedDir(f).add(a.watchPath),this.fsw._emit(P.ADD,a.watchPath,c),l=await this._handleDir(f,c,s,r,t,a,u),this.fsw.closed)return;u!==void 0&&this.fsw._symlinkPaths.set(w.resolve(t),u)}else l=this._handleFile(a.watchPath,c,s);return o(),l&&this.fsw._addPathCloser(t,l),!1}catch(c){if(this.fsw._handleError(c))return o(),t}}};var $e="/",Gs="//",Et=".",qs="..",Bs="string",Js=/\\/g,mt=/\/\//,Qs=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,Xs=/^\.[/\\]/;function ce(e){return Array.isArray(e)?e:[e]}var je=e=>typeof e=="object"&&e!==null&&!(e instanceof RegExp);function Zs(e){return typeof e=="function"?e:typeof e=="string"?t=>e===t:e instanceof RegExp?t=>e.test(t):typeof e=="object"&&e!==null?t=>{if(e.path===t)return!0;if(e.recursive){let s=p.relative(e.path,t);return s?!s.startsWith("..")&&!p.isAbsolute(s):!1}return!1}:()=>!1}function er(e){if(typeof e!="string")throw new Error("string expected");e=p.normalize(e),e=e.replace(/\\/g,"/");let t=!1;e.startsWith("//")&&(t=!0);let s=/\/\//;for(;e.match(s);)e=e.replace(s,"/");return t&&(e="/"+e),e}function gt(e,t,s){let n=er(t);for(let r=0;r<e.length;r++){let i=e[r];if(i(n,s))return!0}return!1}function tr(e,t){if(e==null)throw new TypeError("anymatch: specify first argument");let n=ce(e).map(r=>Zs(r));return t==null?(r,i)=>gt(n,r,i):gt(n,t)}var _t=e=>{let t=ce(e).flat();if(!t.every(s=>typeof s===Bs))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(bt)},wt=e=>{let t=e.replace(Js,$e),s=!1;for(t.startsWith(Gs)&&(s=!0);t.match(mt);)t=t.replace(mt,$e);return s&&(t=$e+t),t},bt=e=>wt(p.normalize(wt(e))),yt=(e="")=>t=>typeof t=="string"?bt(p.isAbsolute(t)?t:p.join(e,t)):t,sr=(e,t)=>p.isAbsolute(e)?e:p.join(t,e),rr=Object.freeze(new Set),We=class{constructor(t,s){this.path=t,this._removeWatcher=s,this.items=new Set}add(t){let{items:s}=this;s&&t!==Et&&t!==qs&&s.add(t)}async remove(t){let{items:s}=this;if(!s||(s.delete(t),s.size>0))return;let n=this.path;try{await Ks(n)}catch{this._removeWatcher&&this._removeWatcher(p.dirname(n),p.basename(n))}}has(t){let{items:s}=this;if(s)return s.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=oe,this.items=rr,Object.freeze(this)}},nr="stat",ir="lstat",Me=class{constructor(t,s,n){this.fsw=n;let r=t;this.path=t=t.replace(Xs,""),this.watchPath=r,this.fullWatchPath=p.resolve(r),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=s,this.statMethod=s?nr:ir}entryPath(t){return p.join(this.watchPath,p.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:s}=t;if(s&&s.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,s)&&this.fsw._hasReadPermissions(s)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},le=class extends Hs{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let s=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},r={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?ce(t.ignored):ce([]),awaitWriteFinish:s===!0?n:typeof s=="object"?{...n,...s}:!1};ht&&(r.usePolling=!0),r.atomic===void 0&&(r.atomic=!r.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?r.usePolling=!1:c==="true"||c==="1"?r.usePolling=!0:r.usePolling=!!c}let o=process.env.CHOKIDAR_INTERVAL;o&&(r.interval=Number.parseInt(o,10));let a=0;this._emitReady=()=>{a++,a>=this._readyCount&&(this._emitReady=oe,this._readyEmitted=!0,process.nextTick(()=>this.emit(y.READY)))},this._emitRaw=(...c)=>this.emit(y.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=r,this._nodeFsHandler=new ie(this),Object.freeze(r)}_addIgnoredPath(t){if(je(t)){for(let s of this._ignoredPaths)if(je(s)&&s.path===t.path&&s.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let s of this._ignoredPaths)je(s)&&s.path===t&&this._ignoredPaths.delete(s)}add(t,s,n){let{cwd:r}=this.options;this.closed=!1,this._closePromise=void 0;let i=_t(t);return r&&(i=i.map(o=>sr(o,r))),i.forEach(o=>{this._removeIgnoredPath(o)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async o=>{let a=await this._nodeFsHandler._addToNodeFs(o,!n,void 0,0,s);return a&&this._emitReady(),a})).then(o=>{this.closed||o.forEach(a=>{a&&this.add(p.dirname(a),p.basename(s||a))})}),this}unwatch(t){if(this.closed)return this;let s=_t(t),{cwd:n}=this.options;return s.forEach(r=>{!p.isAbsolute(r)&&!this._closers.has(r)&&(n&&(r=p.join(n,r)),r=p.resolve(r)),this._closePath(r),this._addIgnoredPath(r),this._watched.has(r)&&this._addIgnoredPath({path:r,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(s=>s.forEach(n=>{let r=n();r instanceof Promise&&t.push(r)})),this._streams.forEach(s=>s.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(s=>s.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((s,n)=>{let i=(this.options.cwd?p.relative(this.options.cwd,n):n)||Et;t[i]=s.getChildren().sort()}),t}emitWithAll(t,s){this.emit(t,...s),t!==y.ERROR&&this.emit(y.ALL,t,...s)}async _emit(t,s,n){if(this.closed)return;let r=this.options;Oe&&(s=p.normalize(s)),r.cwd&&(s=p.relative(r.cwd,s));let i=[s];n!=null&&i.push(n);let o=r.awaitWriteFinish,a;if(o&&(a=this._pendingWrites.get(s)))return a.lastChange=new Date,this;if(r.atomic){if(t===y.UNLINK)return this._pendingUnlinks.set(s,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,d)=>{this.emit(...c),this.emit(y.ALL,...c),this._pendingUnlinks.delete(d)})},typeof r.atomic=="number"?r.atomic:100),this;t===y.ADD&&this._pendingUnlinks.has(s)&&(t=y.CHANGE,this._pendingUnlinks.delete(s))}if(o&&(t===y.ADD||t===y.CHANGE)&&this._readyEmitted){let c=(d,l)=>{d?(t=y.ERROR,i[0]=d,this.emitWithAll(t,i)):l&&(i.length>1?i[1]=l:i.push(l),this.emitWithAll(t,i))};return this._awaitWriteFinish(s,o.stabilityThreshold,t,c),this}if(t===y.CHANGE&&!this._throttle(y.CHANGE,s,50))return this;if(r.alwaysStat&&n===void 0&&(t===y.ADD||t===y.ADD_DIR||t===y.CHANGE)){let c=r.cwd?p.join(r.cwd,s):s,d;try{d=await Us(c)}catch{}if(!d||this.closed)return;i.push(d)}return this.emitWithAll(t,i),this}_handleError(t){let s=t&&t.code;return t&&s!=="ENOENT"&&s!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||s!=="EPERM"&&s!=="EACCES")&&this.emit(y.ERROR,t),t||this.closed}_throttle(t,s,n){this._throttled.has(t)||this._throttled.set(t,new Map);let r=this._throttled.get(t);if(!r)throw new Error("invalid throttle");let i=r.get(s);if(i)return i.count++,!1;let o,a=()=>{let d=r.get(s),l=d?d.count:0;return r.delete(s),clearTimeout(o),d&&clearTimeout(d.timeoutObject),l};o=setTimeout(a,n);let c={timeoutObject:o,clear:a,count:0};return r.set(s,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,s,n,r){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let o=i.pollInterval,a,c=t;this.options.cwd&&!p.isAbsolute(t)&&(c=p.join(this.options.cwd,t));let d=new Date,l=this._pendingWrites;function u(f){zs(c,(m,b)=>{if(m||!l.has(t)){m&&m.code!=="ENOENT"&&r(m);return}let v=Number(new Date);f&&b.size!==f.size&&(l.get(t).lastChange=v);let A=l.get(t);v-A.lastChange>=s?(l.delete(t),r(void 0,b)):a=setTimeout(u,o,b)})}l.has(t)||(l.set(t,{lastChange:d,cancelWait:()=>(l.delete(t),clearTimeout(a),n)}),a=setTimeout(u,o))}_isIgnored(t,s){if(this.options.atomic&&Qs.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(yt(n)),a=[...[...this._ignoredPaths].map(yt(n)),...i];this._userIgnored=tr(a,void 0)}return this._userIgnored(t,s)}_isntIgnored(t,s){return!this._isIgnored(t,s)}_getWatchHelpers(t){return new Me(t,this.options.followSymlinks,this)}_getWatchedDir(t){let s=p.resolve(t);return this._watched.has(s)||this._watched.set(s,new We(s,this._boundRemove)),this._watched.get(s)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,s,n){let r=p.join(t,s),i=p.resolve(r);if(n=n??(this._watched.has(r)||this._watched.has(i)),!this._throttle("remove",r,100))return;!n&&this._watched.size===1&&this.add(t,s,!0),this._getWatchedDir(r).getChildren().forEach(f=>this._remove(r,f));let c=this._getWatchedDir(t),d=c.has(s);c.remove(s),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let l=r;if(this.options.cwd&&(l=p.relative(this.options.cwd,r)),this.options.awaitWriteFinish&&this._pendingWrites.has(l)&&this._pendingWrites.get(l).cancelWait()===y.ADD)return;this._watched.delete(r),this._watched.delete(i);let u=n?y.UNLINK_DIR:y.UNLINK;d&&!this._isIgnored(r)&&this._emit(u,r),this._closePath(r)}_closePath(t){this._closeFile(t);let s=p.dirname(t);this._getWatchedDir(s).remove(p.basename(t))}_closeFile(t){let s=this._closers.get(t);s&&(s.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,s){if(!s)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(s)}_readdirp(t,s){if(this.closed)return;let n={type:y.ALL,alwaysStat:!0,lstat:!0,...s,depth:0},r=ct(t,n);return this._streams.add(r),r.once(ft,()=>{r=void 0}),r.once(Le,()=>{r&&(this._streams.delete(r),r=void 0)}),r}};function or(e,t={}){let s=new le(t);return s.add(e),s}var vt={watch:or,FSWatcher:le};import{existsSync as O,mkdirSync as wr,readFileSync as yr,unlinkSync as Er}from"fs";import{basename as It,join as N,relative as Tt}from"path";import{copyFileSync as ar,existsSync as F,mkdirSync as cr,readdirSync as Ye,readFileSync as lr,writeFileSync as dr}from"fs";import{basename as xt,dirname as Nt,extname as ur,join as T,normalize as fr,relative as M,resolve as Dt,sep as hr}from"path";var pr=/import\s+(?:(?:{[^}]*})|(?:[^{}\s,]*))?\s*(?:,\s*(?:{[^}]*}))?\s*from\s+['"]([./]+[^'"]*)['"]/g,mr=/import\s+(?:(?:{[^}]*})|(?:[^{}\s,]*))?\s*(?:,\s*(?:{[^}]*}))?\s*from\s+['"](@\/[^'"]*)['"]/g,gr=/import\s*\(\s*['"](@\/[^'"]*)['"]\s*\)/g,de=/\.(js|jsx|ts|tsx)$/,Ve=/^page\.(tsx|ts|jsx|js)$/i,U=(e,t)=>{let n=M(t,e).split(hr);n.pop();let r=n.filter(i=>!i.startsWith("("));return fr(r.join("/"))},ue=e=>{let t=new Map,s=n=>{if(F(n))for(let r of Ye(n,{withFileTypes:!0})){let i=T(n,r.name);if(r.isDirectory()){s(i);continue}if(Ve.test(r.name)){let o=U(i,e);t.set(o,i)}}};return s(e),t},_r=(e,t)=>{let s=e.replace(pr,(n,r)=>{if(r.startsWith(".")){let o=r.replace(de,"").replace(/^(?:\.\.\/)+/,"");return n.replace(r,`${t}/${o}`)}return n});return s=s.replace(mr,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s=s.replace(gr,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s=s.replace(/dynamic\s*\(\s*\(\s*=>\s*import\s*\(\s*['"](@\/[^'"]*)['"]\s*\)\s*\)\s*\)/g,(n,r)=>{let i=r.replace(/^@\//,"").replace(de,"");return n.replace(r,`${t}/${i}`)}),s};function fe(e){let t=e;for(;t!==Dt(t,"..");){let n=T(t,"turbo.json");if(F(n))return t;t=Dt(t,"..")}let s=T(e,"package.json");if(F(s))return e;throw new Error("\u274C Could not locate project root")}function he(e){let t=T(e,"src","app","[locale]");if(F(t))return t;let n=(i=>{let o=[];if(!F(i))return o;let a=(c,d=0)=>{if(!(d>4))try{let l=Ye(c,{withFileTypes:!0});for(let u of l){if(!u.isDirectory())continue;let f=T(c,u.name);if(u.name==="[locale]"&&Nt(f).endsWith(T("src","app"))){o.push(f);continue}a(f,d+1)}}catch{}};return a(i),o})(e);return n.length>0?n[0]:T(e,"apps","docs","src","app","[locale]")}var K=e=>{let t=[];if(!F(e))return t;let s=Ye(e,{withFileTypes:!0});for(let n of s){let r=T(e,n.name);n.isDirectory()?t.push(...K(r)):t.push(r)}return t},H=e=>F(e)?K(e).length===0:!0,ze=(e,t,s,n,r,i,o=!0)=>{let a=xt(e);if(Ve.test(a)){let c=U(t,r),d=n.get(c);if(d&&d!==t){o&&console.log(`\x1B[31mSkipped duplicate page:\x1B[0m ${M(i,t)} (collides with ${M(i,d)})`);return}}try{let c=Nt(t);F(c)||cr(c,{recursive:!0});let d=ur(e);if(s&&[".js",".jsx",".ts",".tsx"].includes(d)){let l=lr(e,"utf-8"),u=_r(l,s);dr(t,u)}else ar(e,t);if(o){let l=e.indexOf(T("src","app")),u=l!==-1?e.substring(l):e.startsWith(i)?M(i,e):e,f=t.startsWith(i)?M(i,t):t;console.log(`\x1B[32mCopied:\x1B[0m ${u} \u2192 ${f}`)}if(Ve.test(xt(t))){let l=U(t,r);n.set(l,t)}}catch(c){console.error(`\x1B[31mError copying file:\x1B[0m ${e}`,c)}},Pt=(e,t,s,n,r,i,o=!0)=>{if(!F(e)||H(e))return;let a=K(e);for(let c of a){let d=M(e,c),l=T(t,d);ze(c,l,s,n,r,i,o)}};var Rt=({initMessage:e})=>{let t=process.cwd(),s=fe(t),n=he(s),r=ue(n),i=It(t);try{let h=N(t,"package.json");O(h)&&(i=JSON.parse(yr(h,"utf-8")).name??"")}catch(h){console.error("\x1B[31mError reading package.json:\x1B[0m",h);return}let o=i.replace(/\//g,"-").replace(/@/g,""),a=N(s,"apps","docs","src","app","[locale]","(main)",N("(plugins)",`(${o})`)),c=N(s,"apps","docs","src","app","[locale]","admin","(auth)",N("(plugins)",`(${o})`)),d=N(s,"apps","docs","src","locales",i),l=[{sourceDir:N(t,"src","app_admin"),destinationDir:c},{sourceDir:N(t,"src","app"),destinationDir:a},{sourceDir:N(t,"src","locales"),destinationDir:d}];for(let{sourceDir:h,destinationDir:_}of l)O(h)&&!H(h)&&!O(_)&&wr(_,{recursive:!0});let u=(h,_)=>{ze(h,_,i,r,n,s)},f=h=>{try{if(O(h)&&(Er(h),console.log(`\x1B[33mRemoved:\x1B[0m ${h}`),/^page\.(tsx|ts|jsx|js)$/i.test(It(h)))){let _=U(h,n);r.get(_)===h&&r.delete(_)}}catch(_){console.error(`\x1B[31mError removing file:\x1B[0m ${h}`,_)}},m=(h,_)=>{if(!O(_)||_.includes(N("src","locales")))return;let Ie=K(_);for(let C of Ie){let Z=Tt(_,C),zt=N(h,Z);O(zt)||f(C)}};for(let{sourceDir:h,destinationDir:_}of l)m(h,_);console.log(`${e} \x1B[34mWatching for changes in plugins...\x1B[0m`);let b=l.map(h=>h.sourceDir).filter(h=>O(h)),v=vt.watch(b,{ignoreInitial:!1,persistent:!0}),A=h=>{let _=l.filter(({sourceDir:C})=>h.startsWith(C));if(_.length===0)throw new Error(`No matching source directory for: ${h}`);let Pe=_.reduce((C,Z)=>Z.sourceDir.length>C.sourceDir.length?Z:C),Ie=Tt(Pe.sourceDir,h);return N(Pe.destinationDir,Ie)};v.on("add",h=>{let _=A(h);u(h,_)}).on("change",h=>{let _=A(h);u(h,_)}).on("unlink",h=>{let _=A(h);f(_)}).on("error",h=>{console.error("\x1B[31mWatcher error:\x1B[0m",h)})};import{count as jt}from"drizzle-orm";import{relations as Ct}from"drizzle-orm";import{index as Ee,pgTable as Lt}from"drizzle-orm/pg-core";import{pgTable as br}from"drizzle-orm/pg-core";var x=br("core_roles",e=>({id:e.serial().primaryKey(),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1),default:e.boolean().notNull().default(!1),root:e.boolean().notNull().default(!1),guest:e.boolean().notNull().default(!1),color:e.varchar({length:19})})).enableRLS();import{relations as kt}from"drizzle-orm";import{index as Ft,pgTable as St}from"drizzle-orm/pg-core";import{relations as we}from"drizzle-orm";import{index as me,pgTable as ye}from"drizzle-orm/pg-core";import{relations as vr}from"drizzle-orm";import{index as Ue,pgTable as At}from"drizzle-orm/pg-core";var R=At("core_languages",e=>({id:e.serial().primaryKey(),code:e.varchar({length:32}).notNull().unique(),name:e.varchar({length:255}).notNull(),timezone:e.varchar({length:255}).notNull().default("UTC"),protected:e.boolean().notNull().default(!1),default:e.boolean().notNull().default(!1),enabled:e.boolean().notNull().default(!0),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),time24:e.boolean().notNull().default(!1)}),e=>[Ue("core_languages_code_idx").on(e.code),Ue("core_languages_name_idx").on(e.name)]).enableRLS(),pe=At("core_languages_words",e=>({id:e.serial().primaryKey(),languageCode:e.varchar().notNull().references(()=>R.code,{onDelete:"cascade"}),pluginCode:e.varchar({length:50}).notNull(),itemId:e.integer().notNull(),value:e.text().notNull(),tableName:e.varchar({length:255}).notNull(),variable:e.varchar({length:255}).notNull()}),e=>[Ue("core_languages_words_lang_code_idx").on(e.languageCode)]).enableRLS(),nn=vr(pe,({one:e})=>({language:e(R,{fields:[pe.languageCode],references:[R.code]})}));var g=ye("core_users",e=>({id:e.serial().primaryKey(),nameCode:e.varchar({length:255}).notNull().unique(),name:e.varchar({length:255}).notNull().unique(),email:e.varchar({length:255}).notNull().unique(),password:e.varchar(),createdAt:e.timestamp().notNull().defaultNow(),newsletter:e.boolean().notNull().default(!1),avatarColor:e.varchar({length:6}).notNull(),emailVerified:e.boolean().notNull().default(!1),roleId:e.integer().references(()=>x.id).notNull(),birthday:e.timestamp(),ipAddress:e.varchar({length:40}).notNull(),language:e.varchar({length:32}).notNull().default("en").references(()=>R.code,{onDelete:"set default"})}),e=>[me("core_users_name_code_idx").on(e.nameCode),me("core_users_name_idx").on(e.name),me("core_users_email_idx").on(e.email)]).enableRLS(),un=we(g,({one:e,many:t})=>({group:e(x,{fields:[g.roleId],references:[x.id]}),language:e(R,{fields:[g.language],references:[R.code]}),confirm_email:e(ge,{fields:[g.id],references:[ge.userId]}),sso:t(Ke),forgot_password:e(_e,{fields:[g.id],references:[_e.userId]})})),Ke=ye("core_users_sso",e=>({userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull(),providerId:e.varchar({length:255}).notNull(),providerAccountId:e.varchar({length:255}).notNull(),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date)}),e=>[me("core_users_sso_user_id_idx").on(e.userId)]).enableRLS(),fn=we(Ke,({one:e})=>({user:e(g,{fields:[Ke.userId],references:[g.id]})})),ge=ye("core_users_confirm_emails",e=>({id:e.serial().primaryKey(),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull(),token:e.varchar({length:100}).notNull().unique(),createdAt:e.timestamp().notNull().defaultNow(),expires:e.timestamp().notNull()})).enableRLS(),hn=we(ge,({one:e})=>({user:e(g,{fields:[ge.userId],references:[g.id]})})),_e=ye("core_users_forgot_password",e=>({id:e.serial().primaryKey(),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}).notNull().unique(),token:e.varchar({length:100}).notNull().unique(),ip_address:e.varchar({length:40}).notNull(),createdAt:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull()})).enableRLS(),pn=we(_e,({one:e})=>({user:e(g,{fields:[_e.userId],references:[g.id]})}));var G=St("core_sessions",e=>({id:e.serial().primaryKey(),token:e.varchar({length:255}).notNull().unique(),userId:e.integer().notNull().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull(),deviceId:e.integer().references(()=>S.id,{onDelete:"cascade"}).notNull()}),e=>[Ft("core_sessions_user_id_idx").on(e.userId)]).enableRLS(),yn=kt(G,({one:e})=>({user:e(g,{fields:[G.userId],references:[g.id]}),device:e(S,{fields:[G.deviceId],references:[S.id]})})),S=St("core_sessions_known_devices",e=>({id:e.serial().primaryKey(),publicId:e.varchar({length:32}).notNull().unique(),ipAddress:e.varchar({length:40}).notNull(),userAgent:e.text().notNull(),lastSeen:e.timestamp().notNull().defaultNow()}),e=>[Ft("core_sessions_known_devices_ip_address_idx").on(e.ipAddress)]).enableRLS(),En=kt(S,({one:e})=>({session:e(G,{fields:[S.id],references:[G.deviceId]})}));var q=Lt("core_admin_permissions",e=>({id:e.serial().primaryKey(),roleId:e.integer().references(()=>x.id,{onDelete:"cascade"}),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1)}),e=>[Ee("core_admin_permissions_role_id_idx").on(e.roleId),Ee("core_admin_permissions_user_id_idx").on(e.userId)]).enableRLS(),In=Ct(q,({one:e})=>({group:e(x,{fields:[q.roleId],references:[x.id]}),user:e(g,{fields:[q.userId],references:[g.id]})})),He=Lt("core_admin_sessions",e=>({id:e.serial().primaryKey(),token:e.varchar({length:255}).notNull().unique(),userId:e.integer().notNull().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),lastSeen:e.timestamp().notNull().defaultNow(),expiresAt:e.timestamp().notNull(),deviceId:e.integer().references(()=>S.id,{onDelete:"cascade"}).notNull()}),e=>[Ee("core_admin_sessions_token_idx").on(e.token),Ee("core_admin_sessions_user_id_idx").on(e.userId)]).enableRLS(),Tn=Ct(He,({one:e})=>({user:e(g,{fields:[He.userId],references:[g.id]}),device:e(S,{fields:[He.deviceId],references:[S.id]})}));import{relations as xr}from"drizzle-orm";import{index as Ot,pgTable as Dr}from"drizzle-orm/pg-core";var B=Dr("core_moderators_permissions",e=>({id:e.serial().primaryKey(),roleId:e.integer().references(()=>x.id,{onDelete:"cascade"}),userId:e.integer().references(()=>g.id,{onDelete:"cascade"}),createdAt:e.timestamp().notNull().defaultNow(),updatedAt:e.timestamp().notNull().$onUpdate(()=>new Date),protected:e.boolean().notNull().default(!1)}),e=>[Ot("core_moderators_permissions_role_id_idx").on(e.roleId),Ot("core_moderators_permissions_user_id_idx").on(e.userId)]).enableRLS(),Cn=xr(B,({one:e})=>({group:e(x,{fields:[B.roleId],references:[x.id]}),user:e(g,{fields:[B.userId],references:[g.id]})}));import{join as Nr}from"path";import{pathToFileURL as Pr}from"url";var be=async({type:e="config"})=>{let t=Nr(process.cwd(),"src",`vitnode.${e}.ts`);try{let n=await import(Pr(t).href);return e==="config"?n.vitNodeConfig:n.vitNodeApiConfig}catch(s){console.error("Failed to load config:",s),process.exit(1)}};import{existsSync as ve}from"fs";import{readFile as Ir}from"fs/promises";import{join as I,relative as $t}from"path";var J=async()=>{let t=[...(await be({})).plugins.map(a=>a.pluginId),"@vitnode/core"],s=fe(process.cwd()),n=he(s),r=ue(n),i=process.cwd(),o=a=>{let c=process.cwd(),d=I(c,"node_modules",a);if(ve(d))return d;if(s&&s!==c){let l=I(s,"node_modules",a);if(ve(l))return l}return null};await Promise.all(t.map(async a=>{let c=o(a);if(!c){console.error(`\x1B[31mPlugin not found:\x1B[0m ${a} in node_modules`);return}let d="";try{let v=I(c,"package.json");ve(v)&&(d=JSON.parse(await Ir(v,"utf-8")).name??"")}catch(v){console.error(`\x1B[31mError reading package.json for ${a}:\x1B[0m`,v);return}let l=a.replace(/\//g,"-").replace(/@/g,""),u=I(i,"src","app","[locale]","(main)",I("(plugins)",`(${l})`)),f=I(i,"src","app","[locale]","admin","(auth)",I("(plugins)",`(${l})`)),m=I(i,"src","locales",a),b=[{sourceDir:I(c,"src","app_admin"),destinationDir:f},{sourceDir:I(c,"src","app"),destinationDir:u},{sourceDir:I(c,"src","locales"),destinationDir:m}];for(let{sourceDir:v,destinationDir:A}of b)ve(v)&&!H(v)&&(console.log(`\x1B[36mCopying ${a}:\x1B[0m ${$t(s,v)} \u2192 ${$t(s,A)}`),Pt(v,A,d,r,n,s,!1))}))};import{spawn as Tr}from"child_process";var Q=async(e,t=[])=>new Promise((s,n)=>{let r=Tr(e,t,{stdio:"inherit",shell:!0,env:process.env});r.on("error",i=>{n(i)}),r.on("close",i=>{i!==0?n(new Error(`Command failed with exit code ${i}`)):s(!0)})});var xe=async()=>{try{await Q("npm",["run","drizzle-kit","up"]),await Q("npm",["run","drizzle-kit","generate"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},De=async()=>{try{await Q("npm",["run","drizzle-kit","migrate"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},Wt=async()=>{try{await Q("npm",["run","drizzle-kit","push"])}catch(e){console.error("\x1B[31m%s\x1B[0m",e),process.exit(1)}},X=async()=>{let t=(await be({type:"api.config"})).dbProvider,[s]=await t.select({count:jt()}).from(x).limit(1),[n]=await t.select({count:jt()}).from(R);if(n.count===0&&await t.insert(R).values([{code:"en",name:"English (USA)",default:!0,protected:!0,timezone:"America/New_York"}]),s.count===0){let r=await t.insert(x).values([{protected:!0,guest:!0},{protected:!0,default:!0},{protected:!0,color:"hsl(122, 80%, 45%)"},{protected:!0,root:!0,color:"hsl(0, 100%, 50%)"}]).returning({id:x.id});await t.insert(pe).values([{languageCode:"en",pluginCode:"core",itemId:r[0].id,value:"Guest",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[1].id,value:"Member",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[2].id,value:"Moderator",tableName:"core_roles",variable:"name"},{languageCode:"en",pluginCode:"core",itemId:r[3].id,value:"Administrator",tableName:"core_roles",variable:"name"}]),await Promise.all([await t.insert(B).values({roleId:r[2].id,protected:!0}),await t.insert(q).values({roleId:r[3].id,protected:!0})])}},Mt=async({initMessage:e,flag:t})=>{let s=[];t==="--web"?s.push({label:"Prepare plugins files...",action:J}):t==="--api"?s.push({label:"Generate migrations...",action:xe},{label:"Run migrations...",action:De},{label:"Insert initial data...",action:X}):s.push({label:"Prepare plugins files...",action:J},{label:"Generate migrations...",action:xe},{label:"Run migrations...",action:De},{label:"Insert initial data...",action:X});for(let n=0;n<s.length;n++){let r=s[n],i=`[${n+1}/${s.length}]`;r.label==="Insert initial data..."?console.log(`
9
9
  ${e} ${i} ${r.label}`):console.log(`${e} ${i} ${r.label}`),await r.action()}console.log(`${e} \x1B[32mInitial setup completed.\x1B[0m`),process.exit(0)};Yt.config({quiet:!0});var $="\x1B[34m[VitNode]\x1B[0m",Vt=process.argv[2],Ne=process.argv[3];switch(Vt){case"init":Mt({initMessage:$,flag:Ne});break;case"migrate":await xe(),Ne==="--generate"&&(console.log(`${$} \x1B[32mDatabase migrations generated successfully.\x1B[0m`),process.exit(0)),await De(),await X(),console.log(`${$} \x1B[32mDatabase migrated successfully.\x1B[0m`),process.exit(0);break;case"plugin":(Ne==="--w"||Ne==="--watch")&&Rt({initMessage:$});break;case"prepare-plugins":await J(),console.log(`${$} \x1B[32mPlugins prepared successfully.\x1B[0m`),process.exit(0);break;case"push":await Wt(),await X(),console.log(`${$} \x1B[32mDatabase pushed successfully.\x1B[0m`),process.exit(0);break;default:console.log(`${$} \x1B[31mCommand not found: "${Vt??""}"\x1B[0m`),process.exit(1)}
10
10
  /*! Bundled license information:
11
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"file-utils.d.ts","sourceRoot":"","sources":["../../../scripts/shared/file-utils.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,QAAQ,GAAI,UAAU,MAAM,EAAE,YAAY,MAAM,KAAG,MAY/D,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,YAAY,MAAM,KACjB,GAAG,CAAC,MAAM,EAAE,MAAM,CAwBpB,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,YAAY,MAAM,KACjB,MA8DF,CAAC;AAEF,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAYtD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAkEvD;AAED,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAAM,EAgB/C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,OAM9C,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,YAAY,MAAM,EAClB,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,iBAAc,SAkEf,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,YAAY,MAAM,EAClB,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,iBAAc,SAoBf,CAAC"}
1
+ {"version":3,"file":"file-utils.d.ts","sourceRoot":"","sources":["../../../scripts/shared/file-utils.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,QAAQ,GAAI,UAAU,MAAM,EAAE,YAAY,MAAM,KAAG,MAY/D,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,YAAY,MAAM,KACjB,GAAG,CAAC,MAAM,EAAE,MAAM,CAwBpB,CAAC;AAGF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,YAAY,MAAM,KACjB,MA8DF,CAAC;AAEF,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAiBtD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAkEvD;AAED,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAAM,EAgB/C,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,OAM9C,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,QAAQ,GACnB,SAAS,MAAM,EACf,UAAU,MAAM,EAChB,YAAY,MAAM,EAClB,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,iBAAc,SAkEf,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,WAAW,MAAM,EACjB,gBAAgB,MAAM,EACtB,YAAY,MAAM,EAClB,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,iBAAc,SAoBf,CAAC"}