@moneko/core 4.14.0-beta.0 → 4.14.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/bin/tsc.mjs CHANGED
@@ -1 +1,2 @@
1
- import{join as e}from"node:path";import{stdout as t}from"node:process";import i from"typescript";import{cwd as o}from"./utils/config.mjs";async function n(n){return new Promise(s=>{let r=i.parseJsonConfigFileContent({extends:e(o,"tsconfig.json"),compilerOptions:{outDir:n,declaration:!0,emitDeclarationOnly:!0,skipLibCheck:!0,skipDefaultLibCheck:!0,noEmitOnError:!1},include:[e(o,"components"),e(o,"typings")],exclude:[e(o,"components/**/examples/*"),e(o,"components/**/__tests__/*"),e(o,"components/**/__mocks__/*")]},i.sys,o);r.options.incremental&&(r.options.tsBuildInfoFile=r.options.tsBuildInfoFile??e(n,".tsbuildinfo"));let a=i.createProgram(r.fileNames,r.options),c=a.emit();i.getPreEmitDiagnostics(a).concat(c.diagnostics).forEach(e=>{if(t.write("\n"),e.file){let{line:o,character:n}=e.file.getLineAndCharacterOfPosition(e.start),s=i.flattenDiagnosticMessageText(e.messageText,"\n");t.write(`${e.file.fileName} (${o+1},${n+1}): ${s}`)}else t.write(i.flattenDiagnosticMessageText(e.messageText,"\n"))}),s(!0)})}export default n;
1
+ import{join as e}from"node:path";import{stdout as t}from"node:process";import{API as o}from"typescript/sync";import{cwd as i}from"./utils/config.mjs";function n(e,t=0){return(t?`
2
+ ${" ".repeat(t)}`:"")+e.text+(e.messageChain??[]).map(e=>n(e,t+1)).join("")}async function s(s){let a=new o({cwd:i});try{let o=a.parseJsonConfigFileContent({extends:e(i,"tsconfig.json"),compilerOptions:{outDir:s,declaration:!0,emitDeclarationOnly:!0,skipLibCheck:!0,skipDefaultLibCheck:!0,noEmitOnError:!1},include:[e(i,"components"),e(i,"typings")],exclude:[e(i,"components/**/examples/*"),e(i,"components/**/__tests__/*"),e(i,"components/**/__mocks__/*")]},{configDirectory:i});o.options.incremental=!1,o.options.tsBuildInfoFile=void 0;let r=a.createProgram(o.fileNames,o.options);try{let e=r.emit(),o=[...r.getConfigFileParsingDiagnostics(),...r.getProgramDiagnostics(),...r.getSyntacticDiagnostics(),...r.getGlobalDiagnostics(),...r.getSemanticDiagnostics(),...r.getDeclarationDiagnostics()],i=new Map;for(let e of o){let t=JSON.stringify([e.fileName,e.pos,e.end,e.code,n(e)]);i.set(t,e)}return[...i.values()].sort((e,t)=>(e.fileName??"").localeCompare(t.fileName??"")||e.pos-t.pos||e.end-t.end||e.code-t.code).concat(e.diagnostics).forEach(e=>{t.write("\n");let o=n(e);if(e.fileName&&e.startPosition){let{line:i,character:n}=e.startPosition;t.write(`${e.fileName} (${i+1},${n+1}): ${o}`)}else t.write(o)}),!0}finally{r.dispose()}}finally{a.close()}}export default s;
@@ -3,10 +3,4 @@ export interface BundleEntry {
3
3
  }
4
4
  /**
5
5
  * 将一个或多个 npm 包或本地文件的类型声明打包成单一的 .d.ts 字符串。
6
- */ export declare function bundleDts(pkgOrPkgs: BundleEntry | string | (BundleEntry | string)[], scope?: string, minify?: boolean, progress?: (/**
7
- * 当前处理的进度
8
- */ current: number, /**
9
- * 总处理的模块数(动态更新)
10
- */ total: number, /**
11
- * 当前处理的消息
12
- */ msg: string) => void): Promise<string>;
6
+ */ export declare function bundleDts(pkgOrPkgs: BundleEntry | string | (BundleEntry | string)[], scope?: string, minify?: boolean): Promise<string>;
@@ -1,7 +1,7 @@
1
- import{readdirSync as e,readFileSync as t,statSync as i}from"node:fs";import{createRequire as r,isBuiltin as n}from"node:module";import{dirname as l,isAbsolute as o,join as a,posix as s,relative as f,resolve as d,sep as u}from"node:path";import c from"node:process";import p from"typescript";let m=new Map,x=new Map,y=null;function g(e){let t=d(e);if(m.has(t))return m.get(t);try{let e=i(t).isFile();return m.set(t,e),e}catch{return m.set(t,!1),!1}}function h(e){let t=d(e);if(x.has(t))return x.get(t);try{let e=i(t).isDirectory();return x.set(t,e),e}catch{return x.set(t,!1),!1}}let S=new Map,D=new Map,E=new Map,b=new Map;function $(e){return S.has(e)||S.set(e,r(a(e,"__x__.js"))),S.get(e)}function M(e){let i=d(e);if(D.has(i))return D.get(i);try{let e=t(i,"utf-8");return D.set(i,e),e}catch{return D.set(i,null),null}}function N(e){let t=d(e);if(b.has(t))return b.get(t);let i=M(t);if(null===i)return b.set(t,null),null;try{let e=JSON.parse(i);return b.set(t,e),e}catch{return b.set(t,null),null}}function w(e,t,i=p.ScriptKind.TS){let r=d(e),n=E.get(r);if(n?.content===t&&n.scriptKind===i)return n.sourceFile;let l=p.createSourceFile(r,t,p.ScriptTarget.Latest,!0,i);return E.set(r,{content:t,scriptKind:i,sourceFile:l}),l}let I=r(a(c.cwd(),"__x__.js")),C=null,k=null;function v(){if(C)return C;let e=c.cwd(),t=p.findConfigFile(e,p.sys.fileExists,"tsconfig.json");if(t){k=l(t);let{config:e,error:i}=p.readConfigFile(t,p.sys.readFile);if(!i){let{options:i}=p.parseJsonConfigFileContent(e,p.sys,l(t));return C={...i,declaration:!0,emitDeclarationOnly:!0,noEmit:!1,skipLibCheck:!0,noEmitOnError:!1,declarationMap:!1}}}return C={declaration:!0,emitDeclarationOnly:!0,noEmit:!1,skipLibCheck:!0,noEmitOnError:!1,declarationMap:!1,target:p.ScriptTarget.ESNext,module:p.ModuleKind.ESNext,moduleResolution:p.ModuleResolutionKind.Bundler,jsx:p.JsxEmit.ReactJSX},k=e,C}let L=null,F=null;function T(){return L||((L=p.createCompilerHost(v())).fileExists=g,L.directoryExists=h,L.readFile=e=>M(e)??void 0),L}let j=new Map;function W(e,t){return`${d(t)}\0${e}`}function B(e,t){let i=W(e,t),r=j.get(i);if(r)return r;let n=v(),l=T(),o=p.resolveModuleName(e,t,n,l,function(){if(F)return F;let e=v();return F=p.createModuleResolutionCache(k??c.cwd(),p.sys.useCaseSensitiveFileNames?e=>e:e=>e.toLowerCase(),e)}());return j.set(i,o),o}function K(e,t){if(e.startsWith(".")||o(e))return!1;let{resolvedModule:i}=B(e,t);return!!i&&!i.isExternalLibraryImport}let O=null,A=new Map,R=new Map,q=new Map;function P(){let e=v(),t=a(k??c.cwd(),"__ambient__.d.ts"),i=c.cwd(),r=R.get(i);if(r)return r;let n=new Set;for(let i of e.types??[]){let r=p.resolveTypeReferenceDirective(i,t,e,T()).resolvedTypeReferenceDirective?.resolvedFileName;r&&/\.d\.[cm]?ts$/.test(r)&&n.add(d(r))}let l=[...n];return R.set(i,l),l}function _(){let e=c.cwd(),t=A.get(e);if(t)return t;let i=new Map;for(let e of P()){let t=M(e);if(null!==t)for(let r of w(e,t).statements){if(!p.isModuleDeclaration(r)||!p.isStringLiteral(r.name))continue;let e=i.get(r.name.text)??[];e.push(r),i.set(r.name.text,e)}}return A.set(e,i),i}function H(e,t){return!t||e.startsWith(`${t}:`)?e:`${t}:${e}`}function z(e){let t=e.indexOf(":");if(t<=0)return!1;let i=e.slice(0,t);return i.startsWith("_")&&i.endsWith("_")||i.startsWith("*")&&i.endsWith("*")}let U=new WeakMap,J=new WeakMap;function V(e,t){let i=e.indexOf(":");if(i<=0||!z(e))return!1;let r=U.get(t);if(!r){for(let e of(r=new Set,t.keys())){let t=e.indexOf(":");t>0&&z(e)&&r.add(e.slice(0,t))}U.set(t,r)}return r.has(e.slice(0,i))}function Q(e,t){let i=e.indexOf(":"),r=i>1&&e.startsWith("*")&&e.slice(0,i).endsWith("*"),n=e.indexOf("*",r?i+1:0);if(-1===n)return e===t;let l=e.slice(0,n),o=e.slice(n+1);return t.length>=l.length+o.length&&t.startsWith(l)&&t.endsWith(o)}function G(e,t){let i=J.get(t);if(i||(i=new Map,J.set(t,i)),i.has(e))return i.get(e);if(t.has(e))return i.set(e,e),e;let r=null;for(let i of t.keys())Q(i,e)&&(!r||i.replaceAll("*","").length>r.replaceAll("*","").length)&&(r=i);return i.set(e,r),r}function X(e,t){return V(e,t)?e.slice(e.indexOf(":")+1):null}let Z=new Map;function Y(e){let t=eS(e),i=`${e}\0${t}`;if(Z.has(i))return Z.get(i);let r=em(ep(e))||em(ec(t));return Z.set(i,r),r}function ee(e,t,i){let r=G(e,i);if(r)return r;if(t&&e.startsWith(`${t}:`)){let r=G(e.slice(t.length+1),i);if(r)return r}let n=X(e,i);return n?G(n,i):null}function et(e,t,i){return!!z(t)||!Y(i&&e.startsWith(`${i}:`)?e.slice(i.length+1):X(e,_())??e)}function ei(e,t,i){if(!i||n(e))return e;let r=X(e,t);if(r){let n=G(e,t),l=G(r,t);return!n&&l?H(r,i):H(e,i)}let l=ee(e,i,t);if(l)return et(e,l,i)?H(l,i):Y(e)?H(e,i):e;return e}function er(e,t,i){return e||t||(i?"s":void 0)}function en(e){return e.startsWith("@types/")?e:e.startsWith("@")?`@types/${e.slice(1).replace("/","__")}`:`@types/${e}`}function el(e){if(e){if("string"==typeof e)return e;for(let t of["import","require","default","node","browser"]){let i=e[t];if("string"==typeof i)return i;if(i&&"object"==typeof i){let e=el(i);if(e)return e}}}}function eo(e,t=!1){if(e){if("string"==typeof e)return t?e:void 0;for(let t of Object.keys(e).filter(e=>"types"===e||e.startsWith("types@")).sort((e,t)=>"types"===e?-1:+("types"===t))){let i=eo(e[t],!0);if(i)return i}for(let i of["import","require","default","node"]){let r=e[i];if("string"==typeof r){if(t)return r;continue}if(r&&"object"==typeof r){let e=eo(r,t);if(e)return e}}}}function ea(e,t){let i=a(e,t),r=[];for(let e of(/\.d\.[cm]?ts$/.test(i)?r.push(i):/\.mjs$/.test(i)?r.push(i.replace(/\.mjs$/,".d.mts"),`${i}.d.ts`,i.replace(/\.mjs$/,".d.ts")):/\.cjs$/.test(i)?r.push(i.replace(/\.cjs$/,".d.cts"),`${i}.d.ts`,i.replace(/\.cjs$/,".d.ts")):/\.js$/.test(i)?r.push(i.replace(/\.js$/,".d.ts"),`${i}.d.ts`,i.replace(/\.js$/,".d.mts"),i.replace(/\.js$/,".d.cts")):r.push(`${i}.d.ts`,`${i}.d.mts`,`${i}.d.cts`,i),r.push(a(i,"index.d.ts"),a(i,"index.d.mts"),a(i,"index.d.cts")),r))if(g(e))return e;return null}function es(t,r){try{let e=t.resolve(`${r}/package.json`),i=N(e);if(!i)throw Error(`Cannot parse package metadata: "${e}"`);return{pkgDir:l(e),pkgJson:i}}catch{try{let e=l(t.resolve(r));for(;e!==l(e);){let t=a(e,"package.json");if(g(t)){let i=N(t);if(!i){e=l(e);continue}let n=i.name;if(!n||n===r)return{pkgDir:e,pkgJson:i}}e=l(e)}}catch{}let n=function(t){let r=a(c.cwd(),"node_modules",".pnpm");try{if(!i(r).isDirectory())return null}catch{return null}let n=t.startsWith("@")?t.replace("/","+"):t;try{let i=y??(y=e(r,{withFileTypes:!0})),l=`${n}@`;for(let e of i)if(e.isDirectory()&&e.name.startsWith(l)){let i=a(r,e.name,"node_modules",t),n=a(i,"package.json");if(g(n)){let e=N(n);if(!e)continue;return{pkgDir:i,pkgJson:e}}}}catch{}return null}(r);if(n)return n;return null}}let ef=new Map,ed=new Map;function eu(e,t){return`${d(t??c.cwd())}\0${e}`}function ec(e,t){let i=eu(e,t);if(ef.has(i))return ef.get(i);let r=function(e,t){let i,r,n=t?$(t):I,o=es(n,e)??(t?es(I,e):null);if(o&&(i=o.pkgDir,r=o.pkgJson),i&&r){let e=r.types??r.typings;if(e){let t=ea(i,e);if(t)return{entryFile:t,pkgDir:i}}let t=a(i,"index.d.ts");if(g(t))return{entryFile:t,pkgDir:i};if(r.exports)for(let e of[".","./index"]){let t=r.exports[e];if(!t)continue;let n="string"==typeof t?void 0:eo(t);if(n){let e=ea(i,n);if(e)return{entryFile:e,pkgDir:i}}let l="string"==typeof t?t:el(t);if(l){let e=ea(i,l);if(e)return{entryFile:e,pkgDir:i}}}for(let e of[r.module,r.main]){if(!e)continue;let t=ea(i,e);if(t)return{entryFile:t,pkgDir:i}}if(r.typesVersions){let e=r.typesVersions["*"];if(e){let t=e["*"]??e.index;if(Array.isArray(t)&&t.length>0){let e=ea(i,t[0].replace("*","index"));if(e)return{entryFile:e,pkgDir:i}}}}}let s=en(e);for(let e of t?[n,I]:[I])try{let t=e.resolve(`${s}/package.json`),i=N(t);if(!i)continue;let r=l(t),n=i.types??i.typings??"index.d.ts",o=ea(r,n);if(o)return{entryFile:o,pkgDir:r}}catch{}return null}(e,t);return ef.set(i,r),r}function ep(e,t){let i=eu(e,t);if(ed.has(i))return ed.get(i);let r=function(e,t){let i,r,n=e.startsWith("@")?e.indexOf("/",e.indexOf("/")+1):e.indexOf("/");if(-1===n)return null;let o=e.slice(0,n),s=`./${e.slice(n+1)}`,f=t?$(t):I,d=es(f,o)??(t?es(I,o):null);if(d&&(i=d.pkgDir,r=d.pkgJson),!i||!r)return null;if(r.exports){let e=r.exports[s],t="";if(!e){let i=Object.keys(r.exports).filter(e=>e.endsWith("/*")&&s.startsWith(e.slice(0,-1))).sort((e,t)=>t.length-e.length)[0];i&&(e=r.exports[i],t=s.slice(i.length-1))}if(e){let r="string"==typeof e?void 0:eo(e),n=r?.replaceAll("*",t);if(n){let e=ea(i,n);if(e)return{entryFile:e,pkgDir:i}}let l="string"==typeof e?e:el(e),o=l?.replaceAll("*",t);if(o){let e=ea(i,o);if(e)return{entryFile:e,pkgDir:i}}}}let u=s.slice(2),c=a(i,u);if(g(c))return{entryFile:c,pkgDir:i};for(let e of[".d.ts",".d.mts",".d.cts"]){let t=c+e;if(g(t))return{entryFile:t,pkgDir:i}}for(let e of["index.d.ts","index.d.mts","index.d.cts"]){let t=a(c,e);if(g(t))return{entryFile:t,pkgDir:i}}for(let e of["es","lib","dist"]){let t=ea(i,`${e}/${u}`);if(t)return{entryFile:t,pkgDir:i}}let p=en(o);for(let e of t?[f,I]:[I])try{let t=e.resolve(`${p}/package.json`),i=N(t);if(!i)continue;let r=l(t);if(i.exports){let e=i.exports[s],t="";if(!e){let r=Object.keys(i.exports).filter(e=>e.endsWith("/*")&&s.startsWith(e.slice(0,-1))).sort((e,t)=>t.length-e.length)[0];r&&(e=i.exports[r],t=s.slice(r.length-1))}if(e){let i="string"==typeof e?void 0:eo(e),n=i?.replaceAll("*",t);if(n){let e=ea(r,n);if(e)return{entryFile:e,pkgDir:r}}}}let n=a(r,u);if(g(n))return{entryFile:n,pkgDir:r};for(let e of[".d.ts",".d.mts",".d.cts"]){let t=n+e;if(g(t))return{entryFile:t,pkgDir:r}}}catch{}return null}(e,t);return ed.set(i,r),r}function em(e){return!!e&&(!!/\.[cm]?tsx?$/.test(e.entryFile)||!!/\.[cm]?js$/.test(e.entryFile)&&g(e.entryFile.replace(/\.([cm]?)js$/,".d.$1ts")))}let ex=new Map;function ey(e,t){let i=W(e,t);if(ex.has(i))return ex.get(i);let r=function(e,t){let i=a(l(t),e),r=i.lastIndexOf(".");if(r>Math.max(i.lastIndexOf("/"),i.lastIndexOf("\\"))){let e=i.slice(r),t=i.slice(0,r);if((".d.ts"===e||".d.mts"===e||".d.cts"===e)&&g(i))return i;if(".js"===e)for(let e of[".d.ts",".d.mts",".d.cts"]){let i=t+e;if(g(i))return i}else if(".mjs"===e)for(let e of[".d.mts",".d.ts",".d.cts"]){let i=t+e;if(g(i))return i}else if(".cjs"===e)for(let e of[".d.cts",".d.ts",".d.mts"]){let i=t+e;if(g(i))return i}if((".ts"===e||".tsx"===e||".mts"===e||".cts"===e)&&g(i))return i}for(let e of[".d.ts",".d.mts",".d.cts"])if(g(i+e))return i+e;for(let e of[".ts",".tsx",".mts",".cts"])if(g(i+e))return i+e;for(let e of["index.d.ts","index.d.mts","index.d.cts"]){let t=a(i,e);if(g(t))return t}for(let e of["index.ts","index.tsx","index.mts","index.cts"]){let t=a(i,e);if(g(t))return t}return null}(e,t);return ex.set(i,r),r}function eg(e,t){if("src"!==e&&!e.startsWith("src/"))return null;let i="src"===e?"index":e.slice(4);for(let e of["es","lib","dist"]){let r=ea(t,`${e}/${i}`);if(r)return r}return null}function eh(e,t){return f(t,e).split(u).join(s.sep).replace(/\.d\.[cm]?ts$/,"").replace(/\.[cm]?tsx?$/,"")}function eS(e){return e.split("/").slice(0,e.startsWith("@")?2:1).join("/")}let eD=/\.(css|less|sass|scss|styl|stylus|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|otf|mp3|mp4|webp|webm)$/i;function eE(e){if(e.isTypeOf||!e.qualifier)return null;let t=e.qualifier;for(;p.isQualifiedName(t);)t=t.left;return p.isIdentifier(t)?t.text:null}function eb(e,t,i,r){return!!(i?.has(e)&&!t&&!r?.has(e))}function e$(e,t,i){if(i?.has(e))return!1;if(t?.has(e))return!0;let r=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0];return!!(t?.has(r)&&!i?.has(r))}function eM(e,t,i){let r=er(t.scope,t.depScope,t.isEntry),a=_(),s=e.startsWith(".")||o(e)?e:ei(e,a,r);if(s!==e)return s;if(e.startsWith(".")){let r=t.resolver(e,i);if(!r)return null;let n=d(t.entryFile),l=t.mainModuleId;return(e=>{if(void 0!==l&&e===n)return l.includes(":")?l:t.scope?`${t.scope}:${l}`:l;let i=eh(e,t.pkgDir);if(i.endsWith("/index")?i=i.slice(0,-6):"index"===i&&(i=""),t.pkgName){let e=t.pkgName.split("/").slice(1).join("/").replace(/\.[cm]?js$/,""),r=t.scope||t.depScope;if(e&&i.startsWith(`${e}/`)){let n=i.slice(e.length+1),l=n?`${t.pkgName}/${n}`:t.pkgName,o=eb(l.replace(/\.[cm]?js$/,""),t.isEntry,t.entryPkgs,t.scopedEntryPkgs);return r&&!o?`${r}:${l}`:l}if(e&&i===e){let e=t.pkgName.replace(/\.[cm]?js$/,""),i=eb(e,t.isEntry,t.entryPkgs,t.scopedEntryPkgs);return r&&!i?`${r}:${e}`:e}let n=t.pkgName.split("/").slice(0,t.pkgName.startsWith("@")?2:1).join("/"),l=i?`${n}/${i}`:n,o=eb(l,t.isEntry,t.entryPkgs,t.scopedEntryPkgs);return r&&!o?`${r}:${l}`:l}let r=t.scope||t.depScope;return r?`${r}:${i}`:i})(r)}let f=t.pkgName?eg(e,t.pkgDir):null;if(f){let e=eh(f,t.pkgDir);e.endsWith("/index")?e=e.slice(0,-6):"index"===e&&(e="");let i=e?`${eS(t.pkgName)}/${e}`:eS(t.pkgName),r=t.scope||t.depScope;return r?`${r}:${i}`:i}if(K(e,i)){let{resolvedModule:r}=B(e,i);if(r&&!r.isExternalLibraryImport){let e=d(r.resolvedFileName);if(e){let i=eh(e,t.pkgDir);i.endsWith("/index")?i=i.slice(0,-6):"index"===i&&(i="");let r=t.scope||t.depScope;return r?`${r}:${i}`:i}}}if(!n(e)){let n=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0],o=t.entryPkgs?.has(e),a=t.externalDeps.has(n)||t.externalSubpaths.has(e),s=t.scope||t.isEntry;if(o){var u,c,p;return u=t.scope||t.depScope,c=t.entryPkgs,p=t.scopedEntryPkgs,c?.has(e)&&u&&p?.has(e)?`${u}:${e}`:e}if(a){let r=function(e,t,i,r,n,o){let a=ep(e,l(t));if(!a)return null;let s=eh(a.entryFile,a.pkgDir);s.endsWith("/index")?s=s.slice(0,-6):"index"===s&&(s="");let f=s?`${eS(e)}/${s}`:eS(e),d=eb(f,o,r,n);return i&&!d?`${i}:${f}`:f}(e,i,t.scope||t.depScope||(t.isEntry?"s":void 0),t.entryPkgs,t.scopedEntryPkgs,t.isEntry);if(r)return r}if(G(e,_())&&!em(ep(e,l(i)))&&!em(ec(n,l(i))))return H(e,r);if(a&&s){let i=t.scope||t.depScope||"s";return`${i}:${e}`}}return e}function eN(e,t,i){if(0===t.length)return t;let r=p.factory.updateSourceFile(e,p.factory.createNodeArray(t)),n=p.transform(r,[e=>{let t=r=>{if(p.isImportDeclaration(r)&&p.isStringLiteral(r.moduleSpecifier)){let e=i(r.moduleSpecifier.text);if(e&&e!==r.moduleSpecifier.text)return p.factory.updateImportDeclaration(r,r.modifiers,r.importClause,p.factory.createStringLiteral(e),r.attributes)}if(p.isImportEqualsDeclaration(r)&&p.isExternalModuleReference(r.moduleReference)&&p.isStringLiteral(r.moduleReference.expression)){let e=i(r.moduleReference.expression.text);if(e&&e!==r.moduleReference.expression.text)return p.factory.updateImportEqualsDeclaration(r,r.modifiers,r.isTypeOnly,r.name,p.factory.updateExternalModuleReference(r.moduleReference,p.factory.createStringLiteral(e)))}if(p.isExportDeclaration(r)&&r.moduleSpecifier&&p.isStringLiteral(r.moduleSpecifier)){let e=i(r.moduleSpecifier.text);if(e&&e!==r.moduleSpecifier.text)return p.factory.updateExportDeclaration(r,r.modifiers,r.isTypeOnly,r.exportClause,p.factory.createStringLiteral(e),r.attributes)}if(p.isImportTypeNode(r)&&p.isLiteralTypeNode(r.argument)&&p.isStringLiteral(r.argument.literal)){let n=i(r.argument.literal.text);if(n&&n!==r.argument.literal.text){let i=p.factory.updateImportTypeNode(r,p.factory.createLiteralTypeNode(p.factory.createStringLiteral(n)),r.attributes,r.qualifier,r.typeArguments,r.isTypeOf);return p.visitEachChild(i,t,e)}}return p.visitEachChild(r,t,e)};return e=>p.visitNode(e,t)}]),l=[...n.transformed[0].statements];return n.dispose(),l}function ew(e){let t=p.factory,i=p.canHaveModifiers(e)?p.getModifiers(e):void 0;if(!i?.some(e=>e.kind===p.SyntaxKind.DeclareKeyword))return e;let r=i?.filter(e=>e.kind!==p.SyntaxKind.DeclareKeyword)??[],n=t.createNodeArray(r);return p.isFunctionDeclaration(e)?t.updateFunctionDeclaration(e,n,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body):p.isClassDeclaration(e)?t.updateClassDeclaration(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):p.isInterfaceDeclaration(e)?t.updateInterfaceDeclaration(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):p.isTypeAliasDeclaration(e)?t.updateTypeAliasDeclaration(e,n,e.name,e.typeParameters,e.type):p.isEnumDeclaration(e)?t.updateEnumDeclaration(e,n,e.name,e.members):p.isModuleDeclaration(e)?t.updateModuleDeclaration(e,n,e.name,e.body):p.isVariableStatement(e)?t.updateVariableStatement(e,n,e.declarationList):(p.isNamespaceExportDeclaration(e),e)}let eI=new Map;function eC(e){let t=d(e);if(eI.has(t))return eI.get(t);let i=function(e){let t=d(e);if(O?.getSourceFile(t))return O;let i=v(),r=O?[...O.getRootFileNames(),t]:[t];return O=p.createProgram(r,i,T(),O??void 0)}(t),r=i.getSourceFile(t);if(!r)return eI.set(t,""),"";let n="";return i.emit(r,(e,t)=>{/\.d\.[cm]?ts$/.test(e)&&(n=t)},void 0,!0),n&&(n=function(e){let t=p.createSourceFile("temp.d.ts",e,p.ScriptTarget.Latest,!0,p.ScriptKind.TS),i=p.factory,r=[];for(let e of t.statements){if(p.isImportDeclaration(e)&&!e.importClause){let t=e.moduleSpecifier;if(p.isStringLiteral(t)&&eD.test(t.text))continue}r.push(e)}return p.createPrinter({newLine:p.NewLineKind.LineFeed}).printNode(p.EmitHint.Unspecified,i.updateSourceFile(t,i.createNodeArray(r)),t)}(n)),eI.set(t,n),n}let ek="\0dts-export-all",ev=new Map;function eL(e){return void 0===e||e.has("*")}function eF(e,t){if(eL(e)||eL(t))return eL(e)&&eL(t);if(void 0===e||void 0===t||e.size!==t.size)return!1;for(let i of e)if(!t.has(i))return!1;return!0}function eT(e,t,i){let r=`${t??""}\0${e}`,n=ev.get(r),l=n?function(e,t){if(eL(e)||eL(t))return;let i=new Set(e);for(let e of t??[])i.add(e);return i}(n.bindings,i):function(e){if(void 0===e)return;let t=new Set(e);return t.has("*")?void 0:t}(i);return n&&eF(n.bindings,l)?{key:r,changed:!1}:(ev.set(r,{moduleId:e,scope:t,bindings:l}),{key:r,changed:!0})}function ej(e,t,i){let r=G(e,i);if(r)return r;if(t&&e.startsWith(`${t}:`)){let r=G(e.slice(t.length+1),i);if(r)return r}let n=X(e,i);return n?G(n,i):null}function eW(){return p.createPrinter({newLine:p.NewLineKind.LineFeed,removeComments:!1,omitTrailingSemicolon:!1})}function eB(e,t,i){let r=[];for(let e of t){let t=ew(e);t&&r.push(t)}return eN(e,r,i)}function eK(e){return p.factory.createModuleDeclaration(void 0,p.factory.createIdentifier("global"),p.factory.createModuleBlock(e),p.NodeFlags.GlobalAugmentation)}function eO(e){return(p.isModuleDeclaration(e)||p.isInterfaceDeclaration(e)||p.isTypeAliasDeclaration(e)||p.isClassDeclaration(e)||p.isFunctionDeclaration(e)||p.isEnumDeclaration(e))&&e.name&&p.isIdentifier(e.name)?[e.name.text]:p.isVariableStatement(e)?e.declarationList.declarations.flatMap(e=>p.isIdentifier(e.name)?[e.name.text]:[]):[]}function eA(e){let t=!1,i=[];for(let r of e){if(p.isExportAssignment(r)||p.canHaveModifiers(r)&&p.getModifiers(r)?.some(e=>e.kind===p.SyntaxKind.DefaultKeyword)||p.isExportDeclaration(r)&&r.exportClause&&p.isNamedExports(r.exportClause)&&r.exportClause.elements.some(e=>"default"===e.name.text)){if(t)continue;t=!0}i.push(r)}return i}function eR(e,t){let i=p.factory,r=i.createModuleBlock(eA(t));return i.createModuleDeclaration([i.createModifier(p.SyntaxKind.DeclareKeyword)],i.createStringLiteral(e),r,p.NodeFlags.None)}function eq(e){let t=new Set,i=e=>{let t=e;for(;p.isQualifiedName(t);)t=t.left;return p.isIdentifier(t)?t.text:null},r=e=>{if(p.isIdentifier(e))return e.text;if(p.isQualifiedName(e))return i(e);let t=e;for(;p.isPropertyAccessExpression(t);)t=t.expression;return p.isIdentifier(t)?t.text:null},n=(e,t)=>{if((p.isModuleDeclaration(e)||p.isInterfaceDeclaration(e)||p.isTypeAliasDeclaration(e)||p.isClassDeclaration(e)||p.isFunctionDeclaration(e)||p.isEnumDeclaration(e))&&e.name&&p.isIdentifier(e.name)&&t.add(e.name.text),p.isVariableStatement(e))for(let i of e.declarationList.declarations)p.isIdentifier(i.name)&&t.add(i.name.text);if(p.isImportDeclaration(e)){let i=e.importClause;if(i?.name&&t.add(i.name.text),i?.namedBindings)if(p.isNamespaceImport(i.namedBindings))t.add(i.namedBindings.name.text);else for(let e of i.namedBindings.elements)t.add(e.name.text)}p.isImportEqualsDeclaration(e)&&t.add(e.name.text)},l=(e,o)=>{let a=new Set(o),s=new Set;for(let t of e)n(t,a);let f=e=>{if(p.isModuleDeclaration(e)&&p.isIdentifier(e.name)&&e.body&&p.isModuleBlock(e.body))return void l(e.body.statements,a);if(!(p.isImportDeclaration(e)||p.isImportEqualsDeclaration(e))&&!p.isImportTypeNode(e)){if(p.isTypeReferenceNode(e)&&p.isQualifiedName(e.typeName)){let t=i(e.typeName);t&&s.add(t)}if(p.isTypeQueryNode(e)){let t=r(e.exprName);t&&s.add(t)}if(p.isPropertyAccessExpression(e)){let t=r(e);t&&s.add(t)}if(p.isExpressionWithTypeArguments(e)&&p.isQualifiedName(e.expression)){let t=i(e.expression);t&&s.add(t)}p.forEachChild(e,f)}};for(let t of e)f(t);for(let e of s)a.has(e)||t.add(e)};return l(e,new Set),t}let eP=new WeakMap;function e_(e,t,i){for(let r of i.get(t)??[])if(r.body&&p.isModuleBlock(r.body)){for(let t of r.body.statements)if(p.isNamespaceExportDeclaration(t)&&t.name.text===e||p.isExportAssignment(t)&&p.isIdentifier(t.expression)&&t.expression.text===e)return!0}return!1}function eH(e,t,i=[],r){let n=function(e){let t=eP.get(e);if(t)return t;let i=new Map,r=(e,t)=>{if(!e||"global"===e)return;let r=i.get(e)??new Set;r.add(t),i.set(e,r)},n=(e,t)=>{for(let i of e)p.isModuleDeclaration(i)&&p.isIdentifier(i.name)&&(r(i.name.text,t),i.body&&p.isModuleBlock(i.body)?n(i.body.statements,t):i.body&&p.isModuleDeclaration(i.body)&&n([i.body],t))},l=(e,t)=>{let i=new Set(e.flatMap(e=>p.isExportAssignment(e)&&e.isExportEquals&&p.isIdentifier(e.expression)?[e.expression.text]:[]));for(let i of e)p.isNamespaceExportDeclaration(i)?r(i.name.text,t):p.isExportAssignment(i)&&i.isExportEquals&&p.isIdentifier(i.expression)?r(i.expression.text,t):p.isExportDeclaration(i)&&i.exportClause?p.isNamespaceExport(i.exportClause)&&r(i.exportClause.name.text,t):p.isModuleDeclaration(i)&&p.isIdentifier(i.name)&&eV(i)?r(i.name.text,t):p.isImportEqualsDeclaration(i)&&eV(i)&&r(i.name.text,t),p.isModuleDeclaration(i)&&i.body&&p.isModuleBlock(i.body)&&eV(i)&&l(i.body.statements,t);for(let r of i){let i=e.find(e=>p.isModuleDeclaration(e)&&p.isIdentifier(e.name)&&e.name.text===r);i?.body&&(p.isModuleBlock(i.body)?n(i.body.statements,t):p.isModuleDeclaration(i.body)&&n([i.body],t))}};for(let[t,i]of e)for(let e of i)e.body&&p.isModuleBlock(e.body)&&l(e.body.statements,t);return eP.set(e,i),i}(t),l=n.get(e);if(l?.size===1)return l.values().next().value??null;let o=e.toLowerCase();if(!l||0===l.size)return null;let a=r?new Set([...l].filter(e=>e.startsWith(`${r}:`))):l,s=a.size>0?a:l,f=[...s].find(e=>e.toLowerCase()===o);if(f)return f;let d=new Set,u=e=>{p.isImportDeclaration(e)&&p.isStringLiteral(e.moduleSpecifier)?d.add(e.moduleSpecifier.text):p.isImportTypeNode(e)&&p.isLiteralTypeNode(e.argument)&&p.isStringLiteral(e.argument.literal)?d.add(e.argument.literal.text):p.isExportDeclaration(e)&&e.moduleSpecifier&&p.isStringLiteral(e.moduleSpecifier)?d.add(e.moduleSpecifier.text):p.isImportEqualsDeclaration(e)&&p.isExternalModuleReference(e.moduleReference)&&p.isStringLiteral(e.moduleReference.expression)&&d.add(e.moduleReference.expression.text),p.forEachChild(e,u)};for(let e of i)u(e);let c=[...s].map(i=>{let n=0;for(let e of d)((r&&e.startsWith(`${r}:`)?e.slice(r.length+1):X(e,t)??e)===(r&&i.startsWith(`${r}:`)?i.slice(r.length+1):i)||e===i)&&(n+=20);for(let r of t.get(i)??[])if(r.body&&p.isModuleBlock(r.body))for(let t of r.body.statements)p.isExportAssignment(t)&&t.isExportEquals&&(n+=1),p.isModuleDeclaration(t)&&p.isIdentifier(t.name)&&(t.name.text===e&&(n+=2),t.name.text.toLowerCase()===o&&(n+=1));return[i,n]}),m=Math.max(...c.map(([,e])=>e)),x=c.filter(([,e])=>e===m);if(1===x.length)return x[0][0];let y=new Set;for(let[e,t]of n)if(e.toLowerCase()===o)for(let e of t)s.has(e)&&y.add(e);return 1===y.size?y.values().next().value??null:[...s].find(e=>e.toLowerCase()===o)??null}function ez(e,t,i,r){let n=new Set;for(let l of eq(e)){let o=eH(l,i,e,t);if(!o||o===r)continue;let a=H(o,t),s=e_(l,o,i);e.some(e=>p.isImportDeclaration(e)&&!!e.importClause?.namedBindings&&(p.isNamespaceImport(e.importClause.namedBindings)?e.importClause.namedBindings.name.text===l:e.importClause.namedBindings.elements.some(e=>e.name.text===l))&&p.isStringLiteral(e.moduleSpecifier)&&e.moduleSpecifier.text===a)||(e.unshift(p.factory.createImportDeclaration(void 0,p.factory.createImportClause(void 0,void 0,s?p.factory.createNamespaceImport(p.factory.createIdentifier(l)):p.factory.createNamedImports([p.factory.createImportSpecifier(!1,void 0,p.factory.createIdentifier(l))])),p.factory.createStringLiteral(a),void 0)),n.add(o))}return n}function eU(e){let t=new Map,i=[],r=p.factory,n=e=>{let t=e.importClause;if(!t||e.attributes||t.phaseModifier===p.SyntaxKind.DeferKeyword)return null;let i=e.moduleSpecifier;return p.isStringLiteral(i)?i.text:i.getText()},l=e=>e.phaseModifier===p.SyntaxKind.TypeKeyword,o=e=>e.namedBindings&&p.isNamespaceImport(e.namedBindings)?e.namedBindings:void 0,a=e=>e.namedBindings&&p.isNamedImports(e.namedBindings)?e.namedBindings:void 0,s=e=>p.isIdentifier(e)||p.isStringLiteral(e)?e.text:"",f=e=>`${e.propertyName?s(e.propertyName):""}\0${s(e.name)}`,d=e=>e.isTypeOnly?e:r.updateImportSpecifier(e,!0,e.propertyName,e.name),u=e=>e.isTypeOnly?r.updateImportSpecifier(e,!1,e.propertyName,e.name):e,c=(e,t)=>{let i=e.importClause,n=t.importClause;if(!i||!n)return null;let c=o(i),m=o(n),x=a(i),y=a(n),g=l(i),h=l(n),S=g&&h;if(S&&(i.name||n.name)&&(x||y)||c&&y||m&&x||c&&m&&c.name.text!==m.name.text||i.name&&n.name&&i.name.text!==n.name.text||!S&&(g&&(i.name||c)||h&&(n.name||m)))return null;let D=(x?.elements??[]).map(e=>S?u(e):g?d(e):e),E=new Map,b=new Map;for(let e=0;e<D.length;e++){let t=D[e],i=f(t),r=t.propertyName?s(t.propertyName):s(t.name);E.set(i,e),b.set(t.name.text,r)}for(let e of y?.elements??[]){let t=e.propertyName?s(e.propertyName):s(e.name),i=b.get(e.name.text);if(i&&i!==t)return null;let r=S?u(e):h?d(e):e,n=f(r),l=E.get(n);void 0===l?(E.set(n,D.length),b.set(r.name.text,t),D.push(r)):S||!D[l].isTypeOnly||r.isTypeOnly||(D[l]=r)}let $=i.name??n.name,M=c??m,N=r.createImportClause(S?p.SyntaxKind.TypeKeyword:void 0,$,M??(D.length?r.createNamedImports(D):void 0));return r.updateImportDeclaration(e,e.modifiers,N,e.moduleSpecifier,e.attributes)};for(let o of e){if(!p.isImportDeclaration(o)){i.push(o);continue}let e=o.importClause;if(e&&l(e)&&e.name&&e.namedBindings){for(let l of[r.updateImportDeclaration(o,o.modifiers,r.createImportClause(p.SyntaxKind.TypeKeyword,e.name,void 0),o.moduleSpecifier,o.attributes),r.updateImportDeclaration(o,o.modifiers,r.createImportClause(p.SyntaxKind.TypeKeyword,void 0,e.namedBindings),o.moduleSpecifier,o.attributes)]){let e=n(l),r=null===e?void 0:t.get(e)??[],o=!1;if(r)for(let e of r){let t=c(e.statement,l);if(t){e.statement=t,i[e.index]=t,o=!0;break}}o||(null!==e&&((r??[]).push({index:i.length,statement:l}),t.set(e,r??[])),i.push(l))}continue}let a=n(o);if(null===a){i.push(o);continue}let s=t.get(a)??[],f=!1;for(let e of s){let t=c(e.statement,o);if(t){e.statement=t,i[e.index]=t,f=!0;break}}f||(s.push({index:i.length,statement:o}),t.set(a,s),i.push(o))}return i}function eJ(e){let t=new Map,i=(e,i)=>{let r=t.get(e)??new Set;for(let e of i)r.add(e);t.set(e,r)};for(let t of e){let e=t=>{if(p.isImportDeclaration(t)&&p.isStringLiteral(t.moduleSpecifier)){let e=new Set,r=t.importClause;if(r?.name&&e.add("default"),r?.namedBindings)if(p.isNamespaceImport(r.namedBindings))e.add("*");else for(let t of r.namedBindings.elements)e.add(t.propertyName?.text||t.name.text);i(t.moduleSpecifier.text,e.size?e:["*"])}else if(p.isImportEqualsDeclaration(t)&&p.isExternalModuleReference(t.moduleReference)&&p.isStringLiteral(t.moduleReference.expression))i(t.moduleReference.expression.text,["default"]);else if(p.isExportDeclaration(t)){let e=t.moduleSpecifier;e&&p.isStringLiteral(e)&&(t.exportClause&&p.isNamedExports(t.exportClause)?i(e.text,t.exportClause.elements.map(e=>e.propertyName?.text||e.name.text)):t.exportClause&&p.isNamespaceExport(t.exportClause)?i(e.text,["*"]):i(e.text,[ek]))}else if(p.isImportTypeNode(t)&&p.isLiteralTypeNode(t.argument)&&p.isStringLiteral(t.argument.literal)){let e=eE(t);i(t.argument.literal.text,e?[e]:["*"])}p.forEachChild(t,e)};e(t)}return t}function eV(e){let t=p.canHaveModifiers(e)?p.getModifiers(e):void 0;return!!t?.some(e=>e.kind===p.SyntaxKind.ExportKeyword)}function eQ(e,t,i){if(!i)return e;let r=p.createSourceFile("ambient-module.d.ts",e,p.ScriptTarget.Latest,!0,p.ScriptKind.TS),n=eW(),l=p.transform(r,[e=>{let r=n=>{if(p.isImportDeclaration(n)&&p.isStringLiteral(n.moduleSpecifier)){let e=ei(n.moduleSpecifier.text,t,i);if(e!==n.moduleSpecifier.text)return p.factory.updateImportDeclaration(n,n.modifiers,n.importClause,p.factory.createStringLiteral(e),n.attributes)}if(p.isImportEqualsDeclaration(n)&&p.isExternalModuleReference(n.moduleReference)&&p.isStringLiteral(n.moduleReference.expression)){let e=ei(n.moduleReference.expression.text,t,i);if(e!==n.moduleReference.expression.text)return p.factory.updateImportEqualsDeclaration(n,n.modifiers,n.isTypeOnly,n.name,p.factory.updateExternalModuleReference(n.moduleReference,p.factory.createStringLiteral(e)))}if(p.isExportDeclaration(n)&&n.moduleSpecifier&&p.isStringLiteral(n.moduleSpecifier)){let e=ei(n.moduleSpecifier.text,t,i);if(e!==n.moduleSpecifier.text)return p.factory.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,n.exportClause,p.factory.createStringLiteral(e),n.attributes)}if(p.isImportTypeNode(n)&&p.isLiteralTypeNode(n.argument)&&p.isStringLiteral(n.argument.literal)){let l=ei(n.argument.literal.text,t,i);if(l!==n.argument.literal.text){let t=p.factory.updateImportTypeNode(n,p.factory.createLiteralTypeNode(p.factory.createStringLiteral(l)),n.attributes,n.qualifier,n.typeArguments,n.isTypeOf);return p.visitEachChild(t,r,e)}}return p.visitEachChild(n,r,e)};return e=>p.visitNode(e,r)}]),o=n.printFile(l.transformed[0]);return l.dispose(),o}function eG(e,t,i){let r=_();for(let n of e){let e=ee(n,t,r);if(!e||!et(n,e,t))continue;let l=i?.get(n)??i?.get(e);eT(e,t,l?.size?l:void 0)}}function eX(e,t,i){if(e===t)return e;let r=w(`ambient-base:${i}`,e),n=w(`ambient-addition:${i}`,t),l=r.statements.find(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name)),o=n.statements.find(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name));if(l?.body&&p.isModuleBlock(l.body)&&o?.body&&p.isModuleBlock(o.body)&&p.isStringLiteral(l.name)&&p.isStringLiteral(o.name)&&l.name.text===o.name.text){let a=eW(),s=[],f=new Set;for(let[e,t]of[[r,l.body.statements],[n,o.body.statements]])for(let i of t){let t=a.printNode(p.EmitHint.Unspecified,i,e),r=`${i.kind}\0${t}`;f.has(r)||(f.add(r),s.push(t))}let d=w(`ambient-merged:${i}`,`declare module ${JSON.stringify(i)} {
2
- ${s.join("\n")}
3
- }`),u=d.statements.find(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name));if(!u?.body||!p.isModuleBlock(u.body))return`${e}
4
- ${t}`;let c=eA(eU([...u.body.statements])),m=p.factory.updateModuleDeclaration(u,u.modifiers,u.name,p.factory.createModuleBlock(c));return a.printNode(p.EmitHint.Unspecified,m,d)}return`${e}
5
- ${t}`}let eZ=new Map;function eY(e){let t=`${e.id}\0${e.content}`,i=eZ.get(t);if(i)return i;let r=w(`ambient-deps:${e.id}`,e.content),n=eJ(r.statements),l={source:r,references:n};return eZ.set(t,l),l}function e0(e,t,i){let r=p.factory,n=[],l=i?`${i}:${e}`:e;for(let[e,i]of t){if(i.sourceModule===l)continue;let t="default"===i.originalName,o=r.createNamedExports([r.createExportSpecifier(!1,t?r.createIdentifier("default"):i.originalName?r.createIdentifier(i.originalName):void 0,r.createIdentifier(e))]),a=r.createExportDeclaration(void 0,!1,o,r.createStringLiteral(i.sourceModule));n.push(a)}if(0===n.length)return{id:l,content:""};let o=eR(l,n),a=eW(),s=p.createSourceFile("temp.d.ts","",p.ScriptTarget.Latest,!0,p.ScriptKind.TS);return{id:l,content:a.printNode(p.EmitHint.Unspecified,o,s)}}function e1(e,t,i,r,l,a,s,f,u,c,m){let x=new Set,y=[],h=new Set,S=new Set,D=(e,t)=>ey(e,t);return!function E(b){var $;let N,I=d(b);if(x.has(I))return;x.add(I);let C=/\.[cm]?tsx?$/.test(I)&&!/\.d\.[cm]?ts$/.test(I);if(/\.[cm]?js$/.test(I)){let e=I.replace(/\.[cm]?js$/,e=>".mjs"===e?".d.mts":".cjs"===e?".d.cts":".d.ts");g(e)&&E(e),x.delete(I);return}try{if(C){if(!(N=eC(I)))return void x.delete(I)}else{let e=M(b);if(null===e)throw Error(`Cannot read declaration file: "${b}"`);N=e.replace(/^#![^\n]*\n?/,"")}}catch{x.delete(I);return}let k=w(I,N,/\.[cm]?tsx?$/.test(I)&&!/\.d\.[cm]?ts$/.test(I)?p.ScriptKind.TSX:p.ScriptKind.TS),v=d(i),L=(i=>{if(void 0!==l&&i===v)return l.includes(":")||eb(l,a,f,u)?l:r?`${r}:${l}`:l;let n=eh(i,t);if(n.endsWith("/index")?n=n.slice(0,-6):"index"===n&&(n=""),e){let t=e.split("/").slice(1).join("/").replace(/\.[cm]?js$/,"");if(t&&n.startsWith(`${t}/`)){let i=n.slice(t.length+1),l=i?`${e}/${i}`:e,o=eb(l.replace(/\.[cm]?js$/,""),a,f,u),d=r||s;return d&&!o?`${d}:${l}`:l}if(t&&n===t){let t=e.replace(/\.[cm]?js$/,""),i=eb(t,a,f,u),n=r||s;return n&&!i?`${n}:${t}`:t}let i=e.split("/").slice(0,e.startsWith("@")?2:1).join("/"),l=n?`${i}/${n}`:i,o=eb(l,a,f,u),d=r||s;return d&&!o?`${d}:${l}`:l}let o=r||s;return o&&!eb(n,a,f,u)?`${o}:${n}`:n})(I),F=new Set,T=new Set,j=new Set;c&&($=c,$.total++);let W={pkgName:e,pkgDir:t,entryFile:i,mainModuleId:l,scope:r,resolver:D,localDependencies:F,externalDeps:T,externalSubpaths:j,usedBindings:m,currentModuleId:L,isEntry:a,depScope:s,entryPkgs:f,scopedEntryPkgs:u},O=k.fileName,A=(e,t)=>{if(eD.test(e))return;if(e.startsWith(".")||o(e)){let t=e.startsWith(".")?W.resolver(e,O):null;t&&W.localDependencies?.add(t);return}if(n(e))return;let i=W.pkgName?eg(e,W.pkgDir):null;if(i)return void W.localDependencies?.add(i);if(K(e,O)){let t=B(e,O).resolvedModule;t&&!t.isExternalLibraryImport&&W.localDependencies?.add(d(t.resolvedFileName));return}let r=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0];if(e===r&&W.externalDeps.add(r),e!==r&&W.externalSubpaths.add(e),W.usedBindings&&t){let i=W.usedBindings.get(e)||new Set;for(let e of t)i.add(e);W.usedBindings.set(e,i)}},R=e=>{if(p.isImportDeclaration(e)){let t=e.moduleSpecifier;if(p.isStringLiteral(t)){let i=t.text;if(!e.importClause)return void A(i,["*"]);let r=[],n=e.importClause;n.name&&r.push("default"),n.namedBindings&&p.isNamedImports(n.namedBindings)?r.push(...n.namedBindings.elements.map(e=>e.propertyName?.text||e.name.text)):n.namedBindings&&p.isNamespaceImport(n.namedBindings)&&r.push("*"),A(i,r)}return}if(p.isImportEqualsDeclaration(e)){let t=e.moduleReference;p.isExternalModuleReference(t)&&p.isStringLiteral(t.expression)&&A(t.expression.text,["default"]);return}if(p.isExportDeclaration(e)&&e.moduleSpecifier){let t=e.moduleSpecifier;p.isStringLiteral(t)&&A(t.text,e.exportClause&&p.isNamedExports(e.exportClause)?e.exportClause.elements.map(e=>e.propertyName?.text||e.name.text):e.exportClause&&p.isNamespaceExport(e.exportClause)?["*"]:[ek]);return}if(p.isCallExpression(e)&&p.isIdentifier(e.expression)&&"import"===e.expression.text&&e.arguments.length>0){let t=e.arguments[0];p.isStringLiteral(t)&&A(t.text,["*"])}if(p.isImportTypeNode(e)&&p.isLiteralTypeNode(e.argument)&&p.isStringLiteral(e.argument.literal)){let t=e.argument.literal.text,i=eE(e)??void 0;A(t,i?[i]:["*"])}p.forEachChild(e,R)};for(let e of(p.forEachChild(k,R),p.preProcessFile(k.text,!0,!0).typeReferenceDirectives))n(e.fileName)||W.externalDeps.add(e.fileName);for(let e of F)E(e);for(let e of p.preProcessFile(k.text,!0,!0).referencedFiles){let t=D(e.fileName,I);t&&(F.add(t),E(t))}for(let e of T)h.add(e);for(let e of j)S.add(e);if(!p.isExternalModule(k)){let e=k.statements.filter(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name)),t=k.statements.filter(e=>!p.isModuleDeclaration(e)||!p.isStringLiteral(e.name)),i=_(),l=r||s||(a?"s":void 0),o=e=>eM(e,W,I);for(let t of e){if(!t.body||!p.isModuleBlock(t.body))continue;let e=function(e,t){let i=er(t.scope,t.depScope,t.isEntry);if(!i||n(e))return e;let r=ei(e,_(),i);return r!==e?r:z(e)?e:H(e,i)}(t.name.text,W),r=eB(k,t.body.statements,o);for(let e of ez(r,l,i))T.add(e),h.add(e);let a=eR(e,eU(r)),s=eW();y.push({id:e,content:s.printNode(p.EmitHint.Unspecified,a,k),ambient:!0,priority:2}),c&&tn(c,e)}if(t.length>0){let e=eB(k,t,o);if(e.length>0){for(let t of ez(e,l,i))T.add(t),h.add(t);let t=e.filter(e=>p.isImportDeclaration(e)||p.isImportEqualsDeclaration(e)),r=eK(e.filter(e=>!p.isImportDeclaration(e)&&!p.isImportEqualsDeclaration(e))),n=eR(L,[...t,r]),o=eW();y.push({id:L,content:o.printNode(p.EmitHint.Unspecified,n,k),ambient:!0,priority:1}),c&&tn(c,L)}}return}let q=function(e,t,i){let r=[],n=p.factory,l=e=>eM(e,t,i),o=e=>{if(p.isImportDeclaration(e)){let i=e.moduleSpecifier;if(p.isStringLiteral(i)){let r=i.text;if(eD.test(r))return null;if(!e.importClause){let t=l(r);return null===t?null:t===r?e:n.updateImportDeclaration(e,e.modifiers,e.importClause,n.createStringLiteral(t),e.attributes)}if(!(e.importClause.name||e.importClause.namedBindings))return null;let o=l(r);if(null===o||t.currentModuleId&&o===t.currentModuleId)return null;if(o!==r)return n.updateImportDeclaration(e,e.modifiers,e.importClause,n.createStringLiteral(o),e.attributes)}return e}if(p.isExportDeclaration(e)){if(e.moduleSpecifier&&p.isStringLiteral(e.moduleSpecifier)){let i=e.moduleSpecifier.text;if(eD.test(i))return null;let r=l(i);if(null===r||t.currentModuleId&&r===t.currentModuleId)return null;if(r!==i)return n.updateExportDeclaration(e,e.modifiers,e.isTypeOnly,e.exportClause,n.createStringLiteral(r),e.attributes)}return e}if(p.isModuleDeclaration(e)&&e.name.kind===p.SyntaxKind.StringLiteral){if(e.body&&p.isModuleBlock(e.body)){let t=[];for(let i of e.body.statements){let e=ew(i);e&&t.push(e)}return t}return null}return p.isModuleDeclaration(e)&&e.name.kind===p.SyntaxKind.GlobalKeyword,ew(e)};for(let t of e.statements){let e=o(t);null!==e&&(Array.isArray(e)?r.push(...e):r.push(e))}return eN(e,r,l)}(k,W,I);if(0===q.length)return;for(let e of ez(q,r||s||(a?"s":void 0),_()))T.add(e),h.add(e);let P=eR(L,eU(q)),U=eW().printNode(p.EmitHint.Unspecified,P,k);y.push({id:L,content:U}),c&&tn(c,L)}(i),{blocks:y,externalDeps:h,externalSubpaths:S}}let e2=new Map;function e6(e){return new Map([...e].map(([e,t])=>[e,{...t}]))}function e3(e,t,i,r=new Set){let n=new Map,l=d(t),o=`${d(e)}\0${l}\0${[...i].sort().join(",")}`,a=0===r.size;if(a){let e=e2.get(o);if(e)return e6(e)}if(r.has(l))return n;if(r.add(l),i.has("*"))return n.set("*",{file:t}),n;try{let l=M(t);if(null===l)return n;let o=w(t,l),a=(e,t)=>ey(e,t);for(let l of o.statements){if(p.isExportDeclaration(l)&&l.moduleSpecifier&&p.isStringLiteral(l.moduleSpecifier)){let e=l.moduleSpecifier.text;if(l.exportClause&&p.isNamedExports(l.exportClause))for(let r of l.exportClause.elements){let l=r.name.text,o=r.propertyName?.text;if(i.has(l)){let i=a(e,t);i&&n.set(l,{file:i,originalName:o})}}}if(p.isExportDeclaration(l)&&!l.moduleSpecifier&&l.exportClause&&p.isNamedExports(l.exportClause))for(let e of l.exportClause.elements){let r=e.name.text;i.has(r)&&n.set(r,{file:t,originalName:e.propertyName?.text})}if(p.isExportDeclaration(l)&&!l.exportClause&&l.moduleSpecifier&&p.isStringLiteral(l.moduleSpecifier)){let o=l.moduleSpecifier.text,s=a(o,t);if(s)for(let[t,l]of e3(e,s,i,r))n.has(t)||n.set(t,l)}if((p.isVariableStatement(l)||p.isTypeAliasDeclaration(l)||p.isInterfaceDeclaration(l)||p.isFunctionDeclaration(l)||p.isClassDeclaration(l)||p.isEnumDeclaration(l))&&eV(l))if(p.isVariableStatement(l))for(let e of l.declarationList.declarations)p.isIdentifier(e.name)&&i.has(e.name.text)&&n.set(e.name.text,{file:t});else{let e=(p.isTypeAliasDeclaration(l)||p.isInterfaceDeclaration(l)||p.isFunctionDeclaration(l)||p.isClassDeclaration(l)||p.isEnumDeclaration(l))&&l.name?l.name.text:void 0,r=p.canHaveModifiers(l)?p.getModifiers(l):void 0,o=!!r?.some(e=>e.kind===p.SyntaxKind.DefaultKeyword);e&&i.has(e)&&n.set(e,{file:t}),o&&i.has("default")&&n.set("default",{file:t,originalName:e})}else p.isExportAssignment(l)&&i.has("default")&&n.set("default",{file:t})}let s=o.statements.some(e=>p.isExportAssignment(e)&&e.isExportEquals),f=o.statements.some(e=>p.isModuleDeclaration(e)&&p.isIdentifier(e.name));if(s&&f)for(let e of i)n.has(e)||n.set(e,{file:t})}catch{for(let e of i)n.set(e,{file:t})}return a&&e2.set(o,e6(n)),n}function e4(e,t,i,r=new Set){let l,a=d(e);if(r.has(a))return;r.add(a);let c=1===r.size;try{let t=M(e);if(null===t)return;l=t}catch{return}if(/\.[cm]?tsx?$/.test(a)&&!/\.d\.[cm]?ts$/.test(a)&&!(l=eC(a)))return;let m=w(a,l),x=(e,t)=>ey(e,t),y=f(t,a).split(u).join(s.sep),g=/^(?:es|lib|dist)(?:\/|$)/.test(y)?t:void 0;for(let e of m.statements){if(!function e(t,i,r){if(p.isImportTypeNode(t)&&p.isLiteralTypeNode(t.argument)&&p.isStringLiteral(t.argument.literal)){let l=t.argument.literal.text;if(!l.startsWith(".")&&!o(l)&&!n(l)&&!eD.test(l)){if(r&&eg(l,r))return void p.forEachChild(t,t=>e(t,i,r));let n=i.get(l)||new Set,o=eE(t);o?n.add(o):n.add("*"),i.set(l,n)}}p.forEachChild(t,t=>e(t,i,r))}(e,i,g),p.isImportDeclaration(e)&&e.moduleSpecifier&&p.isStringLiteral(e.moduleSpecifier)){let l=e.moduleSpecifier.text,s=g?eg(l,t):null;if(s){e4(s,t,i,r);continue}let f=K(l,a),u=l.startsWith(".");if(!u&&!o(l)&&!n(l)&&!eD.test(l)&&!f){let t=i.get(l)||new Set;if(e.importClause){if(e.importClause.name&&t.add("default"),e.importClause.namedBindings)if(p.isNamedImports(e.importClause.namedBindings))for(let i of e.importClause.namedBindings.elements){let e=i.propertyName?.text||i.name.text;t.add(e)}else p.isNamespaceImport(e.importClause.namedBindings)&&t.add("*")}else t.add("*");i.set(l,t)}if(u){let e=x(l,a);e&&e4(e,t,i,r)}else if(f){let{resolvedModule:e}=B(l,a);if(e&&!e.isExternalLibraryImport){let n=d(e.resolvedFileName);n&&e4(n,t,i,r)}}}if(p.isImportEqualsDeclaration(e)&&p.isExternalModuleReference(e.moduleReference)&&p.isStringLiteral(e.moduleReference.expression)){let t=e.moduleReference.expression.text;if(!t.startsWith(".")&&!o(t)&&!n(t)&&!eD.test(t)){let e=i.get(t)||new Set;e.add("default"),i.set(t,e)}continue}if(p.isExportDeclaration(e)&&e.moduleSpecifier&&p.isStringLiteral(e.moduleSpecifier)){let l=e.moduleSpecifier.text,s=g?eg(l,t):null;if(s){e4(s,t,i,r);continue}let f=K(l,a),u=l.startsWith(".");if(!u&&!o(l)&&!n(l)&&!eD.test(l)&&!f){let t=i.get(l)||new Set;if(e.exportClause&&p.isNamedExports(e.exportClause))for(let i of e.exportClause.elements){let e=i.propertyName?.text||i.name.text;t.add(e)}else e.exportClause&&p.isNamespaceExport(e.exportClause)?t.add("*"):e.exportClause||t.add(c?"*":ek);i.set(l,t)}if(u){let e=x(l,a);e&&e4(e,t,i,r)}else if(f){let{resolvedModule:e}=B(l,a);if(e&&!e.isExternalLibraryImport){let n=d(e.resolvedFileName);n&&e4(n,t,i,r)}}}}}function e8(e,t){return!!t&&(t.has(e)||t.has(e.replace(/\.[cm]?js$/,"")))}function e9(e){if(!e)return null;let t=new Set([...e].filter(e=>e!==ek));return t.size>0?t:null}function e5(e,t){let i=t?.get(e);return!!i?.has(ek)&&(i.add("*"),!0)}function e7(e,t,i,r,n,l,o,a,s,f,u,c,m){let x=e||o,y=l||(s?"s":void 0),g=e8(e,m)||a?.get(e)?.has("*")===!0,{blocks:h,externalDeps:S,externalSubpaths:D}=e1(e,i,t,l,x,s,l,f,u,c,a);for(let o of(e&&u?.has(e)&&function(e,t,i,r,n,l){let o=l?`${l}:${t}`:t;if(n===t&&e.some(e=>e.id===o))return;let a=eh(d(i),r),s=n??`${t}/${a}`,f=l?`${l}:${s}`:s,u=p.factory,c=u.createExportDeclaration(void 0,!1,void 0,u.createStringLiteral(f),void 0),m=u.createModuleBlock([c]),x=u.createModuleDeclaration([u.createModifier(p.SyntaxKind.DeclareKeyword)],u.createStringLiteral(o),m,p.NodeFlags.None),y=eW(),g=p.createSourceFile("temp.d.ts","",p.ScriptTarget.Latest,!0,p.ScriptKind.TS),h=y.printNode(p.EmitHint.Unspecified,x,g);e.push({id:o,content:h})}(h,e,t,i,e,l),S))if(!r.has(o)&&!e$(o,f,u))try{let e=ec(o,i);if(!e){eG([o],y,a);continue}let{entryFile:t,pkgDir:p}=e,x=e8(o,m),h=e9(a?.get(o)),S=x||h?.has("*")===!0||g&&e5(o,a);if(!S&&h){r.add(o);let e=e3(p,t,h),i=new Set;for(let t of e.values())i.add(t.file);let x=new Map;for(let t of i){let{blocks:i,externalDeps:g,externalSubpaths:h}=e1(o,p,t,l,void 0,!1,void 0,f,u,c,a);for(let r of i)for(let[i,l]of(n.push(r),e))d(l.file)===d(t)&&x.set(i,{sourceModule:r.id,originalName:l.originalName});for(let e of g)if(!r.has(e))try{let t=ec(e,p);if(!t){r.add(e),eG([e],y,a);continue}r.add(e);let i=tr(l,s);e7(e,t.entryFile,t.pkgDir,r,n,i,void 0,a,!1,f,u,c,m)}catch{}for(let e of h)if(!r.has(e))try{let t=ep(e,p);if(t){r.add(e);let i=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0],o=tr(l,s),{blocks:d}=e1(i,t.pkgDir,t.entryFile,o,void 0,!1,void 0,f,u,c,a);for(let e of d)n.push(e)}}catch{}}if(x.size>0){let e=tr(l,s),t=e0(o,x,e);t.content&&n.push(t)}}else{if(!S)continue;r.add(o);let e=tr(l,s);e7(o,t,p,r,n,e,void 0,a,!1,f,u,c,m)}}catch{}for(let e of D)if(!r.has(e)&&!e$(e,f,u))try{let t=ep(e,i);if(!t||!em(t)){eG([e],y,a);continue}let o=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0],p=e8(e,m),x=e9(a?.get(e)),h=p||x?.has("*")===!0||g&&e5(e,a);if(!h&&x){r.add(e);let i=e3(t.pkgDir,t.entryFile,x),p=new Set;for(let e of i.values())p.add(e.file);let g=new Map;for(let e of p){let{blocks:p,externalDeps:x,externalSubpaths:h}=e1(o,t.pkgDir,e,l,void 0,!1,void 0,f,u,c,a);for(let t of p)for(let[r,l]of(n.push(t),i))d(l.file)===d(e)&&g.set(r,{sourceModule:t.id,originalName:l.originalName});for(let e of x)if(!r.has(e))try{let i=ec(e,t.pkgDir);if(!i){r.add(e),eG([e],y,a);continue}r.add(e);let o=tr(l,s);e7(e,i.entryFile,i.pkgDir,r,n,o,void 0,a,!1,f,u,c,m)}catch{}for(let e of h)if(!r.has(e))try{let i=ep(e,t.pkgDir);if(i){r.add(e);let t=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0],o=tr(l,s),{blocks:d}=e1(t,i.pkgDir,i.entryFile,o,void 0,!1,void 0,f,u,c,a);for(let e of d)n.push(e)}}catch{}}if(g.size>0){let t=tr(l,s),i=e0(e,g,t);i.content&&n.push(i)}}else{if(!h)continue;r.add(e);let i=tr(l,s),{blocks:d}=e1(o,t.pkgDir,t.entryFile,i,void 0,!1,void 0,f,u,c,a);for(let e of d)n.push(e)}}catch{}for(let e of h)n.push(e)}function te(e){if(!/\bexport\s*\*\s+from\s*["']/.test(e))return e;let t=p.createSourceFile("bundle.d.ts",e,p.ScriptTarget.Latest,!0,p.ScriptKind.TS),i=p.createPrinter({newLine:p.NewLineKind.LineFeed,removeComments:!1,omitTrailingSemicolon:!1}),r=new Map;for(let e of t.statements)if(p.isModuleDeclaration(e)&&p.isStringLiteral(e.name)){let t=e.name.text;e.body&&p.isModuleBlock(e.body)&&r.set(t,Array.from(e.body.statements))}let n=new Map,l=new Set,o=e=>e.some(e=>!!(p.isExportAssignment(e)||p.canHaveModifiers(e)&&p.getModifiers(e)?.some(e=>e.kind===p.SyntaxKind.DefaultKeyword))||p.isExportDeclaration(e)&&void 0!==e.exportClause&&p.isNamedExports(e.exportClause)&&e.exportClause.elements.some(e=>"default"===e.name.text)),a=[];for(let e of t.statements)if(p.isModuleDeclaration(e)&&p.isStringLiteral(e.name)){let s=e.name.text,f=r.get(s);if(!f||o(f)){a.push(i.printNode(p.EmitHint.Unspecified,e,t));continue}let d=new Set;for(let e of f)if(p.isExportDeclaration(e)&&!e.exportClause&&e.moduleSpecifier&&p.isStringLiteral(e.moduleSpecifier)){let t=e.moduleSpecifier.text;(function e(t){let i=n.get(t);if(void 0!==i)return i;if(l.has(t))return!1;l.add(t);let a=r.get(t);if(!a)return l.delete(t),n.set(t,!1),!1;let s=o(a);for(let t of s?[]:a)if(p.isExportDeclaration(t)&&!t.exportClause&&t.moduleSpecifier&&p.isStringLiteral(t.moduleSpecifier)&&e(t.moduleSpecifier.text)){s=!0;break}return l.delete(t),n.set(t,s),s})(t)&&d.add(t)}if(1!==d.size){a.push(i.printNode(p.EmitHint.Unspecified,e,t));continue}let[u]=d,c=p.factory.createExportDeclaration(void 0,!1,p.factory.createNamedExports([p.factory.createExportSpecifier(!1,"default","default")]),p.factory.createStringLiteral(u),void 0),m=eA([...f,c]),x=p.factory.createModuleBlock(m),y=p.factory.updateModuleDeclaration(e,e.modifiers,e.name,x);a.push(i.printNode(p.EmitHint.Unspecified,y,t))}let s=w("inlined-bundle.d.ts",a.join("\n")),f=s.statements.map(e=>p.isModuleDeclaration(e)&&e.body&&p.isModuleBlock(e.body)?p.factory.updateModuleDeclaration(e,e.modifiers,e.name,p.factory.createModuleBlock(eA(e.body.statements))):e);return i.printFile(p.factory.updateSourceFile(s,p.factory.createNodeArray(f)))}function tt(e){return o(e)||e.startsWith("./")||e.startsWith("../")}function ti(e){let t=d(e),i=c.cwd();if(/\.d\.[cm]?ts$/.test(t)&&g(t))return{entryFile:t,pkgDir:i};let r=t.match(/^(.*)\.[cm]?[tj]sx?$/);if(r){let e=r[1];for(let t of[".d.ts",".d.mts",".d.cts"]){let r=e+t;if(g(r))return{entryFile:r,pkgDir:i}}return/\.[cm]?tsx?$/.test(t)&&g(t)?{entryFile:t,pkgDir:i}:null}for(let e of[".d.ts",".d.mts",".d.cts"])if(g(t+e))return{entryFile:t+e,pkgDir:i};for(let e of["index.d.ts","index.d.mts","index.d.cts"]){let r=a(t,e);if(g(r))return{entryFile:r,pkgDir:i}}throw Error(`Cannot find local file: "${e}"`)}function tr(e,t){return e||(t?"s":void 0)}function tn(e,t){e.processed++,e.callback(e.processed,e.total,t)}function tl(e,t){e.processed++,e.total++,e.callback(e.processed,e.total,t)}function to(){m.clear(),x.clear(),y=null,D.clear(),E.clear(),b.clear(),j.clear(),ex.clear(),ef.clear(),ed.clear(),Z.clear(),A.clear(),R.clear(),q.clear(),e2.clear(),eI.clear(),S.clear(),ev.clear(),eZ.clear(),C=null,k=null,L=null,F=null,O=null}export async function bundleDts(e,t,i=!0,r){to();let l=Array.isArray(e)?e:[e],a=new Set,s=[],f=[],u=new Map,m=new Set,x=new Set,y=new Set,g={processed:0,total:0,callback:r||(()=>{})};for(let e of l)if("string"==typeof e)if(tt(e)){let t=ti(e);t&&e4(t.entryFile,t.pkgDir,u)}else{let t=e.replace(/\.[cm]?js$/,"");m.add(t),x.add(t),y.add(t);let i=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0];x.add(i)}else for(let[t,i]of Object.entries(e)){let e=ti(i);if(e&&e4(e.entryFile,e.pkgDir,u),t&&!t.startsWith(".")){x.add(t);let e=t.startsWith("@")?t.split("/").slice(0,2).join("/"):t.split("/")[0];e!==t&&x.add(e)}}for(let e of m){let t=u.get(e)||new Set;t.add("*"),u.set(e,t)}for(let e of(tl(g,"Collecting bindings..."),l))if("string"==typeof e)if(tt(e)){let i=d(e);if(a.has(i))continue;a.add(i);let r=ti(e);if(!r)continue;let{entryFile:n,pkgDir:l}=r;e7("",n,l,a,s,t,void 0,u,!1,x,y,g,m)}else{if(a.has(e))continue;a.add(e);let i=ep(e)??ec(e),r=em(i)?i:null;if(!r){eG([e],t,u);continue}let{entryFile:n,pkgDir:l}=r;e7(e,n,l,a,s,t,void 0,u,!0,x,y,g,m)}else for(let[i,r]of Object.entries(e)){let e=d(r);if(a.has(e))continue;a.add(e);let n=ti(r);if(!n)continue;let{entryFile:l,pkgDir:o}=n,c=eh(d(l),o),p=t?`${t}:${c}`:c;f.push({name:i,moduleId:p}),e7("",l,o,a,s,t,p,u,!1,x,y,g,m)}let h=new Map;for(let e=0;e<32&&(!function(e,t){let i=_();for(let r of e){let{source:e,references:n}=eY(r);for(let[e,r]of n){let n=ej(e,t,i);n&&et(e,n,t)&&eT(n,t,r)}if(/\b(?:[A-Z][A-Za-z0-9_$]*)\s*\./.test(r.content))for(let r of eq(e.statements)){let n=eH(r,i,e.statements,t);n&&et(n,n,t)&&eT(n,t,void 0)}}let r=[...ev.keys()],n=new Set(r),l=new Map,o=new Map,a=new Map,s=function(e,t){let i=new Map;for(let e of t)for(let t of eO(e)){let r=i.get(t)??[];r.push(e),i.set(t,r)}if(0===i.size)return[];let r=new Set;for(let t of e){let e=w(`configured-globals:${t.id}`,t.content),n=e=>{p.isIdentifier(e)&&i.has(e.text)&&r.add(e.text),p.forEachChild(e,n)};p.forEachChild(e,n)}let n=new Set;for(let e of r)for(let t of i.get(e)??[])n.add(t);let l=[...n],o=!0;for(;o;)for(let e of(o=!1,[...l])){let t=e=>{if(p.isIdentifier(e))for(let t of i.get(e.text)??[])n.has(t)||(n.add(t),l.push(t),o=!0);p.forEachChild(e,t)};t(e)}return l}(e,function(){let e=c.cwd(),t=q.get(e);if(t)return t;let i=[];for(let e of P()){let t=M(e);if(null===t)continue;let r=w(e,t);if(!p.isExternalModule(r))for(let e of r.statements)p.isModuleDeclaration(e)&&p.isStringLiteral(e.name)||i.push(e)}return q.set(e,i),i}());if(s.length>0){let r=s[0].getSourceFile(),n=[],l=s.map(e=>ew(e)??e),o=new Set(s.flatMap(eO));for(let e of eq(l)){if(o.has(e))continue;let r=eH(e,i,l,t);if(!r)continue;let a=H(r,t),s=e_(e,r,i);n.push(p.factory.createImportDeclaration(void 0,p.factory.createImportClause(void 0,void 0,s?p.factory.createNamespaceImport(p.factory.createIdentifier(e)):p.factory.createNamedImports([p.factory.createImportSpecifier(!1,void 0,p.factory.createIdentifier(e))])),p.factory.createStringLiteral(a))),eT(r,t,void 0)}let a=eK(l),f=H("__ambient_globals__",t),d=eW();-1===e.findIndex(e=>e.id===f)&&e.push({id:f,content:d.printNode(p.EmitHint.Unspecified,eR(f,[...n,a]),r),ambient:!0,priority:1})}for(let t=0;t<e.length;t++)o.set(e[t].id,t);for(let t=0;t<r.length;t++){let s=r[t];n.delete(s);let f=ev.get(s);if(!f||!et(f.moduleId,f.moduleId,f.scope))continue;let d=f.bindings,u=l.get(s);if(l.has(s)&&eF(u,d))continue;let c=i.get(f.moduleId);if(!c?.length)continue;let m=function(e,t,i,r){let n=t.flatMap(e=>e.body&&p.isModuleBlock(e.body)?[...e.body.statements]:[]);if(!r||r.has("*")||!n.some(e=>p.isExportDeclaration(e))||n.some(e=>!p.isImportDeclaration(e)&&!p.isExportDeclaration(e)))return n;let l=function e(t,i,r=new Set){if(r.has(t))return new Map;r.add(t);let n=new Map;for(let l of i.get(t)??[])if(l.body&&p.isModuleBlock(l.body))for(let o of l.body.statements){if(p.isExportDeclaration(o)&&o.moduleSpecifier&&p.isStringLiteral(o.moduleSpecifier)){let t=o.moduleSpecifier.text;if(o.exportClause&&p.isNamedExports(o.exportClause))for(let e of o.exportClause.elements)n.set(e.name.text,{moduleId:t,originalName:e.propertyName?.text});else if(!o.exportClause&&i.has(t))for(let[l]of e(t,i,new Set(r)))n.has(l)||n.set(l,{moduleId:t,originalName:l});continue}if(p.isExportDeclaration(o)&&!o.moduleSpecifier&&o.exportClause&&p.isNamedExports(o.exportClause)){for(let e of o.exportClause.elements)n.set(e.name.text,{moduleId:t,originalName:e.propertyName?.text});continue}if(eV(o)){let e=(p.isFunctionDeclaration(o)||p.isClassDeclaration(o)||p.isInterfaceDeclaration(o)||p.isTypeAliasDeclaration(o)||p.isEnumDeclaration(o))&&o.name?o.name.text:void 0;if(e&&n.set(e,{moduleId:t}),p.isVariableStatement(o))for(let e of o.declarationList.declarations)p.isIdentifier(e.name)&&n.set(e.name.text,{moduleId:t})}p.isExportAssignment(o)&&o.isExportEquals&&n.set("default",{moduleId:t})}return n}(e,i);if(r.has("default")&&l.has("default")||![...r].some(e=>l.has(e)))return n;let o=n.filter(t=>{if(p.isImportDeclaration(t))return!0;if(!p.isExportDeclaration(t))return!eV(t)||[...l].some(([t,i])=>i.moduleId===e&&r.has(t));if(!t.moduleSpecifier)return!(t.exportClause&&p.isNamedExports(t.exportClause))||t.exportClause.elements.some(e=>r.has(e.name.text));if(!p.isStringLiteral(t.moduleSpecifier))return!1;if(t.exportClause&&p.isNamedExports(t.exportClause))return t.exportClause.elements.some(e=>r.has(e.name.text));let i=t.moduleSpecifier;return!!i&&p.isStringLiteral(i)&&[...r].some(e=>l.get(e)?.moduleId===i.text)}),a=[];for(let e of o){if(!p.isExportDeclaration(e)||!e.moduleSpecifier||!p.isStringLiteral(e.moduleSpecifier)){if(p.isExportDeclaration(e)&&!e.moduleSpecifier&&e.exportClause&&p.isNamedExports(e.exportClause)){let t=e.exportClause.elements.filter(e=>r.has(e.name.text));t.length>0&&a.push(p.factory.updateExportDeclaration(e,e.modifiers,e.isTypeOnly,p.factory.createNamedExports(t),void 0,e.attributes));continue}a.push(e);continue}let t=e.moduleSpecifier.text;if(e.exportClause&&p.isNamedExports(e.exportClause)){let t=e.exportClause.elements.filter(e=>r.has(e.name.text));t.length>0&&a.push(p.factory.updateExportDeclaration(e,e.modifiers,e.isTypeOnly,p.factory.createNamedExports(t),e.moduleSpecifier,e.attributes));continue}let i=[...r].filter(e=>l.get(e)?.moduleId===t);i.length>0&&a.push(p.factory.updateExportDeclaration(e,e.modifiers,e.isTypeOnly,p.factory.createNamedExports(i.map(e=>p.factory.createExportSpecifier(!1,e,e))),e.moduleSpecifier,e.attributes))}return a}(f.moduleId,c,i,d),x=H(f.moduleId,f.scope);for(let e of ez(m,f.scope,i)){let t=eT(e,f.scope,void 0);l.has(t.key)&&!t.changed||n.has(t.key)||(n.add(t.key),r.push(t.key))}let y=eU(m);if(0===y.length){l.set(s,d);continue}let g=eQ(function(e,t,i){let r=eW(),n=t.map(e=>r.printNode(p.EmitHint.Unspecified,e,e.getSourceFile()??i)).join("\n"),l=w(`ambient-render:${e}`,`declare module ${JSON.stringify(e)} {
6
- ${n}
7
- }`),o=l.statements.find(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name));return o?r.printNode(p.EmitHint.Unspecified,o,l):""}(x,y,c[0].getSourceFile()),i,f.scope),h=o.get(x);if(void 0===h)o.set(x,e.length),e.push({id:x,content:g,ambient:!0});else{let t=e[h];if(t.ambient)t.content=g;else{let e=a.get(x)??t.content;a.set(x,e),t.content=eX(e,g,x)}}for(let[e,t]of(l.set(s,d),eJ(y))){let o=ej(e,f.scope,i);if(!o||!et(e,o,f.scope))continue;let a=eT(o,f.scope,t);l.has(a.key)&&!a.changed||n.has(a.key)||(n.add(a.key),r.push(a.key))}}ev.clear()}(s,t),function(e,t,i,r,l,a,s,f=new Map,d){let u=_(),c=e.map(e=>e.id),p=new Map;for(let i of e)if(f.get(i.id)!==i.content)for(let[e,r]of(f.set(i.id,i.content),eY(i).references)){let i=function(e,t,i){let r=e;return t&&r.startsWith(`${t}:`)&&(r=r.slice(t.length+1)),X(r,i)??r}(e,t,u);if(!i||i.startsWith(".")||o(i)||n(i)||function(e,t){return t.some(t=>Q(t,e))}(e,c)||e$(i,l,a))continue;let s=ee(i,t,u);if(s&&et(i,s,t)||z(i)&&V(i,u))continue;let f=p.get(i)??new Set;for(let e of r)f.add(e);p.set(i,f)}let m=!1;for(let[n,o]of p){if(i.has(n))continue;let f=e8(n,d),u=e9(o);if(!f&&!u)continue;let c=(n.includes("/")&&!n.startsWith("@")?-1!==n.indexOf("/"):n.startsWith("@")&&n.split("/").length>2)?ep(n):ec(n);if(!c||!em(c))continue;i.add(n);let p=r.get(n)??new Set;for(let e of u??o)p.add(e);r.set(n,p),e7(n,c.entryFile,c.pkgDir,i,e,t,void 0,r,!1,l,a,s,d),m=!0}return m}(s,t,a,u,x,y,g,h,m));e++);let S=p.factory,D=eW(),E=p.createSourceFile("temp.d.ts","",p.ScriptTarget.Latest,!0,p.ScriptKind.TS),b=[],$=new Map,N=_();for(let e of s){let t=$.get(e.id);if(t)if((e.priority??0)>(t.priority??0))t.content=e.content,t.ambient=e.ambient,t.priority=e.priority;else{if((e.priority??0)<(t.priority??0))continue;t.content!==e.content&&(t.content=eX(t.content,e.content,e.id),t.ambient=t.ambient&&e.ambient)}else $.set(e.id,e),b.push(e)}s.length=0,s.push(...b);let I=new Map;for(let e of s)I.has(e.id)||I.set(e.id,e);let C=new Set,k=[];for(let{name:e,moduleId:t}of f){let i=I.get(t);if(i){let r=i.content.replace(RegExp(`declare module ["']${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}["']`),`declare module "${e}"`);C.add(t),k.push({id:e,content:r,ambient:i.ambient})}else{let i=S.createExportDeclaration(void 0,!1,void 0,S.createStringLiteral(t),void 0),r=S.createModuleBlock([i]),n=S.createModuleDeclaration([S.createModifier(p.SyntaxKind.DeclareKeyword)],S.createStringLiteral(e),r,p.NodeFlags.None),l=D.printNode(p.EmitHint.Unspecified,n,E);s.push({id:e,content:l})}}if(C.size>0){let e=s.filter(e=>!C.has(e.id));s.length=0,s.push(...e,...k)}let v=[],L=new Map;for(let e of(tl(g,"Deduplicating modules..."),s)){let t=L.get(e.id);if(!t){L.set(e.id,e),v.push(e);continue}if((e.priority??0)>(t.priority??0)){t.content=e.content,t.ambient=e.ambient,t.priority=e.priority;continue}(e.priority??0)<(t.priority??0)||t.content!==e.content&&(t.content=eX(t.content,e.content,e.id),t.ambient=t.ambient&&e.ambient)}!function(e,t){let i=new Map,r=[];for(let t of e){let e=w(`namespace-index:${t.id}`,t.content),n=e.statements.find(e=>p.isModuleDeclaration(e)&&p.isStringLiteral(e.name));if(!n?.body||!p.isModuleBlock(n.body))continue;let l=i.get(n.name.text)??[];l.push(n),i.set(n.name.text,l),r.push({block:t,sourceFile:e,declaration:n})}if(0===r.length)return;let n=eW();for(let{block:e,sourceFile:l,declaration:o}of r){if(!o.body||!p.isModuleBlock(o.body))continue;let r=[...o.body.statements],a=r.filter(e=>!p.isNamespaceExportDeclaration(e)),s=[...a];if(0===ez(s,t,i,o.name.text).size&&a.length===r.length)continue;let f=eU(s),d=p.factory.updateModuleDeclaration(o,o.modifiers,o.name,p.factory.createModuleBlock(f));e.content=n.printNode(p.EmitHint.Unspecified,d,l)}}(v,t);let F=v.map(e=>e.content).join("\n\n");tl(g,"Inlining export * from...");let T=t?eQ(te(F),N,t):te(F);tl(g,i?"Minifying...":"Finalizing...");let j=i?function(e){let t=p.createSourceFile("bundle.d.ts",e,p.ScriptTarget.Latest,!0,p.ScriptKind.TS),i=p.createPrinter({newLine:p.NewLineKind.LineFeed,removeComments:!1,omitTrailingSemicolon:!1}),r=[];for(let e of t.statements)if(p.isModuleDeclaration(e)){let n=function(e){let t=[],i=0,r=e.length,n=!1;for(;i<r;){let l=e[i];if("/"===l&&i+1<r&&"/"===e[i+1]){for(n||t.push(" "),i+=2;i<r&&"\n"!==e[i];)i++;n=!0;continue}if("/"===l&&i+1<r&&"*"===e[i+1]){let l=i,o=i+2<r&&"*"===e[i+2],a=e.indexOf("*/",i+2);if(i=-1===a?r:a+2,!o){n||t.push(" "),n=!0;continue}let s=function(e){let t=e.slice(3,-2).split("\n").map(e=>{let t=e.trim();return t.startsWith("*")?t.slice(1).trim():t}),i=t.findIndex(e=>e.startsWith("@example")),r=t.some(e=>/^\|[\s:-|]+\|$/.test(e.trim()));return -1!==i||r?t.filter((e,t,i)=>""!==e||0!==t&&""!==i[t-1]).join("\n").trim():t.join(" ").replace(/\s+/g," ").trim()}(e.slice(l,i));if(s)if(s.includes("\n")){for(let e of(t.push("\n/**\n"),s.split("\n")))t.push(" *",e?` ${e}`:"","\n");t.push(" */")}else t.push("\n/** ",s," */");n=!1;continue}if('"'===l||"'"===l||"`"===l){for(t.push(l),i++;i<r;){let n=e[i];if("\\"===n&&i+1<r){t.push(n,e[i+1]),i+=2;continue}if(t.push(n),i++,n===l)break}n=!1;continue}if(" "===l||" "===l||"\n"===l||"\r"===l){n||(t.push(" "),n=!0),i++;continue}t.push(l),n=!1,i++}return t.join("").trim()}(i.printNode(p.EmitHint.Unspecified,e,t));r.push(n)}return r.join("\n")}(T):T;return tl(g,"Done"),to(),j}
1
+ import{readdirSync as e,readFileSync as t,statSync as n}from"node:fs";import{createRequire as r,isBuiltin as i}from"node:module";import{dirname as l,isAbsolute as o,join as s,posix as a,relative as f,resolve as u,sep as d}from"node:path";import c from"node:process";import{isCallExpression as p,isClassDeclaration as m,isEnumDeclaration as h,isExportAssignment as g,isExportDeclaration as y,isExpressionWithTypeArguments as x,isExternalModule as b,isExternalModuleReference as $,isFunctionDeclaration as w,isIdentifier as S,isImportDeclaration as v,isImportEqualsDeclaration as k,isImportTypeNode as M,isInterfaceDeclaration as C,isLiteralTypeNode as E,isModuleBlock as j,isModuleDeclaration as W,isNamedExports as D,isNamedImports as N,isNamespaceExport as F,isNamespaceExportDeclaration as I,isNamespaceImport as O,isPropertyAccessExpression as _,isQualifiedName as B,isStringLiteral as T,isTypeAliasDeclaration as P,isTypeQueryNode as z,isTypeReferenceNode as A,isVariableStatement as R,ScriptKind as K,ScriptTarget as L,SyntaxKind as q,visitEachChild as J,visitNode as V}from"typescript/ast";import{createExportDeclaration as X,createExportSpecifier as Z,createIdentifier as G,createImportClause as H,createImportDeclaration as Q,createImportSpecifier as U,createLiteralTypeNode as Y,createModuleBlock as ee,createModuleDeclaration as et,createNamedExports as en,createNamedImports as er,createNamespaceImport as ei,createNodeArray as el,createStringLiteral as eo,createToken as es,updateClassDeclaration as ea,updateEnumDeclaration as ef,updateExportDeclaration as eu,updateExternalModuleReference as ed,updateFunctionDeclaration as ec,updateImportDeclaration as ep,updateImportEqualsDeclaration as em,updateImportTypeNode as eh,updateInterfaceDeclaration as eg,updateModuleDeclaration as ey,updateSourceFile as ex,updateTypeAliasDeclaration as eb,updateVariableStatement as e$}from"typescript/ast/factory";import{getLeadingCommentRanges as ew}from"typescript/ast/scanner";import{API as eS,JsxEmit as ev,ModuleKind as ek,ModuleResolutionKind as eM}from"typescript/sync";let eC=new eS,eE=new Set,ej=new WeakMap,eW=new Map,eD=new Set,eN=new Map,eF=null;function eI(e){let t=u(e);if(eN.has(t))return eN.get(t);try{let e=n(t).isFile();return eN.set(t,e),e}catch{return eN.set(t,!1),!1}}let eO=new Map,e_=new Map,eB=new Map,eT=new Map;function eP(e){return eO.has(e)||eO.set(e,r(s(e,"__x__.js"))),eO.get(e)}function ez(e){let n=u(e);if(e_.has(n))return e_.get(n);try{let e=t(n,"utf-8");return e_.set(n,e),e}catch{return e_.set(n,null),null}}function eA(e){let t=u(e);if(eT.has(t))return eT.get(t);let n=ez(t);if(null===n)return eT.set(t,null),null;try{let e=JSON.parse(n);return eT.set(t,e),e}catch{return eT.set(t,null),null}}function eR(e,t,n=K.TS){let r=u(e),i=eB.get(r);if(i?.content===t&&i.scriptKind===n)return i.sourceFile;let l=eC.createSourceFile(r,t,{scriptKind:n});eE.add(l);let o=l.sourceFile;return eB.set(r,{content:t,scriptKind:n,sourceFile:o}),o}let eK=r(s(c.cwd(),"__x__.js")),eL=null,eq=null;function eJ(){if(eL)return eL;let e=c.cwd(),t=function(e,t,n){let r=u(e);for(;;){let e=s(r,n);if(t(e))return e;let i=l(r);if(i===r)return;r=i}}(e,eI,"tsconfig.json");if(t){eq=l(t);let e=eC.parseConfigFile(t);if(0===e.errors.length)return eL={...e.options,declaration:!0,emitDeclarationOnly:!0,noEmit:!1,skipLibCheck:!0,noEmitOnError:!1,declarationMap:!1}}return eL={declaration:!0,emitDeclarationOnly:!0,noEmit:!1,skipLibCheck:!0,noEmitOnError:!1,declarationMap:!1,target:L.ESNext,module:ek.ESNext,moduleResolution:eM.Bundler,jsx:ev.ReactJSX},eq=e,eL}let eV=null;function eX(){if(eV)return eV;let e=eJ();return eV=eC.createModuleResolver(e)}let eZ=new Map;function eG(e,t){return`${u(t)}\0${e}`}function eH(e,t){let n=eG(e,t),r=eZ.get(n);if(r)return r;let i=eX().resolveModuleName(e,l(t));return eZ.set(n,i),i}function eQ(e,t){if(e.startsWith(".")||o(e))return!1;let{resolvedModule:n}=eH(e,t);return!!n&&!n.isExternalLibraryImport}let eU=null,eY=new Map,e0=new Map,e1=new Map;function e2(){let e=eJ(),t=s(eq??c.cwd(),"__ambient__.d.ts"),n=c.cwd(),r=e0.get(n);if(r)return r;let i=new Set;for(let n of e.types??[]){let e=eX().resolveModuleName(n,l(t)).resolvedModule?.resolvedFileName;e&&/\.d\.[cm]?ts$/.test(e)&&i.add(u(e))}let o=[...i];return e0.set(n,o),o}function e6(){let e=c.cwd(),t=eY.get(e);if(t)return t;let n=new Map;for(let e of e2()){let t=ez(e);if(null!==t)for(let r of eR(e,t).statements){if(!W(r)||!T(r.name))continue;let e=n.get(r.name.text)??[];e.push(r),n.set(r.name.text,e)}}return eY.set(e,n),n}function e5(e,t){return!t||e.startsWith(`${t}:`)?e:`${t}:${e}`}function e3(e){let t=e.indexOf(":");if(t<=0)return!1;let n=e.slice(0,t);return n.startsWith("_")&&n.endsWith("_")||n.startsWith("*")&&n.endsWith("*")}let e4=new WeakMap,e8=new WeakMap;function e9(e,t){let n=e.indexOf(":");if(n<=0||!e3(e))return!1;let r=e4.get(t);if(!r){for(let e of(r=new Set,t.keys())){let t=e.indexOf(":");t>0&&e3(e)&&r.add(e.slice(0,t))}e4.set(t,r)}return r.has(e.slice(0,n))}function e7(e,t){let n=e.indexOf(":"),r=n>1&&e.startsWith("*")&&e.slice(0,n).endsWith("*"),i=e.indexOf("*",r?n+1:0);if(-1===i)return e===t;let l=e.slice(0,i),o=e.slice(i+1);return t.length>=l.length+o.length&&t.startsWith(l)&&t.endsWith(o)}function te(e,t){let n=e8.get(t);if(n||(n={matches:new Map,patterns:[...t.keys()].filter(e=>e.includes("*"))},e8.set(t,n)),n.matches.has(e))return n.matches.get(e);if(t.has(e))return n.matches.set(e,e),e;let r=null;for(let t of n.patterns)e7(t,e)&&(!r||t.replaceAll("*","").length>r.replaceAll("*","").length)&&(r=t);return n.matches.set(e,r),r}function tt(e,t){return e9(e,t)?e.slice(e.indexOf(":")+1):null}let tn=new Map;function tr(e){let t=tM(e),n=`${e}\0${t}`;if(tn.has(n))return tn.get(n);let r=t$(tb(e))||t$(tx(t));return tn.set(n,r),r}function ti(e,t,n){let r=te(e,n);if(r)return r;if(t&&e.startsWith(`${t}:`)){let r=te(e.slice(t.length+1),n);if(r)return r}let i=tt(e,n);return i?te(i,n):null}function tl(e,t,n){return!!e3(t)||!tr(n&&e.startsWith(`${n}:`)?e.slice(n.length+1):tt(e,e6())??e)}function to(e,t,n){if(!n||i(e))return e;let r=tt(e,t);if(r){let i=te(e,t),l=te(r,t);return!i&&l?e5(r,n):e5(e,n)}let l=ti(e,n,t);if(l)return tl(e,l,n)?e5(l,n):tr(e)?e5(e,n):e;return e}function ts(e,t,n){return e||t||(n?"s":void 0)}function ta(e){return e.startsWith("@types/")?e:e.startsWith("@")?`@types/${e.slice(1).replace("/","__")}`:`@types/${e}`}let tf=[".d.ts",".d.mts",".d.cts"],tu=[".ts",".tsx",".mts",".cts"];function td(e,t){let n=s(e,t),r=[];return/\.d\.[cm]?ts$/.test(n)?r.push(n):/\.[cm]js$/.test(n)?r.push(n.replace(/\.([cm])js$/,".d.$1ts"),`${n}.d.ts`,n.replace(/\.[cm]js$/,".d.ts")):/\.js$/.test(n)?r.push(n.replace(/\.js$/,".d.ts"),`${n}.d.ts`,n.replace(/\.js$/,".d.mts"),n.replace(/\.js$/,".d.cts")):r.push(...tf.map(e=>n+e),n),r.push(...tf.map(e=>s(n,`index${e}`))),r.find(eI)??null}function tc(e,t,n,r=!1){let i=t=>t?td(e,void 0===n?t:t.replaceAll("*",n)):null;return i(function e(t,n=!1){if(t){if("string"==typeof t)return n?t:void 0;for(let n of Object.keys(t).filter(e=>"types"===e||e.startsWith("types@")).sort((e,t)=>"types"===e?-1:+("types"===t))){let r=e(t[n],!0);if(r)return r}for(let r of["import","require","default","node"]){let i=t[r];if("string"==typeof i){if(n)return i;continue}if(i&&"object"==typeof i){let t=e(i,n);if(t)return t}}}}(t))??(r?null:i(function e(t){if(t){if("string"==typeof t)return t;for(let n of["import","require","default","node","browser"]){let r=t[n];if("string"==typeof r)return r;if(r&&"object"==typeof r){let t=e(r);if(t)return t}}}}(t)))}function tp(e,t,n,r=!1){let i=t?.[n],l="";if(!i&&t){let e=Object.keys(t).filter(e=>e.endsWith("/*")&&n.startsWith(e.slice(0,-1))).sort((e,t)=>t.length-e.length)[0];e&&(i=t[e],l=n.slice(e.length-1))}return tc(e,i,l,r)}function tm(t,r){try{let e=t.resolve(`${r}/package.json`),n=eA(e);if(!n)throw Error(`Cannot parse package metadata: "${e}"`);return{pkgDir:l(e),pkgJson:n}}catch{try{let e=l(t.resolve(r));for(;e!==l(e);){let t=s(e,"package.json");if(eI(t)){let n=eA(t);if(!n){e=l(e);continue}let i=n.name;if(!i||i===r)return{pkgDir:e,pkgJson:n}}e=l(e)}}catch{}let i=function(t){let r=s(c.cwd(),"node_modules",".pnpm");try{if(!n(r).isDirectory())return null}catch{return null}let i=t.startsWith("@")?t.replace("/","+"):t;try{let n=eF??(eF=e(r,{withFileTypes:!0})),l=`${i}@`;for(let e of n)if(e.isDirectory()&&e.name.startsWith(l)){let n=s(r,e.name,"node_modules",t),i=s(n,"package.json");if(eI(i)){let e=eA(i);if(!e)continue;return{pkgDir:n,pkgJson:e}}}}catch{}return null}(r);if(i)return i;return null}}let th=new Map,tg=new Map;function ty(e,t){return`${u(t??c.cwd())}\0${e}`}function tx(e,t){let n=ty(e,t);if(th.has(n))return th.get(n);let r=function(e,t){let n=t?eP(t):eK,r=tm(n,e)??(t?tm(eK,e):null);if(r){let{pkgDir:e,pkgJson:t}=r,n=t.types??t.typings;if(n){let t=td(e,n);if(t)return{entryFile:t,pkgDir:e}}let i=s(e,"index.d.ts");if(eI(i))return{entryFile:i,pkgDir:e};if(t.exports)for(let n of[".","./index"]){let r=tc(e,t.exports[n]);if(r)return{entryFile:r,pkgDir:e}}for(let n of[t.module,t.main]){if(!n)continue;let t=td(e,n);if(t)return{entryFile:t,pkgDir:e}}if(t.typesVersions){let n=t.typesVersions["*"];if(n){let t=n["*"]??n.index;if(Array.isArray(t)&&t.length>0){let n=td(e,t[0].replace("*","index"));if(n)return{entryFile:n,pkgDir:e}}}}}let i=ta(e);for(let e of t?[n,eK]:[eK])try{let t=e.resolve(`${i}/package.json`),n=eA(t);if(!n)continue;let r=l(t),o=n.types??n.typings??"index.d.ts",s=td(r,o);if(s)return{entryFile:s,pkgDir:r}}catch{}return null}(e,t);return th.set(n,r),r}function tb(e,t){let n=ty(e,t);if(tg.has(n))return tg.get(n);let r=function(e,t){let n=e.startsWith("@")?e.indexOf("/",e.indexOf("/")+1):e.indexOf("/");if(-1===n)return null;let r=e.slice(0,n),i=`./${e.slice(n+1)}`,o=t?eP(t):eK,a=tm(o,r)??(t?tm(eK,r):null);if(!a)return null;let{pkgDir:f,pkgJson:u}=a,d=tp(f,u.exports,i);if(d)return{entryFile:d,pkgDir:f};let c=i.slice(2),p=s(f,c);if(eI(p))return{entryFile:p,pkgDir:f};for(let e of tf){let t=p+e;if(eI(t))return{entryFile:t,pkgDir:f}}for(let e of["index.d.ts","index.d.mts","index.d.cts"]){let t=s(p,e);if(eI(t))return{entryFile:t,pkgDir:f}}for(let e of["es","lib","dist"]){let t=td(f,`${e}/${c}`);if(t)return{entryFile:t,pkgDir:f}}let m=ta(r);for(let e of t?[o,eK]:[eK])try{let t=e.resolve(`${m}/package.json`),n=eA(t);if(!n)continue;let r=l(t),o=tp(r,n.exports,i,!0);if(o)return{entryFile:o,pkgDir:r};let a=s(r,c);if(eI(a))return{entryFile:a,pkgDir:r};for(let e of tf){let t=a+e;if(eI(t))return{entryFile:t,pkgDir:r}}}catch{}return null}(e,t);return tg.set(n,r),r}function t$(e){return!!e&&(!!/\.[cm]?tsx?$/.test(e.entryFile)||!!/\.[cm]?js$/.test(e.entryFile)&&eI(e.entryFile.replace(/\.([cm]?)js$/,".d.$1ts")))}let tw=new Map;function tS(e,t){let n=eG(e,t);if(tw.has(n))return tw.get(n);let r=function(e,t){let n=s(l(t),e),r=n.lastIndexOf(".");if(r>Math.max(n.lastIndexOf("/"),n.lastIndexOf("\\"))){let e=n.slice(r),t=n.slice(0,r);if(".js"===e||".mjs"===e||".cjs"===e){let n=(".mjs"===e?[".d.mts",".d.ts",".d.cts"]:".cjs"===e?[".d.cts",".d.ts",".d.mts"]:tf).map(e=>t+e).find(eI);if(n)return n}if(tu.includes(e)&&eI(n))return n}return[...tf.map(e=>n+e),...tu.map(e=>n+e),...tf.map(e=>s(n,`index${e}`)),...tu.map(e=>s(n,`index${e}`))].find(eI)??null}(e,t);return tw.set(n,r),r}function tv(e,t){if("src"!==e&&!e.startsWith("src/"))return null;let n="src"===e?"index":e.slice(4);for(let e of["es","lib","dist"]){let r=td(t,`${e}/${n}`);if(r)return r}return null}function tk(e,t){return f(t,e).split(d).join(a.sep).replace(/\.d\.[cm]?ts$/,"").replace(/\.[cm]?tsx?$/,"")}function tM(e){return e.split("/").slice(0,e.startsWith("@")?2:1).join("/")}let tC=/\.(css|less|sass|scss|styl|stylus|png|jpg|jpeg|gif|svg|ico|woff|woff2|ttf|eot|otf|mp3|mp4|webp|webm)$/i;function tE(e,t,n,r){return!!(n?.has(e)&&!t&&!r?.has(e))}function tj(e,t,n){if(n?.has(e))return!1;if(t?.has(e))return!0;let r=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0];return!!(t?.has(r)&&!n?.has(r))}function tW(e){if(v(e)&&T(e.moduleSpecifier)){let t=e.importClause,n=[];return t?.name&&n.push("default"),t?.namedBindings&&(O(t.namedBindings)?n.push("*"):n.push(...t.namedBindings.elements.map(e=>e.propertyName?.text||e.name.text))),{moduleId:e.moduleSpecifier.text,bindings:t?n:["*"]}}if(k(e)&&$(e.moduleReference)&&T(e.moduleReference.expression))return{moduleId:e.moduleReference.expression.text,bindings:["default"]};if(y(e)&&e.moduleSpecifier&&T(e.moduleSpecifier)){let t=e.exportClause,n=t&&D(t)?t.elements.map(e=>e.propertyName?.text||e.name.text):t&&F(t)?["*"]:[tB];return{moduleId:e.moduleSpecifier.text,bindings:n}}if(M(e)&&E(e.argument)&&T(e.argument.literal)){let t=function(e){if(e.isTypeOf||!e.qualifier)return null;let t=e.qualifier;for(;B(t);)t=t.left;return S(t)?t.text:null}(e);return{moduleId:e.argument.literal.text,bindings:[t??"*"]}}if(p(e)&&S(e.expression)&&"import"===e.expression.text&&e.arguments.length>0&&T(e.arguments[0]))return{moduleId:e.arguments[0].text,bindings:["*"]}}function tD(e,t){if(void 0!==t.mainModuleId&&e===u(t.entryFile)){let e=t.mainModuleId;return e.includes(":")||tE(e,t.isEntry,t.entryPkgs,t.scopedEntryPkgs)?e:t.scope?`${t.scope}:${e}`:e}let n=tk(e,t.pkgDir);n.endsWith("/index")?n=n.slice(0,-6):"index"===n&&(n="");let r=n,i=r;if(t.pkgName){let e=t.pkgName.split("/").slice(1).join("/").replace(/\.[cm]?js$/,"");if(e&&n.startsWith(`${e}/`))i=(r=`${t.pkgName}/${n.slice(e.length+1)}`).replace(/\.[cm]?js$/,"");else if(e&&n===e)i=r=t.pkgName.replace(/\.[cm]?js$/,"");else{let e=tM(t.pkgName);i=r=n?`${e}/${n}`:e}}let l=t.scope||t.depScope;return l&&!tE(i,t.isEntry,t.entryPkgs,t.scopedEntryPkgs)?`${l}:${r}`:r}function tN(e,t,n){let r=ts(t.scope,t.depScope,t.isEntry),s=e6(),a=e.startsWith(".")||o(e)?e:to(e,s,r);if(a!==e)return a;if(e.startsWith(".")){let r=t.resolver(e,n);return r?tD(r,t):null}let f=t.pkgName?tv(e,t.pkgDir):null;if(f){let e=tk(f,t.pkgDir);e.endsWith("/index")?e=e.slice(0,-6):"index"===e&&(e="");let n=e?`${tM(t.pkgName)}/${e}`:tM(t.pkgName),r=t.scope||t.depScope;return r?`${r}:${n}`:n}if(eQ(e,n)){let{resolvedModule:r}=eH(e,n);if(r&&!r.isExternalLibraryImport){let e=u(r.resolvedFileName);if(e){let n=tk(e,t.pkgDir);n.endsWith("/index")?n=n.slice(0,-6):"index"===n&&(n="");let r=t.scope||t.depScope;return r?`${r}:${n}`:n}}}if(!i(e)){let i=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0],o=t.entryPkgs?.has(e),s=t.externalDeps.has(i)||t.externalSubpaths.has(e),a=t.scope||t.isEntry;if(o){var d,c,p;return d=t.scope||t.depScope,c=t.entryPkgs,p=t.scopedEntryPkgs,c?.has(e)&&d&&p?.has(e)?`${d}:${e}`:e}if(s){let r=function(e,t,n,r,i,o){let s=tb(e,l(t));if(!s)return null;let a=tk(s.entryFile,s.pkgDir);a.endsWith("/index")?a=a.slice(0,-6):"index"===a&&(a="");let f=a?`${tM(e)}/${a}`:tM(e),u=tE(f,o,r,i);return n&&!u?`${n}:${f}`:f}(e,n,t.scope||t.depScope||(t.isEntry?"s":void 0),t.entryPkgs,t.scopedEntryPkgs,t.isEntry);if(r)return r}if(te(e,e6())&&!t$(tb(e,l(n)))&&!t$(tx(i,l(n))))return e5(e,r);if(s&&a){let n=t.scope||t.depScope||"s";return`${n}:${e}`}}return e}function tF(e,t,n,r){if(0===t.length)return t;let i=ex(e,el(t),e.endOfFileToken),l=e=>{if(v(e)&&T(e.moduleSpecifier)){let t=r?.statements.has(e),i=e.importClause;if(t&&(tC.test(e.moduleSpecifier.text)||i&&!i.name&&!i.namedBindings))return;let l=n(e.moduleSpecifier.text);if(t&&(null===l||i&&l===r?.currentModuleId))return;if(l&&l!==e.moduleSpecifier.text)return ep(e,e.modifiers,i,eo(l,0),e.attributes)}if(k(e)&&$(e.moduleReference)&&T(e.moduleReference.expression)){let t=n(e.moduleReference.expression.text);if(t&&t!==e.moduleReference.expression.text)return em(e,e.modifiers,e.name,ed(e.moduleReference,eo(t,0)))}if(y(e)&&e.moduleSpecifier&&T(e.moduleSpecifier)){let t=r?.statements.has(e);if(t&&tC.test(e.moduleSpecifier.text))return;let i=n(e.moduleSpecifier.text);if(t&&(null===i||i===r?.currentModuleId))return;if(i&&i!==e.moduleSpecifier.text)return eu(e,e.modifiers,e.exportClause,eo(i,0),e.attributes)}if(M(e)&&E(e.argument)&&T(e.argument.literal)){let t=n(e.argument.literal.text);if(t&&t!==e.argument.literal.text)return J(eh(e,Y(eo(t,0)),e.attributes,e.qualifier,e.typeArguments),l)}return J(e,l)};return[...V(i,l).statements]}function tI(e){let t="modifiers"in e?e.modifiers:void 0;if(!t?.some(e=>e.kind===q.DeclareKeyword))return e;let n=t?.filter(e=>e.kind!==q.DeclareKeyword)??[];return w(e)?ec(e,n,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body):m(e)?ea(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):C(e)?eg(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):P(e)?eb(e,n,e.name,e.typeParameters,e.type):h(e)?ef(e,n,e.name,e.members):W(e)?ey(e,n,e.name,e.attributes,e.body):R(e)?e$(e,n,e.declarationList):e}let tO=new Map;function t_(e){let t=u(e);if(!(/\.[cm]?tsx?$/.test(t)&&!/\.d\.[cm]?ts$/.test(t))){let e=ez(t);return null===e?null:eR(t,e.replace(/^#![^\n]*\n?/,""))}if(tO.has(t))return tO.get(t);let n=function(e){let t=u(e);if(eU?.getSourceFile(t))return eU;let n=eJ();return eU?.dispose(),eU=eC.createProgram([t],n)}(t),r=null;if(n.getSourceFile(t)){let e=[...n.getDeclarationEmit([t]).outputFiles.values()].find(e=>e.sourceFileName===t)?.text??"";if(e){let n=(r=eR(t,e,K.TSX)).statements.filter(e=>v(e)&&!e.importClause&&T(e.moduleSpecifier)&&tC.test(e.moduleSpecifier.text));for(let t of n.reverse())e=e.slice(0,t.getFullStart())+e.slice(t.end);n.length>0&&(r=eR(t,e,K.TSX))}}return tO.set(t,r),r}let tB="\0dts-export-all",tT=new Map,tP=new Map;function tz(e){return void 0===e||e.has("*")}function tA(e,t){if(tz(e)||tz(t))return tz(e)&&tz(t);if(void 0===e||void 0===t||e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function tR(e,t,n){let r=`${t??""}\0${e}`,i=tT.get(r),l=i?function(e,t){if(tz(e)||tz(t))return;let n=new Set(e);for(let e of t??[])n.add(e);return n}(i.bindings,n):function(e){if(void 0===e)return;let t=new Set(e);return t.has("*")?void 0:t}(n);return i&&tA(i.bindings,l)?{key:r,changed:!1}:(tT.set(r,{moduleId:e,scope:t,bindings:l}),{key:r,changed:!0})}function tK(e,t,n){let r=te(e,n);if(r)return r;if(t&&e.startsWith(`${t}:`)){let r=te(e.slice(t.length+1),n);if(r)return r}let i=tt(e,n);return i?te(i,n):null}function tL(e){let t=[];for(let n=0;n<e.length;n+=256){let r=e.slice(n,n+256);t.push(...eC.batch(...r.map(e=>eC.printer.printNode.gen(e))))}return t}let tq=new Set([q.ModuleDeclaration,q.InterfaceDeclaration,q.TypeAliasDeclaration,q.ClassDeclaration,q.FunctionDeclaration,q.EnumDeclaration,q.EnumMember,q.VariableStatement,q.VariableDeclaration,q.Parameter,q.TypeParameter,q.BindingElement,q.PropertySignature,q.PropertyDeclaration,q.PropertyAssignment,q.NamedTupleMember,q.MethodSignature,q.MethodDeclaration,q.GetAccessor,q.SetAccessor,q.Constructor,q.IndexSignature,q.CallSignature,q.ConstructSignature,q.ImportDeclaration,q.ImportEqualsDeclaration,q.ExportDeclaration,q.ExportAssignment]);function tJ(e,t,n){let r;R(e)?r=e.declarationList.declarations[0]?.name:"name"in e&&(r=e.name);let i=r?S(r)||T(r)?r.text:r.getText(t):"";return`${n}/${e.kind}:${i}`}function tV(e,t,n){let r=eW.get(e)??new Map,i=(t,l)=>{let o=tq.has(t.kind),s=o?tJ(t,n,l):l;if(o&&t.pos>=0){let i=`${e}\0${n.fileName}\0${t.kind}\0${t.pos}`;if(eD.has(i))return;eD.add(i);let l=t.getStart(n),o=(ew(n.text,t.pos)??[]).filter(e=>e.end<=l).map(e=>n.text.slice(e.pos,e.end)),a=r.get(s)??[];a.push(o),r.set(s,a)}t.forEachChild(e=>i(e,s))};for(let e of t)i(e,"");eW.set(e,r)}function tX(e){return et(void 0,q.ModuleKeyword,G("global"),void 0,ee(e))}function tZ(e){return(W(e)||C(e)||P(e)||m(e)||w(e)||h(e))&&e.name&&S(e.name)?[e.name.text]:R(e)?e.declarationList.declarations.flatMap(e=>S(e.name)?[e.name.text]:[]):[]}function tG(e){return!!(g(e)||"modifiers"in e&&e.modifiers?.some(e=>e.kind===q.DefaultKeyword))||y(e)&&!!e.exportClause&&D(e.exportClause)&&e.exportClause.elements.some(e=>"default"===e.name.text)}function tH(e){let t=!1,n=[];for(let r of e){if(tG(r)){if(t)continue;t=!0}n.push(r)}return n}function tQ(e,t){let n=ee(tH(t));return et([es(q.DeclareKeyword)],q.ModuleKeyword,eo(e,0),void 0,n)}function tU(e){let t=new Set,n=e=>{let t=e;for(;B(t);)t=t.left;return S(t)?t.text:null},r=e=>{if(S(e))return e.text;if(B(e))return n(e);let t=e;for(;_(t);)t=t.expression;return S(t)?t.text:null},i=(e,t)=>{for(let n of tZ(e))t.add(n);if(v(e)){let n=e.importClause;if(n?.name&&t.add(n.name.text),n?.namedBindings)if(O(n.namedBindings))t.add(n.namedBindings.name.text);else for(let e of n.namedBindings.elements)t.add(e.name.text)}k(e)&&t.add(e.name.text)},l=(e,o)=>{let s=new Set(o),a=new Set;for(let t of e)i(t,s);let f=e=>{if(W(e)&&S(e.name)&&e.body&&j(e.body))return void l(e.body.statements,s);if(!(v(e)||k(e))&&!M(e)){if(A(e)&&B(e.typeName)){let t=n(e.typeName);t&&a.add(t)}if(z(e)){let t=r(e.exprName);t&&a.add(t)}if(_(e)){let t=r(e);t&&a.add(t)}if(x(e)&&B(e.expression)){let t=n(e.expression);t&&a.add(t)}e.forEachChild(f)}};for(let t of e)f(t);for(let e of a)s.has(e)||t.add(e)};return l(e,new Set),t}let tY=new WeakMap;function t0(e,t,n){for(let r of n.get(t)??[])if(r.body&&j(r.body)){for(let t of r.body.statements)if(I(t)&&t.name.text===e||g(t)&&S(t.expression)&&t.expression.text===e)return!0}return!1}function t1(e,t,n=[],r){let i=(function(e){let t=tY.get(e);if(t)return t;let n=new Map,r=(e,t)=>{if(!e||"global"===e)return;let r=n.get(e)??new Set;r.add(t),n.set(e,r)},i=(e,t)=>{for(let n of e)W(n)&&S(n.name)&&(r(n.name.text,t),n.body&&j(n.body)?i(n.body.statements,t):n.body&&W(n.body)&&i([n.body],t))},l=(e,t)=>{let n=new Set(e.flatMap(e=>g(e)&&e.isExportEquals&&S(e.expression)?[e.expression.text]:[]));for(let n of e)I(n)?r(n.name.text,t):g(n)&&n.isExportEquals&&S(n.expression)?r(n.expression.text,t):y(n)&&n.exportClause?F(n.exportClause)&&r(n.exportClause.name.text,t):W(n)&&S(n.name)&&t3(n)?r(n.name.text,t):k(n)&&t3(n)&&r(n.name.text,t),W(n)&&n.body&&j(n.body)&&t3(n)&&l(n.body.statements,t);for(let r of n){let n=e.find(e=>W(e)&&S(e.name)&&e.name.text===r);n?.body&&(j(n.body)?i(n.body.statements,t):W(n.body)&&i([n.body],t))}};for(let[t,n]of e)for(let e of n)e.body&&j(e.body)&&l(e.body.statements,t);return tY.set(e,n),n})(t).get(e);if(i?.size===1)return i.values().next().value??null;let l=e.toLowerCase();if(!i||0===i.size)return null;let o=r?new Set([...i].filter(e=>e.startsWith(`${r}:`))):i,s=o.size>0?o:i,a=[...s].find(e=>e.toLowerCase()===l);if(a)return a;let f=new Set,u=e=>{let t=p(e)?void 0:tW(e);t&&f.add(t.moduleId),e.forEachChild(u)};for(let e of n)u(e);let d=[...s].map(n=>{let i=0;for(let e of f)((r&&e.startsWith(`${r}:`)?e.slice(r.length+1):tt(e,t)??e)===(r&&n.startsWith(`${r}:`)?n.slice(r.length+1):n)||e===n)&&(i+=20);for(let r of t.get(n)??[])if(r.body&&j(r.body))for(let t of r.body.statements)g(t)&&t.isExportEquals&&(i+=1),W(t)&&S(t.name)&&(t.name.text===e&&(i+=2),t.name.text.toLowerCase()===l&&(i+=1));return[n,i]}),c=Math.max(...d.map(([,e])=>e)),m=d.filter(([,e])=>e===c);return 1===m.length?m[0][0]:null}function t2(e,t,n,r){let i=new Set;for(let l of tU(e)){let o=t1(l,n,e,t);if(!o||o===r)continue;let s=e5(o,t),a=t0(l,o,n);e.some(e=>v(e)&&!!e.importClause?.namedBindings&&(O(e.importClause.namedBindings)?e.importClause.namedBindings.name.text===l:e.importClause.namedBindings.elements.some(e=>e.name.text===l))&&T(e.moduleSpecifier)&&e.moduleSpecifier.text===s)||(e.unshift(Q(void 0,H(void 0,void 0,a?ei(G(l)):er([U(!1,void 0,G(l))])),eo(s,0),void 0)),i.add(o))}return i}function t6(e){let t=new Map,n=[],r=e=>{let t=e.importClause;if(!t||e.attributes||t.phaseModifier===q.DeferKeyword)return null;let n=e.moduleSpecifier;return T(n)?n.text:n.getText()},i=e=>e.phaseModifier===q.TypeKeyword,l=e=>e.namedBindings&&O(e.namedBindings)?e.namedBindings:void 0,o=e=>e.namedBindings&&N(e.namedBindings)?e.namedBindings:void 0,s=e=>S(e)||T(e)?e.text:"",a=e=>`${e.propertyName?s(e.propertyName):""}\0${s(e.name)}`,f=e=>e.isTypeOnly?e:U(!0,e.propertyName,e.name),u=e=>e.isTypeOnly?U(!1,e.propertyName,e.name):e,d=(e,t)=>{let n=e.importClause,r=t.importClause;if(!n||!r)return null;let d=l(n),c=l(r),p=o(n),m=o(r),h=i(n),g=i(r),y=h&&g;if(y&&(n.name||r.name)&&(p||m)||d&&m||c&&p||d&&c&&d.name.text!==c.name.text||n.name&&r.name&&n.name.text!==r.name.text||!y&&(h&&(n.name||d)||g&&(r.name||c)))return null;let x=(p?.elements??[]).map(e=>y?u(e):h?f(e):e),b=new Map,$=new Map;for(let e=0;e<x.length;e++){let t=x[e],n=a(t),r=t.propertyName?s(t.propertyName):s(t.name);b.set(n,e),$.set(t.name.text,r)}for(let e of m?.elements??[]){let t=e.propertyName?s(e.propertyName):s(e.name),n=$.get(e.name.text);if(n&&n!==t)return null;let r=y?u(e):g?f(e):e,i=a(r),l=b.get(i);void 0===l?(b.set(i,x.length),$.set(r.name.text,t),x.push(r)):y||!x[l].isTypeOnly||r.isTypeOnly||(x[l]=r)}let w=n.name??r.name,S=d??c,v=H(y?q.TypeKeyword:void 0,w,S??(x.length?er(x):void 0));return ep(e,e.modifiers,v,e.moduleSpecifier,e.attributes)};for(let l of e){if(!v(l)){n.push(l);continue}let e=l.importClause;for(let o of e&&i(e)&&e.name&&e.namedBindings?[ep(l,l.modifiers,H(q.TypeKeyword,e.name,void 0),l.moduleSpecifier,l.attributes),ep(l,l.modifiers,H(q.TypeKeyword,void 0,e.namedBindings),l.moduleSpecifier,l.attributes)]:[l]){let e=r(o),i=null===e?[]:t.get(e)??[],l=!1;for(let e of i){let t=d(e.statement,o);if(t){e.statement=t,n[e.index]=t,l=!0;break}}l||(null!==e&&(i.push({index:n.length,statement:o}),t.set(e,i)),n.push(o))}}return n}function t5(e){let t=new Map,n=e=>{let r=p(e)?void 0:tW(e);if(r){let n=t.get(r.moduleId)??new Set;for(let t of v(e)&&0===r.bindings.length?["*"]:r.bindings)n.add(t);t.set(r.moduleId,n)}e.forEachChild(n)};for(let t of e)n(t);return t}function t3(e){let t="modifiers"in e?e.modifiers:void 0;return!!t?.some(e=>e.kind===q.ExportKeyword)}function t4(e,t,n){if(!n)return e;let r=eR("bundle.d.ts",e),i=[],l=e=>{let o;if((v(e)||y(e))&&e.moduleSpecifier&&T(e.moduleSpecifier)?o=e.moduleSpecifier:k(e)&&$(e.moduleReference)&&T(e.moduleReference.expression)?o=e.moduleReference.expression:M(e)&&E(e.argument)&&T(e.argument.literal)&&(o=e.argument.literal),o){let e=to(o.text,t,n);e!==o.text&&i.push({start:o.getStart(r),end:o.end,text:JSON.stringify(e)})}e.forEachChild(l)};if(r.forEachChild(l),0===i.length)return e;i.sort((e,t)=>e.start-t.start);let o=[],s=0;for(let{start:t,end:n,text:r}of i)o.push(e.slice(s,t),r),s=n;return o.push(e.slice(s)),o.join("")}function t8(e,t,n){let r=e6();for(let i of e){let e=ti(i,t,r);if(!e||!tl(i,e,t))continue;let l=n?.get(i)??n?.get(e);tR(e,t,l?.size?l:void 0)}}function t9(e){let t=new Map;for(let n of e){let e=t.get(n.id);e?(n.priority??0)>(e.priority??0)?(e.content=n.content,e.ambient=n.ambient,e.priority=n.priority):(n.priority??0)===(e.priority??0)&&e.content!==n.content&&(e.content=t7(e.content,n.content,n.id),e.ambient=e.ambient&&n.ambient):t.set(n.id,n)}return t}function t7(e,t,n){if(e===t)return e;let r=eR(`ambient-base:${n}`,e),i=eR(`ambient-addition:${n}`,t),l=r.statements.find(e=>W(e)&&T(e.name)),o=i.statements.find(e=>W(e)&&T(e.name));if(l?.body&&j(l.body)&&o?.body&&j(o.body)&&T(l.name)&&T(o.name)&&l.name.text===o.name.text){let r=eC.printer,i=[],s=new Set,a=[...l.body.statements,...o.body.statements],f=tL(a);for(let[e,t]of a.entries()){let n=f[e],r=`${t.kind}\0${n}`;s.has(r)||(s.add(r),i.push(n))}let u=eR(`ambient-merged:${n}`,`declare module ${JSON.stringify(n)} {
2
+ ${i.join("\n")}
3
+ }`).statements.find(e=>W(e)&&T(e.name));if(!u?.body||!j(u.body))return`${e}
4
+ ${t}`;let d=tH(t6([...u.body.statements])),c=ey(u,u.modifiers,u.name,u.attributes,ee(d));return r.printNode(c)}return`${e}
5
+ ${t}`}function ne(e,t){return eC.printer.printNode(tQ(e,[...t]))}let nt=new Map;function nn(e){let t=`${e.id}\0${e.content}`,n=nt.get(t);if(n)return n;let r=eR(`ambient-deps:${e.id}`,e.content),i=t5(r.statements),l={source:r,references:i};return nt.set(t,l),l}let nr=new WeakMap;function ni(e,t,n,r,l,s,a,f,d,c){let p=new Set,m=[],h=new Set,g=new Set,x=(e,t,n={})=>{let r=ne(e,t);return m.push({id:e,content:r,...n}),r};return!function $(w){let S,M=u(w);if(p.has(M))return;if(p.add(M),/\.[cm]?js$/.test(M)){let e=M.replace(/\.([cm]?)js$/,".d.$1ts");eI(e)&&$(e),p.delete(M);return}if(/\.[cm]?tsx?$/.test(M)&&!/\.d\.[cm]?ts$/.test(M))try{S=t_(M)}catch{p.delete(M);return}else S=t_(M);if(!S)return void p.delete(M);let C=new Set,E=new Set,D=new Set,N={pkgName:e,pkgDir:t,entryFile:n,mainModuleId:l,scope:r,resolver:tS,localDependencies:C,externalDeps:E,externalSubpaths:D,usedBindings:c,isEntry:s,depScope:a,entryPkgs:f,scopedEntryPkgs:d},F=tD(M,N);N.currentModuleId=F;var I,O,_=S;let B=_.fileName,P=e=>{let t=tW(e);t&&((e,t)=>{if(tC.test(e))return;if(e.startsWith(".")||o(e)){let t=e.startsWith(".")?N.resolver(e,B):null;t&&N.localDependencies?.add(t);return}if(i(e))return;let n=N.pkgName?tv(e,N.pkgDir):null;if(n)return N.localDependencies?.add(n);if(eQ(e,B)){let t=eH(e,B).resolvedModule;t&&!t.isExternalLibraryImport&&N.localDependencies?.add(u(t.resolvedFileName));return}let r=e.startsWith("@")?e.split("/").slice(0,2).join("/"):e.split("/")[0];if(e===r&&N.externalDeps.add(r),e!==r&&N.externalSubpaths.add(e),N.usedBindings&&t){let n=N.usedBindings.get(e)||new Set;for(let e of t)n.add(e);N.usedBindings.set(e,n)}})(t.moduleId,t.bindings),v(e)||k(e)||y(e)&&e.moduleSpecifier||e.forEachChild(P)};for(let e of(_.forEachChild(P),_.typeReferenceDirectives))i(e.fileName)||N.externalDeps.add(e.fileName);for(let e of C)$(e);for(let e of S.referencedFiles){let t=tS(e.fileName,M);t&&(C.add(t),$(t))}for(let e of E)h.add(e);for(let e of D)g.add(e);let z=e=>{let t=t2(e,r||a||(s?"s":void 0),e6());for(let e of t)E.add(e),h.add(e);return t};if(!b(S)){let e=S.statements.filter(e=>W(e)&&T(e.name)),t=S.statements.filter(e=>!W(e)||!T(e.name)),n=e=>tN(e,N,M);for(let t of e){if(!t.body||!j(t.body))continue;let e=function(e,t){let n=ts(t.scope,t.depScope,t.isEntry);if(!n||i(e))return e;let r=to(e,e6(),n);return r!==e?r:e3(e)?e:e5(e,n)}(t.name.text,N);tV(e,t.body.statements,S);let r=(I=S,O=t.body.statements,tF(I,O.map(tI),n));z(r),x(e,t6(r),{ambient:!0,priority:2})}if(t.length>0){tV(F,t,S);let e=tF(S,t.map(tI),n);if(e.length>0){z(e);let t=e.filter(e=>v(e)||k(e)),n=tX(e.filter(e=>!v(e)&&!k(e)));x(F,[...t,n],{ambient:!0,priority:1})}}return}tV(F,S.statements,S);let A=ej.get(S);A||(A=new Map,ej.set(S,A));let R=JSON.stringify([F,e,t,l,void 0===l?void 0:n,r,s,a,[...E].sort(),[...D].sort()]),K=A.get(R);if(K){for(let e of K.namespaceModules)E.add(e),h.add(e);m.push({id:F,content:K.content});return}let L=function(e,t,n){let r=[],i=new Set;for(let t of e.statements){if(W(t)&&T(t.name)){t.body&&j(t.body)&&r.push(...t.body.statements.map(tI));continue}let e=tI(t);r.push(e),(v(e)||y(e))&&i.add(e)}return tF(e,r,e=>tN(e,t,n),{statements:i,currentModuleId:t.currentModuleId})}(S,N,M);if(0===L.length)return;let q=z(L),J=x(F,t6(L));A.set(R,{content:J,namespaceModules:[...q]})}(n),{blocks:m,externalDeps:h,externalSubpaths:g}}function nl(e,t){return{id:e,content:ne(e,[X(void 0,!1,void 0,eo(t,0))])}}let no=new Map;function ns(e){return new Map([...e].map(([e,t])=>[e,{...t}]))}function na(e,t){return!!t&&(t.has(e)||t.has(e.replace(/\.[cm]?js$/,"")))}function nf(e){if(!e)return null;let t=new Set([...e].filter(e=>e!==tB));return t.size>0?t:null}function nu(e,t,n,r,i,l,o,s,a,f,d,c){let p=ts(l,void 0,a),m=na(e,c)||s?.get(e)?.has("*")===!0,{blocks:h,externalDeps:x,externalSubpaths:b}=ni(e,n,t,l,e||o,a,l,f,d,s);e&&d?.has(e)&&function(e,t,n,r,i,l){let o=l?`${l}:${t}`:t;if(i===t&&e.some(e=>e.id===o))return;let s=tk(u(n),r),a=i??`${t}/${s}`,f=l?`${l}:${a}`:a;e.push(nl(o,f))}(h,e,t,n,e,l);let $=(e,t,n)=>{if(r.add(e),"package"===n)nu(e,t.entryFile,t.pkgDir,r,i,p,void 0,s,!1,f,d,c);else{let n=ni(tM(e),t.pkgDir,t.entryFile,p,void 0,!1,void 0,f,d,s);i.push(...n.blocks)}},w=(e,t)=>{if(!(r.has(e)||tj(e,f,d)))try{let o,a="package"===t?tx(e,n):tb(e,n);if(!a||"subpath"===t&&!t$(a))return void t8([e],p,s);let h="package"===t?e:tM(e),x=nf(s?.get(e)),b=na(e,c)||x?.has("*")===!0||m&&(o=s?.get(e),!!o?.has(tB)&&(o.add("*"),!0));if(!b&&x){r.add(e);let t=function e(t,n,r,i=new Set){let l=new Map,o=u(n),s=`${u(t)}\0${o}\0${[...r].sort().join(",")}`,a=0===i.size;if(a){let e=no.get(s);if(e)return ns(e)}if(i.has(o))return l;if(i.add(o),r.has("*"))return l.set("*",{file:n}),l;try{let o=ez(n);if(null===o)return l;let s=eR(n,o);for(let o of s.statements){if(y(o)){let s=o.moduleSpecifier;if(s&&!T(s))continue;if(o.exportClause&&D(o.exportClause))for(let e of o.exportClause.elements){if(!r.has(e.name.text))continue;let t=s?tS(s.text,n):n;t&&l.set(e.name.text,{file:t,originalName:e.propertyName?.text})}else if(!o.exportClause&&s){let o=tS(s.text,n);if(o)for(let[n,s]of e(t,o,r,i))l.has(n)||l.set(n,s)}continue}if(t3(o)&&!W(o)){let e=tZ(o);for(let t of e)r.has(t)&&l.set(t,{file:n});!R(o)&&tG(o)&&r.has("default")&&l.set("default",{file:n,originalName:e[0]})}else g(o)&&r.has("default")&&l.set("default",{file:n})}let a=s.statements.some(e=>g(e)&&e.isExportEquals),f=s.statements.some(e=>W(e)&&S(e.name));if(a&&f)for(let e of r)l.has(e)||l.set(e,{file:n})}catch{for(let e of r)l.set(e,{file:n})}return a&&no.set(s,ns(l)),l}(a.pkgDir,a.entryFile,x),n=new Set([...t.values()].map(e=>e.file)),o=new Map;for(let e of n){let{blocks:n,externalDeps:c,externalSubpaths:m}=ni(h,a.pkgDir,e,l,void 0,!1,void 0,f,d,s);for(let r of n)for(let[n,l]of(i.push(r),t))u(l.file)===u(e)&&o.set(n,{sourceModule:r.id,originalName:l.originalName});for(let e of c)if(!r.has(e))try{let t=tx(e,a.pkgDir);if(!t){r.add(e),t8([e],p,s);continue}$(e,t,"package")}catch{}for(let e of m)if(!r.has(e))try{let t=tb(e,a.pkgDir);t&&$(e,t,"subpath")}catch{}}if(o.size>0){let t=function(e,t,n){let r=[],i=n?`${n}:${e}`:e;for(let[e,n]of t){if(n.sourceModule===i)continue;let t=X(void 0,!1,en([Z(!1,n.originalName?G(n.originalName):void 0,G(e))]),eo(n.sourceModule,0));r.push(t)}return 0===r.length?{id:i,content:""}:{id:i,content:ne(i,r)}}(e,o,p);t.content&&i.push(t)}}else b&&$(e,a,t)}catch{}};for(let e of x)w(e,"package");for(let e of b)w(e,"subpath");i.push(...h)}function nd(e){let t=e.map(e=>e.content).join("\n\n");if(!/\bexport\s*\*\s+from\s*["']/.test(t))return t;let n=e.flatMap(e=>nn(e).source.statements),r=new Map,i=new Map;for(let e of n)if(W(e)&&T(e.name)){let t=e.name.text;i.set(t,e),e.body&&j(e.body)&&r.set(t,Array.from(e.body.statements))}let l=new Map,o=new Set,s=[];for(let e of n)if(W(e)&&T(e.name)){let t=e.name.text,n=r.get(t);if(!n||n.some(tG)){s.push(e);continue}let i=new Set;for(let e of n)if(y(e)&&!e.exportClause&&e.moduleSpecifier&&T(e.moduleSpecifier)){let t=e.moduleSpecifier.text;(function e(t){let n=l.get(t);if(void 0!==n)return n;if(o.has(t))return!1;o.add(t);let i=r.get(t);if(!i)return o.delete(t),l.set(t,!1),!1;let s=i.some(tG);for(let t of s?[]:i)if(y(t)&&!t.exportClause&&t.moduleSpecifier&&T(t.moduleSpecifier)&&e(t.moduleSpecifier.text)){s=!0;break}return o.delete(t),l.set(t,s),s})(t)&&i.add(t)}if(1!==i.size){s.push(e);continue}let[a]=i,f=X(void 0,!1,en([Z(!1,G("default"),G("default"))]),eo(a,0),void 0),u=ee(tH([...n,f])),d=ey(e,e.modifiers,e.name,e.attributes,u);s.push(d)}let a=[],f=[],u=[];for(let[e,t]of s.entries()){if(!W(t)||!T(t.name)||!t.body||!j(t.body)){f.push(t),u.push(e);continue}let n=tH(t.body.statements),r=i.get(t.name.text),l=r?.body&&j(r.body)?r.body.statements:void 0;if(r&&l&&n.length===l.length&&n.every((e,t)=>e===l[t])){a[e]=r.getText(r.getSourceFile());continue}f.push(ey(t,t.modifiers,t.name,t.attributes,ee(n))),u.push(e)}for(let[e,t]of tL(f).entries())a[u[e]]=t;return a.join("\n")}function nc(e){let t=[],n=0,r=e.length,i=!1;for(;n<r;){let l=e[n];if("/"===l&&n+1<r&&"/"===e[n+1]){for(i||t.push(" "),n+=2;n<r&&"\n"!==e[n];)n++;i=!0;continue}if("/"===l&&n+1<r&&"*"===e[n+1]){let l=n,o=n+2<r&&"*"===e[n+2],s=e.indexOf("*/",n+2);if(n=-1===s?r:s+2,!o){i||t.push(" "),i=!0;continue}let a=function(e){let t=e.slice(3,-2).split("\n").map(e=>{let t=e.trim();return t.startsWith("*")?t.slice(1).trim():t}),n=t.findIndex(e=>e.startsWith("@example")),r=t.some(e=>/^\|[\s:-|]+\|$/.test(e.trim()));return -1!==n||r?t.filter((e,t,n)=>""!==e||0!==t&&""!==n[t-1]).join("\n").trim():t.join(" ").replace(/\s+/g," ").trim()}(e.slice(l,n));if(a)if(a.includes("\n")){for(let e of(t.push("\n/**\n"),a.split("\n")))t.push(" *",e?` ${e}`:"","\n");t.push(" */")}else t.push("\n/** ",a," */");i=!1;continue}if('"'===l||"'"===l||"`"===l){for(t.push(l),n++;n<r;){let i=e[n];if("\\"===i&&n+1<r){t.push(i,e[n+1]),n+=2;continue}if(t.push(i),n++,i===l)break}i=!1;continue}if(" "===l||" "===l||"\n"===l||"\r"===l){i||(t.push(" "),i=!0),n++;continue}t.push(l),i=!1,n++}return t.join("").trim()}function np(){eU?.dispose(),eV?.dispose();let e=[...eE];for(let t=0;t<e.length;t+=256)eC.batch(...e.slice(t,t+256).map(e=>e.dispose.gen()));eE.clear(),eW.clear(),eD.clear(),eN.clear(),eF=null,e_.clear(),eB.clear(),eT.clear(),eZ.clear(),tw.clear(),th.clear(),tg.clear(),tn.clear(),eY.clear(),e0.clear(),e1.clear(),no.clear(),tO.clear(),eO.clear(),tT.clear(),tP.clear(),nt.clear(),eL=null,eq=null,eV=null,eU=null}export async function bundleDts(e,t,n=!0){let r;np();let l=(Array.isArray(e)?e:[e]).flatMap(e=>"string"==typeof e?[{input:e}]:Object.entries(e).map(([e,t])=>({input:t,name:e}))),p=new Set,m=[],h=[],x=new Map,$=new Set,w=new Set,C=new Set;for(let e of l){var E;let{input:t,name:n}=e;if(void 0!==n||o(E=t)||E.startsWith("./")||E.startsWith("../"))e.localEntry=function(e){let t=u(e),n=c.cwd();if(/\.d\.[cm]?ts$/.test(t)&&eI(t))return{entryFile:t,pkgDir:n};let r=t.match(/^(.*)\.[cm]?[tj]sx?$/),i=r?.[1]??t,l=tf.map(e=>i+e).find(eI);if(r)return(l??=/\.[cm]?tsx?$/.test(t)&&eI(t)?t:void 0)?{entryFile:l,pkgDir:n}:null;if(l??=tf.map(e=>s(t,`index${e}`)).find(eI))return{entryFile:l,pkgDir:n};throw Error(`Cannot find local file: "${e}"`)}(t),e.localEntry&&function e(t,n,r,l=new Set){let s=u(t);if(l.has(s))return;l.add(s);let c=1===l.size,p=t_(s);if(!p)return;let m=f(n,s).split(d).join(a.sep),h=/^(?:es|lib|dist)(?:\/|$)/.test(m)?n:void 0;for(let t of p.statements){!function e(t,n,r){let l=M(t)?tW(t):void 0;if(l){let{moduleId:e,bindings:t}=l;if(!e.startsWith(".")&&!o(e)&&!i(e)&&!tC.test(e)&&!(r&&tv(e,r))){let r=n.get(e)??new Set;for(let e of t)r.add(e);n.set(e,r)}}t.forEachChild(t=>e(t,n,r))}(t,r,h);let a=tW(t);if(!a)continue;let f=a.moduleId,d=k(t),p=null,m=!1;if(!d){let t=h?tv(f,n):null;if(t){e(t,n,r,l);continue}if(m=eQ(f,s),f.startsWith("."))p=tS(f,s);else if(m){let{resolvedModule:e}=eH(f,s);e&&!e.isExternalLibraryImport&&(p=u(e.resolvedFileName))}}if(!f.startsWith(".")&&!o(f)&&!i(f)&&!tC.test(f)&&!m){let e=r.get(f)??new Set;for(let t of a.bindings)e.add(c&&t===tB?"*":t);r.set(f,e)}p&&e(p,n,r,l)}}(e.localEntry.entryFile,e.localEntry.pkgDir,x),n&&!n.startsWith(".")&&(w.add(n),w.add(tM(n)));else{let e=t.replace(/\.[cm]?js$/,"");$.add(e),w.add(e),C.add(e),w.add(tM(t))}}for(let e of $){let t=x.get(e)||new Set;t.add("*"),x.set(e,t)}for(let{input:e,name:n,localEntry:r}of l){let i,l=void 0===r,o=l?e:u(e);if(p.has(o))continue;p.add(o);let s=r;if(l){let n=tb(e)??tx(e);if(!(s=t$(n)?n:null)){t8([e],t,x);continue}}if(s){if(void 0!==n){let e=tk(u(s.entryFile),s.pkgDir);i=t?`${t}:${e}`:e,h.push({name:n,moduleId:i})}nu(l?e:"",s.entryFile,s.pkgDir,p,m,t,i,x,l,w,C,$)}}let N=new Map;for(let e=0;e<32&&(!function(e,t){let n=e6(),r=new Set;for(let i of e){let{source:e,references:l}=nn(i);if(!r.has(e)){for(let[i,o]of(r.add(e),l)){let e=tK(i,t,n);e&&tl(i,e,t)&&tR(e,t,o)}if(/\b(?:[A-Z][A-Za-z0-9_$]*)\s*\./.test(i.content))for(let r of tU(e.statements)){let i=t1(r,n,e.statements,t);i&&tl(i,i,t)&&tR(i,t,void 0)}}}let i=[...tT.keys()],l=new Set(i),o=new Map,s=new Map,a=new Map,f=function(e,t){let n=new Map;for(let e of t)for(let t of tZ(e)){let r=n.get(t)??[];r.push(e),n.set(t,r)}if(0===n.size)return[];let r=new Set,i=new Set;for(let t of e){let e=nn(t).source;if(i.has(e))continue;i.add(e);let l=e=>{S(e)&&n.has(e.text)&&r.add(e.text),e.forEachChild(l)};e.forEachChild(l)}let l=new Set;for(let e of r)for(let t of n.get(e)??[])l.add(t);let o=[...l];for(let e of o){let t=e=>{if(S(e))for(let t of n.get(e.text)??[])l.has(t)||(l.add(t),o.push(t));e.forEachChild(t)};t(e)}return o}(e,function(){let e=c.cwd(),t=e1.get(e);if(t)return t;let n=[];for(let e of e2()){let t=ez(e);if(null===t)continue;let r=eR(e,t);if(!b(r))for(let e of r.statements)W(e)&&T(e.name)||n.push(e)}return e1.set(e,n),n}());if(f.length>0){let r=[],i=f.map(e=>tI(e)),l=new Set(f.flatMap(tZ));for(let e of tU(i)){if(l.has(e))continue;let o=t1(e,n,i,t);if(!o)continue;let s=e5(o,t),a=t0(e,o,n);r.push(Q(void 0,H(void 0,void 0,a?ei(G(e)):er([U(!1,void 0,G(e))])),eo(s,0))),tR(o,t,void 0)}let o=tX(i),s=e5("__ambient_globals__",t),a=eC.printer;-1===e.findIndex(e=>e.id===s)&&e.push({id:s,content:a.printNode(tQ(s,[...r,o])),ambient:!0,priority:1})}for(let t=0;t<e.length;t++)s.set(e[t].id,t);for(let t=0;t<i.length;t++){let r=i[t];l.delete(r);let f=tT.get(r);if(!f||!tl(f.moduleId,f.moduleId,f.scope))continue;let u=f.bindings,d=o.get(r);if(o.has(r)&&tA(d,u))continue;let c=n.get(f.moduleId);if(!c?.length)continue;let p=function(e,t,n,r){let i=t.flatMap(e=>e.body&&j(e.body)?[...e.body.statements]:[]);if(!r||r.has("*")||!i.some(e=>y(e))||i.some(e=>!v(e)&&!y(e)))return i;let l=function e(t,n,r=new Set){if(r.has(t))return new Map;r.add(t);let i=new Map;for(let l of n.get(t)??[])if(l.body&&j(l.body))for(let o of l.body.statements){if(y(o)&&o.moduleSpecifier&&T(o.moduleSpecifier)){let t=o.moduleSpecifier.text;if(o.exportClause&&D(o.exportClause))for(let e of o.exportClause.elements)i.set(e.name.text,t);else if(!o.exportClause&&n.has(t))for(let[l]of e(t,n,new Set(r)))i.has(l)||i.set(l,t);continue}if(y(o)&&!o.moduleSpecifier&&o.exportClause&&D(o.exportClause)){for(let e of o.exportClause.elements)i.set(e.name.text,t);continue}if(t3(o)&&!W(o))for(let e of tZ(o))i.set(e,t);g(o)&&o.isExportEquals&&i.set("default",t)}return i}(e,n);if(r.has("default")&&l.has("default")||![...r].some(e=>l.has(e)))return i;let o=[];for(let e of i){if(!y(e)){o.push(e);continue}if(e.moduleSpecifier&&!T(e.moduleSpecifier))continue;if(e.exportClause&&D(e.exportClause)){let t=e.exportClause.elements.filter(e=>r.has(e.name.text));t.length>0&&o.push(eu(e,e.modifiers,en(t),e.moduleSpecifier,e.attributes));continue}if(!e.moduleSpecifier){o.push(e);continue}let t=e.moduleSpecifier.text,n=[...r].filter(e=>l.get(e)===t);n.length>0&&o.push(eu(e,e.modifiers,en(n.map(e=>Z(!1,G(e),G(e)))),e.moduleSpecifier,e.attributes))}return o}(f.moduleId,c,n,u),m=e5(f.moduleId,f.scope);for(let e of c)e.body&&j(e.body)&&tV(m,e.body.statements,e.getSourceFile());for(let e of t2(p,f.scope,n)){let t=tR(e,f.scope,void 0);o.has(t.key)&&!t.changed||l.has(t.key)||(l.add(t.key),i.push(t.key))}let h=t6(p);if(0===h.length){o.set(r,u);continue}let x=JSON.stringify([r,u?[...u].sort():null]),b=tP.get(x);void 0===b&&(b=t4(ne(m,h),n,f.scope),tP.set(x,b));let $=s.get(m);if(void 0===$)s.set(m,e.length),e.push({id:m,content:b,ambient:!0});else{let t=e[$];if(t.ambient)t.content=b;else{let e=a.get(m)??t.content;a.set(m,e),t.content=t7(e,b,m)}}for(let[e,t]of(o.set(r,u),t5(h))){let r=tK(e,f.scope,n);if(!r||!tl(e,r,f.scope))continue;let s=tR(r,f.scope,t);o.has(s.key)&&!s.changed||l.has(s.key)||(l.add(s.key),i.push(s.key))}}tT.clear()}(m,t),function(e,t,n,r,l,s,a=new Map,f){let u=e6(),d=e.map(e=>e.id),c=new Map;for(let n of e)if(a.get(n.id)!==n.content)for(let[e,r]of(a.set(n.id,n.content),nn(n).references)){let n=function(e,t,n){let r=e;return t&&r.startsWith(`${t}:`)&&(r=r.slice(t.length+1)),tt(r,n)??r}(e,t,u);if(!n||n.startsWith(".")||o(n)||i(n)||function(e,t){let n=nr.get(t);return n||(n={exact:new Set(t),patterns:t.filter(e=>e.includes("*"))},nr.set(t,n)),n.exact.has(e)||n.patterns.some(t=>e7(t,e))}(e,d)||tj(n,l,s))continue;let a=ti(n,t,u);if(a&&tl(n,a,t)||e3(n)&&e9(n,u))continue;let f=c.get(n)??new Set;for(let e of r)f.add(e);c.set(n,f)}let p=!1;for(let[i,o]of c){if(n.has(i))continue;let a=na(i,f),u=nf(o);if(!a&&!u)continue;let d=(i.includes("/")&&!i.startsWith("@")?-1!==i.indexOf("/"):i.startsWith("@")&&i.split("/").length>2)?tb(i):tx(i);if(!d||!t$(d))continue;n.add(i);let c=r.get(i)??new Set;for(let e of u??o)c.add(e);r.set(i,c),nu(i,d.entryFile,d.pkgDir,n,e,t,void 0,r,!1,l,s,f),p=!0}return p}(m,t,p,x,w,C,N,$));e++);let F=e6(),O=t9(m);m.length=0,m.push(...O.values());let _=new Set,B=[];for(let{name:e,moduleId:t}of h){let n=O.get(t);if(n){!function(e,t){let n=eW.get(e);n&&!eW.has(t)&&eW.set(t,new Map([...n].map(([e,t])=>[e,t.map(e=>[...e])])))}(t,e);let r=n.content.replace(RegExp(`declare module ["']${t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}["']`),`declare module "${e}"`);_.add(t),B.push({id:e,content:r,ambient:n.ambient})}else m.push(nl(e,t))}if(_.size>0){let e=m.filter(e=>!_.has(e.id));m.length=0,m.push(...e,...B)}let P=[...t9(m).values()];!function(e,t){let n=new Map,r=[];for(let t of e){let e=nn(t).source,i=e.statements.find(e=>W(e)&&T(e.name));if(!i?.body||!j(i.body))continue;let l=n.get(i.name.text)??[];l.push(i),n.set(i.name.text,l),r.push({block:t,sourceFile:e,declaration:i})}if(0===r.length)return;let i=eC.printer;for(let{block:e,declaration:l}of r){if(!l.body||!j(l.body))continue;let r=[...l.body.statements],o=r.filter(e=>!I(e)),s=[...o];if(0===t2(s,t,n,l.name.text).size&&o.length===r.length)continue;let a=t6(s),f=ey(l,l.modifiers,l.name,l.attributes,ee(a));e.content=i.printNode(f)}}(P,t);let z=t?t4(nd(P),F,t):nd(P),A=function(e,t){if(0===eW.size)return e;let n=eC.createSourceFile("__bundle_comments__.d.ts",e);try{let r=[];for(let i of n.sourceFile.statements){if(!W(i)||!T(i.name))continue;let l=eW.get(i.name.text);if(!l||!i.body||!j(i.body))continue;let o=new Map([...l].map(([e,t])=>[e,[...t]])),s=(i,l)=>{let a=tq.has(i.kind),f=a?tJ(i,n.sourceFile,l):l;if(a){let l=o.get(f)?.shift(),s=t?l?.filter(e=>e.startsWith("/**")):l;if(s?.length){let l=i.getStart(n.sourceFile),o=ew(e,i.pos)??[],a=s.filter(t=>!o.some(n=>e.slice(n.pos,n.end)===t));if(a.length){let n=e.lastIndexOf("\n",l-1)+1,i=e.slice(n,l).match(/^\s*/)?.[0]??"",o=t?`${a.map(nc).join(" ")} `:`${a.map(e=>e.split("\n").map((e,t)=>{let n=e.trimStart();return(t?i+(n?" ":""):"")+n}).join("\n")).join(`
6
+ ${i}`)}
7
+ ${i}`;r.push({position:l,text:o})}}}i.forEachChild(e=>s(e,f))};for(let e of i.body.statements)s(e,"")}if(0===r.length)return e;let i=r.sort((e,t)=>e.position-t.position),l=[],o=0;for(let{position:t,text:n}of i)l.push(e.slice(o,t),n),o=t;return l.push(e.slice(o)),l.join("")}finally{n.dispose()}}((n?(r=eR("bundle.d.ts",z)).statements.filter(W).map(e=>e.getText(r)).map(nc).join("\n"):z).replace(/\bmodule global(?=\s*\{)/g,"global"),n);return np(),A}
@@ -1,4 +1,4 @@
1
- import { type EnumDeclaration, type InterfaceDeclaration } from 'typescript';
1
+ import { type EnumDeclaration, type InterfaceDeclaration } from 'typescript/ast';
2
2
  export declare function generateInterfaceDocumentation(node: InterfaceDeclaration, basename: string, slicePrefix: string): string;
3
3
  export declare function generateEnumDocumentation(node: EnumDeclaration, slicePrefix: string): string;
4
4
  export declare function declToMd(content: string, filepath: string, basename: string, slicePrefix: string): string;
@@ -1,5 +1,5 @@
1
- import{dirname as e}from"node:path";import t from"typescript";import{getGitInfo as n}from"./git.mjs";let r=n(),l=t.ScriptKind,o=t.ScriptTarget,i=t.SyntaxKind,a=t.createSourceFile,c=t.forEachChild,s=t.getLeadingCommentRanges,u=t.isInterfaceDeclaration,f=t.isQuestionToken,m=t.isPropertySignature,p=t.isFunctionTypeNode,g=t.isUnionTypeNode,d=t.isMethodSignature,$={};function h(e){let t=s(e.getSourceFile().text,e.pos);if(t){let n=e.getSourceFile().text.slice(t[0].pos,t[0].end).match(/\/\*\*([\s\S]*?)\*\//);if(n)return n[1].replaceAll(/^\s*\* ?/gm,"").replace(/\s+$/,"").trim()}}function b(e){if(!e)return;let t=e.match(/@since\s+([^\n]+)/);return t?t[1].trim():void 0}function y(e){let t;if(!e)return;let n=/@author\s+([^<\n]+?)(?:\s*<([^>]+)>)?(?=\s*(?:\n|$))/g,l=[];for(;null!==(t=n.exec(e));){let e,n=t[1].trim(),o=t[2]?.trim();if(o){let t=/^[\w.-]+@[\w-]+(\.[\w-]+)+$/.test(o),n=/^https?:\/\/.+/i.test(o);e=t?`mailto:${o}`:n?o:`${r?.domain}/${o}`}else/^[a-z\d](?:[a-z\d-]{0,38})$/i.test(n)&&(e=`${r?.domain}/${n}`);let i=e?`[![${n}-alt](${r?.type==="github"?`https://avatars.githubusercontent.com/${e.split("/").pop()}?s=48`:`https://www.gravatar.com/avatar/${n}?s=48&d=identicon`})${n}](${e})`:n;l.includes(i)||l.push(i)}return l.join(" ")}function x(e){if(!e)return;let t=e.match(/@ignore\s+([^\n]+)/);return t?t[1].trim():void 0}let S=/(?<!['"])(unknown|any|void|bigint|object|undefined|null|boolean|number|string|symbol)(?!['"])/g;function A(e,t,n){if(!t)return;let r=t.replaceAll(/\b([A-Z][a-zA-Z0-9]*)\b/g,t=>{if($[t]){let r=`/${[e,$[t]].join("/").split("/").filter(Boolean).join("/")}`;return n?`[\\color{#009688}{${t}}](${r})`:`[${t}](${r})`}return n?`\\color{#009688}{${t}}`:t});return n&&(r=r.replaceAll(S,e=>`\\color{#009688}{${e}}`)),r}function j(e){if(e)return(function(e){let t;if(!e)return;let n=[];for(;t=/\\color{([^|}]*)\|?([^|}]*)\|?([^|}]*)\|?([^}]*)}{([^}]*)}/g.exec(e);)n.push(t[0]);return e.replaceAll(/[{}[\]()=>]|keyof|typeof|true|false/g,e=>n.some(t=>t.includes(e))?e:`\\color{#569cd6}{${e}}`)})(e)?.replaceAll(/^\s*\|\s*|\s*\|\s*$/gm,"").replaceAll(/\n/g,"<br/>").replaceAll(/\*/g,"\\*").replaceAll(/\|/g,"\\|").replaceAll(/(['"])((?:(?!\1).)*)\1/g,"\\color{#ce9178}{$1$2$1}")}function T(e){if(e)return e.replaceAll(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/g,"").replaceAll(/^@[a-z].+/gm,"").replaceAll(/(\n\s+)+/g,"<br />").replaceAll(/\n/g,"<br />").replaceAll(/(<br \/>)$/g,"")}export function generateInterfaceDocumentation(n,r,l){let o=n.name.text;Object.assign($,{[n.name.text]:e(n.getSourceFile().fileName).replace(l,"")});let a=h(n),c=b(a),s=T(a),u=x(a)?.split("|")||[],S=u.includes("comment"),v=u.includes("initial"),k=u.includes("optional"),w=u.includes("version"),B=u.includes("author"),z=s?`\\color{|4||0.45}{${o}}`:o,D=(function(e){let n=[];if(e.heritageClauses){for(let r of e.heritageClauses)if(r.token===t.SyntaxKind.ExtendsKeyword)for(let e of r.types)n.push(e.getText())}return n})(n)?.map(e=>`<n-tag color="#4c81db" css=".tag{gap:0px;}">${A(r,j(e))}</n-tag>`),M=[s,z,c&&`\\color{#52c11b|1||0.9}{${c}}`,D.length>0&&`<sub>\`extends\`</sub> ${D.join(" ")}`].filter(Boolean).join(" "),E=`## ${M}`,F=n.members.filter(e=>m(e)&&e.type?.kind!==i.NeverKeyword||d(e)),N=[];if(F.length>0){for(let e=0,t=F.length;e<t;e++){let t=F[e],n=A(r,j(d(t)?`(${t.parameters.map(e=>`${e.name.getText()}: ${e.type?.getText()||"any"}`).join(", ")}): ${t.type?.getText()||"any"}`:t.type?.getText()||"any"),!0),l=h(t),o=j(t.name.getText());o&&!o.startsWith("\\color")&&(d(t)||function(e){if(e.type){if(!g(e.type))return p(e.type);else for(let t of e.type.types)if(p(t))return!0}return!1}(t)||n?.includes("=>")?o=`\\color{#f9a913}{${o}}`:/^["'](.+)["']$/.test(o)||(o=`\\color{#4c81db}{${o}}`));let i=t.questionToken&&f(t.questionToken);N.push([o,!k&&`\\color{${i?"#f9a913":"#52c11b"}\\|\\|\\|0.9}{${i?"✘":"✔"}}`,!S&&j(T(l)),n,!v&&j(function(e){if(!e)return;let t=e.match(/@default\s+([^\n]+)/);return t?t[1].trim():void 0}(l)),!w&&j(b(l)),!B&&(y(l)||y(a)),function(e){if(!e)return;let t=e.match(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/);return t?t[1].trim():void 0}(l)])}let e=!1,t=!1,n=!1,l=!1;for(let r=0,o=N.length;r<o;r++){let o=N[r];!S&&o[2]&&(l=!0),!v&&o[4]&&(n=!0),!w&&o[5]&&(t=!0),!B&&o[6]&&(e=!0)}E+="\n";let o=["属性",!k&&"必要",l&&"说明","类型",n&&"默认值",t&&"版本",e&&"作者"].filter(Boolean).join("|");E+=`|${o}|`;let i=[":-",!k&&":-",l&&":-",":-",n&&":-",t&&":-",e&&":-"].filter(Boolean);E+="\n";let c=i.join("|");E+=`|${c}|`;for(let r=0,o=N.length;r<o;r++){let o=N[r];E+="\n";let i=[(o[7]?`<n-popover arrow="true" trigger="click" encode-uri="true" content=${JSON.stringify(encodeURIComponent(`<n-md code-classic="false" css=.n-md-body{margin-bottom:0;padding:0.5rem;background-color:transparent;backdrop-filter:none;box-shadow:none;}>${o[7]}</n-md>`))}><n-button size="small" type="primary" circle="true" style="margin-right:8px;">?</n-button></n-popover>`:"")+(o[0]||"-"),!k&&(o[1]||"-"),l&&(o[2]||"-"),o[3]||"-",n&&(o[4]||"-"),t&&(o[5]||"-"),e&&(o[6]||"-")].filter(Boolean).join("|");E+=`|${i}|`}E+="\n"}return E+"\n"}export function generateEnumDocumentation(n,r){let l=n.name.text,o=h(n),i=T(o),a=b(o);Object.assign($,{[n.name.text]:e(n.getSourceFile().fileName).replace(r,"")});let c=i?`\\color{|4||0.45}{${l}}`:l,s=[i,c,a&&`\\color{#52c11b|1||0.9}{${a}}`].filter(Boolean).join(" "),u=x(o)?.split("|")||[],f=u.includes("comment"),m=u.includes("version"),p=u.includes("author"),g=`## ${s}`;if(n.members.length>0){let e=[];for(let r=0,l=n.members.length;r<l;r++){let l=n.members[r],i=j(l.name.getText()),a=h(l),c=j(function(e){let n=e.initializer;if(n&&t.isStringLiteral(n))return` '${n.text}'`}(l)),s=j(b(a)),u=j(T(a));!i||i.startsWith("\\color")||/^["'](.+)["']$/.test(i)||(i=`\\color{#4c81db}{${i}}`),e.push([i,!f&&u,c,!m&&s,!p&&(y(a)||y(o))])}let r=!1,l=!1,i=!1;for(let t=0,n=e.length;t<n;t++){let n=e[t];!f&&n[1]&&(i=!0),!m&&n[3]&&(l=!0),!p&&n[4]&&(r=!0)}g+="\n";let a=["属性",i&&"说明","值",l&&"版本",r&&"作者"].filter(Boolean).join("|");g+=`|${a}|`;let c=[":-",i&&":-",":-",l&&":-",r&&":-"].filter(Boolean);g+="\n";let s=c.join("|");g+=`|${s}|`;for(let t=0,n=e.length;t<n;t++){let n=e[t];g+="\n";let o=[n[0]||"-",i&&(n[1]||"-"),n[2]||"-",l&&(n[3]||"-"),r&&(n[4]||"-")].filter(Boolean).join("|");g+=`|${o}|`}}return g+"\n\n"}export function declToMd(e,n,r,i){let s=a(n,e,o.Latest,!0,l.TS),f="";return c(s,function n(l){if(t.isModuleDeclaration(l)&&l.name&&t.isStringLiteral(l.name)){let n=l.name.text,o=l.body;for(;o&&t.isModuleDeclaration(o);)o=o.body;if(o&&t.isModuleBlock(o)){let t=e.slice(o.getStart(s)+1,o.getEnd()-1);f+=`# Module \`${n}\``,f+=`
2
- `,f+=`
3
- `,f+=declToMd(t,n,r,i),f+=`
4
- `,f+=`
5
- `}}else u(l)?f+=generateInterfaceDocumentation(l,r,i):t.isEnumDeclaration(l)&&(f+=generateEnumDocumentation(l,i));c(l,n)}),f}
1
+ import{dirname as e}from"node:path";import{getLeadingCommentRanges as t,isEnumDeclaration as n,isFunctionTypeNode as r,isInterfaceDeclaration as l,isMethodSignatureDeclaration as o,isModuleBlock as i,isModuleDeclaration as a,isPropertySignatureDeclaration as c,isQuestionToken as s,isStringLiteral as u,isUnionTypeNode as f,ScriptKind as p,SyntaxKind as m}from"typescript/ast";import{API as g}from"typescript/sync";import{getGitInfo as $}from"./git.mjs";let d=$(),h={},b=new WeakMap;function y(e){let t=e.getSourceFile();return b.get(t)??t.fileName}function x(e){let n=t(e.getSourceFile().text,e.pos);if(n){let t=e.getSourceFile().text.slice(n[0].pos,n[0].end).match(/\/\*\*([\s\S]*?)\*\//);if(t)return t[1].replaceAll(/^\s*\* ?/gm,"").replace(/\s+$/,"").trim()}}function A(e){if(!e)return;let t=e.match(/@since\s+([^\n]+)/);return t?t[1].trim():void 0}function j(e){let t;if(!e)return;let n=/@author\s+([^<\n]+?)(?:\s*<([^>]+)>)?(?=\s*(?:\n|$))/g,r=[];for(;null!==(t=n.exec(e));){let e,n=t[1].trim(),l=t[2]?.trim();if(l){let t=/^[\w.-]+@[\w-]+(\.[\w-]+)+$/.test(l),n=/^https?:\/\/.+/i.test(l);e=t?`mailto:${l}`:n?l:`${d?.domain}/${l}`}else/^[a-z\d](?:[a-z\d-]{0,38})$/i.test(n)&&(e=`${d?.domain}/${n}`);let o=e?`[![${n}-alt](${d?.type==="github"?`https://avatars.githubusercontent.com/${e.split("/").pop()}?s=48`:`https://www.gravatar.com/avatar/${n}?s=48&d=identicon`})${n}](${e})`:n;r.includes(o)||r.push(o)}return r.join(" ")}function v(e){if(!e)return;let t=e.match(/@ignore\s+([^\n]+)/);return t?t[1].trim():void 0}let w=/(?<!['"])(unknown|any|void|bigint|object|undefined|null|boolean|number|string|symbol)(?!['"])/g;function T(e,t,n){if(!t)return;let r=t.replaceAll(/\b([A-Z][a-zA-Z0-9]*)\b/g,t=>{if(h[t]){let r=`/${[e,h[t]].join("/").split("/").filter(Boolean).join("/")}`;return n?`[\\color{#009688}{${t}}](${r})`:`[${t}](${r})`}return n?`\\color{#009688}{${t}}`:t});return n&&(r=r.replaceAll(w,e=>`\\color{#009688}{${e}}`)),r}function k(e){if(e)return(function(e){let t;if(!e)return;let n=[];for(;t=/\\color{([^|}]*)\|?([^|}]*)\|?([^|}]*)\|?([^}]*)}{([^}]*)}/g.exec(e);)n.push(t[0]);return e.replaceAll(/[{}[\]()=>]|keyof|typeof|true|false/g,e=>n.some(t=>t.includes(e))?e:`\\color{#569cd6}{${e}}`)})(e)?.replaceAll(/^\s*\|\s*|\s*\|\s*$/gm,"").replaceAll(/\n/g,"<br/>").replaceAll(/\*/g,"\\*").replaceAll(/\|/g,"\\|").replaceAll(/(['"])((?:(?!\1).)*)\1/g,"\\color{#ce9178}{$1$2$1}")}function S(e){if(e)return e.replaceAll(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/g,"").replaceAll(/^@[a-z].+/gm,"").replaceAll(/(\n\s+)+/g,"<br />").replaceAll(/\n/g,"<br />").replaceAll(/(<br \/>)$/g,"")}export function generateInterfaceDocumentation(t,n,l){let i=t.name.text;Object.assign(h,{[t.name.text]:e(y(t)).replace(l,"")});let a=x(t),u=A(a),p=S(a),g=v(a)?.split("|")||[],$=g.includes("comment"),d=g.includes("initial"),b=g.includes("optional"),w=g.includes("version"),B=g.includes("author"),z=p?`\\color{|4||0.45}{${i}}`:i,E=(function(e){let t=[];if(e.heritageClauses){for(let n of e.heritageClauses)if(n.token===m.ExtendsKeyword)for(let e of n.types)t.push(e.getText())}return t})(t)?.map(e=>`<n-tag color="#4c81db" css=".tag{gap:0px;}">${T(n,k(e))}</n-tag>`),C=[p,z,u&&`\\color{#52c11b|1||0.9}{${u}}`,E.length>0&&`<sub>\`extends\`</sub> ${E.join(" ")}`].filter(Boolean).join(" "),F=`## ${C}`,D=t.members.filter(e=>c(e)&&e.type?.kind!==m.NeverKeyword||o(e)),Z=[];if(D.length>0){for(let e=0,t=D.length;e<t;e++){let t=D[e],l=T(n,k(o(t)?`(${t.parameters.map(e=>`${e.name.getText()}: ${e.type?.getText()||"any"}`).join(", ")}): ${t.type?.getText()||"any"}`:t.type?.getText()||"any"),!0),i=x(t),c=k(t.name.getText());c&&!c.startsWith("\\color")&&(o(t)||function(e){if(e.type){if(!f(e.type))return r(e.type);else for(let t of e.type.types)if(r(t))return!0}return!1}(t)||l?.includes("=>")?c=`\\color{#f9a913}{${c}}`:/^["'](.+)["']$/.test(c)||(c=`\\color{#4c81db}{${c}}`));let u=t.postfixToken&&s(t.postfixToken);Z.push([c,!b&&`\\color{${u?"#f9a913":"#52c11b"}\\|\\|\\|0.9}{${u?"✘":"✔"}}`,!$&&k(S(i)),l,!d&&k(function(e){if(!e)return;let t=e.match(/@default\s+([^\n]+)/);return t?t[1].trim():void 0}(i)),!w&&k(A(i)),!B&&(j(i)||j(a)),function(e){if(!e)return;let t=e.match(/@example\s*([\s\S]*?)(?=@[a-zA-Z]|\n*$)/);return t?t[1].trim():void 0}(i)])}let e=!1,t=!1,l=!1,i=!1;for(let n=0,r=Z.length;n<r;n++){let r=Z[n];!$&&r[2]&&(i=!0),!d&&r[4]&&(l=!0),!w&&r[5]&&(t=!0),!B&&r[6]&&(e=!0)}F+="\n";let c=["属性",!b&&"必要",i&&"说明","类型",l&&"默认值",t&&"版本",e&&"作者"].filter(Boolean).join("|");F+=`|${c}|`;let u=[":-",!b&&":-",i&&":-",":-",l&&":-",t&&":-",e&&":-"].filter(Boolean);F+="\n";let p=u.join("|");F+=`|${p}|`;for(let n=0,r=Z.length;n<r;n++){let r=Z[n];F+="\n";let o=[(r[7]?`<n-popover arrow="true" trigger="click" encode-uri="true" content=${JSON.stringify(encodeURIComponent(`<n-md code-classic="false" css=.n-md-body{margin-bottom:0;padding:0.5rem;background-color:transparent;backdrop-filter:none;box-shadow:none;}>${r[7]}</n-md>`))}><n-button size="small" type="primary" circle="true" style="margin-right:8px;">?</n-button></n-popover>`:"")+(r[0]||"-"),!b&&(r[1]||"-"),i&&(r[2]||"-"),r[3]||"-",l&&(r[4]||"-"),t&&(r[5]||"-"),e&&(r[6]||"-")].filter(Boolean).join("|");F+=`|${o}|`}F+="\n"}return F+"\n"}export function generateEnumDocumentation(t,n){let r=t.name.text,l=x(t),o=S(l),i=A(l);Object.assign(h,{[t.name.text]:e(y(t)).replace(n,"")});let a=o?`\\color{|4||0.45}{${r}}`:r,c=[o,a,i&&`\\color{#52c11b|1||0.9}{${i}}`].filter(Boolean).join(" "),s=v(l)?.split("|")||[],f=s.includes("comment"),p=s.includes("version"),m=s.includes("author"),g=`## ${c}`;if(t.members.length>0){let e=[];for(let n=0,r=t.members.length;n<r;n++){let r=t.members[n],o=k(r.name.getText()),i=x(r),a=k(function(e){let t=e.initializer;if(t&&u(t))return` '${t.text}'`}(r)),c=k(A(i)),s=k(S(i));!o||o.startsWith("\\color")||/^["'](.+)["']$/.test(o)||(o=`\\color{#4c81db}{${o}}`),e.push([o,!f&&s,a,!p&&c,!m&&(j(i)||j(l))])}let n=!1,r=!1,o=!1;for(let t=0,l=e.length;t<l;t++){let l=e[t];!f&&l[1]&&(o=!0),!p&&l[3]&&(r=!0),!m&&l[4]&&(n=!0)}g+="\n";let i=["属性",o&&"说明","值",r&&"版本",n&&"作者"].filter(Boolean).join("|");g+=`|${i}|`;let a=[":-",o&&":-",":-",r&&":-",n&&":-"].filter(Boolean);g+="\n";let c=a.join("|");g+=`|${c}|`;for(let t=0,l=e.length;t<l;t++){let l=e[t];g+="\n";let i=[l[0]||"-",o&&(l[1]||"-"),l[2]||"-",r&&(l[3]||"-"),n&&(l[4]||"-")].filter(Boolean).join("|");g+=`|${i}|`}}return g+"\n\n"}export function declToMd(e,t,r,o){let c=new g;try{return function e(t,r,o,c,s){let f=t.createSourceFile(o,r,{scriptKind:p.TS}),m=f.sourceFile;b.set(m,o);let g="";try{return m.forEachChild(function o(f){if(a(f)&&f.name&&u(f.name)){let n=f.name.text,l=f.body;for(;l&&a(l);)l=l.body;if(l&&i(l)){let o=r.slice(l.getStart(m)+1,l.getEnd()-1);g+=`# Module \`${n}\``,g+=`
2
+ `,g+=`
3
+ `,g+=e(t,o,n,c,s),g+=`
4
+ `,g+=`
5
+ `}}else l(f)?g+=generateInterfaceDocumentation(f,c,s):n(f)&&(g+=generateEnumDocumentation(f,s));f.forEachChild(o)}),g}finally{f.dispose()}}(c,e,t,r,o)}finally{c.close()}}
@@ -1,5 +1,5 @@
1
1
  import type { BabelFileMetadata } from '@moneko/eslint/babel-core';
2
- import type { JSDocNullableType } from 'typescript';
2
+ import type { JSDocNullableType } from 'typescript/ast';
3
3
  export interface BabelFileResult {
4
4
  ast?: unknown;
5
5
  code?: string | JSDocNullableType;
@@ -1,19 +1,20 @@
1
- import ts from 'typescript';
1
+ import { type RawCompilerOptions } from 'typescript/sync';
2
2
  interface CompilerDtsOption {
3
3
  extends?: string;
4
- compilerOptions?: ts.CompilerOptions;
4
+ compilerOptions?: RawCompilerOptions;
5
5
  include?: string[];
6
6
  }
7
7
  /**
8
8
  * 编译 TypeScript 文件
9
9
  * @param {CompilerDtsOption} config - 编译配置
10
- * @returns {string} 编译结果
10
+ * @returns {string} 最后一个 .d.ts 文件的编译结果
11
11
  * @example
12
12
  * ```ts
13
13
  * const result = compileDts({
14
14
  * extends: './tsconfig.json',
15
15
  * compilerOptions: {
16
- * outFile: './module-federation.d.ts',
16
+ * declaration: true,
17
+ * emitDeclarationOnly: true,
17
18
  * },
18
19
  * include: ['src/components/graph-editor']
19
20
  * });
@@ -1 +1 @@
1
- import{cwd as e}from"node:process";import t from"typescript";import o from"../commom/log.mjs";export function compileDts(r){let i=e(),n=t.parseJsonConfigFileContent({extends:"./tsconfig.json",compilerOptions:{outFile:"./module-federation.d.ts",...r.compilerOptions},...r},t.sys,i);if(n.options.incremental=!1,n.errors.length>0)return o(Error(t.formatDiagnostics(n.errors,{getCanonicalFileName:e=>e,getCurrentDirectory:t.sys.getCurrentDirectory,getNewLine:()=>t.sys.newLine}))),"";let s="",m=t.createProgram({rootNames:n.fileNames,options:n.options,host:{...t.createCompilerHost(n.options),writeFile:(e,t)=>{e.endsWith(".d.ts")&&(s=t)}}}),c=m.emit(),a=t.getPreEmitDiagnostics(m).concat(c.diagnostics);return a.length>0&&o(Error(t.formatDiagnostics(a,{getCanonicalFileName:e=>e,getCurrentDirectory:t.sys.getCurrentDirectory,getNewLine:()=>t.sys.newLine}))),s}
1
+ import{cwd as t}from"node:process";import{API as o,formatDiagnostics as e}from"typescript/sync";import{log as i}from"../commom/log.mjs";export function compileDts(r){let n=t(),s=new o({cwd:n});try{let t=s.parseJsonConfigFileContent({extends:"./tsconfig.json",...r},{configDirectory:n});if(t.options.incremental=!1,t.errors.length>0)return i(Error(e(t.errors,s))),"";let o=s.createProgram(t.fileNames,t.options);try{let r="",n=o.emitToString();for(let[t,o]of n.outputFiles)t.endsWith(".d.ts")&&(r=o.text);let c=[...o.getConfigFileParsingDiagnostics(),...o.getProgramDiagnostics(),...o.getSyntacticDiagnostics(),...o.getGlobalDiagnostics(),...o.getSemanticDiagnostics(),...t.options.declaration?o.getDeclarationDiagnostics():[],...n.diagnostics];return c.length>0&&i(Error(e(c,s))),r}finally{o.dispose()}}finally{s.close()}}
@@ -1 +1,4 @@
1
- import{sep as e}from"node:path";import t from"typescript";let a=t.SyntaxKind,r=t.factory.createModifier(a.DeclareKeyword),i=t.createPrinter({newLine:t.NewLineKind.LineFeed});function n(e){let r=i=>{if(n=i,(t.isInterfaceDeclaration(n)||t.isTypeAliasDeclaration(n)||t.isClassDeclaration(n)||t.isFunctionDeclaration(n)||t.isEnumDeclaration(n)||t.isVariableStatement(n)||t.isModuleDeclaration(n))&&(o=i).modifiers&&o.modifiers.some(e=>e.kind===a.DeclareKeyword)){let e=function(e){if(!e)return;let t=e.filter(e=>e.kind!==a.DeclareKeyword);return t.length>0?t:void 0}(i.modifiers);var n,o,c=i,l=e;if(t.isInterfaceDeclaration(c))return t.factory.updateInterfaceDeclaration(c,l,c.name,c.typeParameters,c.heritageClauses,c.members);if(t.isTypeAliasDeclaration(c))return t.factory.updateTypeAliasDeclaration(c,l,c.name,c.typeParameters,c.type);if(t.isClassDeclaration(c))return t.factory.updateClassDeclaration(c,l,c.name,c.typeParameters,c.heritageClauses,c.members);if(t.isFunctionDeclaration(c))return t.factory.updateFunctionDeclaration(c,l,c.asteriskToken,c.name,c.typeParameters,c.parameters,c.type,c.body);if(t.isEnumDeclaration(c))return t.factory.updateEnumDeclaration(c,l,c.name,c.members);if(t.isVariableStatement(c))return t.factory.updateVariableStatement(c,l,c.declarationList);else if(t.isModuleDeclaration(c))return t.factory.updateModuleDeclaration(c,l,c.name,c.body);return c}return t.visitEachChild(i,r,e)};return e=>t.visitNode(e,r)}export default function(a,o){let c=a.replaceAll(e,"/"),l=t.createSourceFile(`@types/${c}.d.ts`,o,t.ScriptTarget.Latest,!0,t.ScriptKind.TS),s=t.transform(l,[n]),d=s.transformed[0],u=t.factory.createModuleDeclaration([r],t.factory.createStringLiteral(c),t.factory.createModuleBlock(d.statements),t.NodeFlags.None),f=[`// remote module: ${c}`,i.printNode(t.EmitHint.Unspecified,u,l)];return s.dispose(),f.join("\n")};
1
+ import{sep as e}from"node:path";import{isClassDeclaration as t,isEnumDeclaration as r,isFunctionDeclaration as i,isInterfaceDeclaration as l,isModuleDeclaration as n,isTypeAliasDeclaration as o,isVariableStatement as s,ScriptKind as p,SyntaxKind as d,visitEachChild as c,visitNode as a}from"typescript/ast";import{API as f}from"typescript/sync";let u=new f;export default function(f,m){let y=f.replaceAll(e,"/"),S=u.createSourceFile(`@types/${y}.d.ts`,m,{scriptKind:p.TS});try{let e=function(e){let p=[],f=a=>{var u;if(u=a,l(u)||o(u)||t(u)||i(u)||r(u)||s(u)||n(u)){let t=a.modifiers?.find(e=>e.kind===d.DeclareKeyword);if(t)return p.push({start:t.getStart(e),end:t.end}),a}return c(a,f)};a(e,f);let u=e.text;for(let{start:e,end:t}of p.reverse())u=u.slice(0,e)+" ".repeat(t-e)+u.slice(t);return u}(S.sourceFile),f=u.createSourceFile(`@types/${y}.wrapped.d.ts`,`declare module ${JSON.stringify(y)} {
2
+ ${e}
3
+ }`,{scriptKind:p.TS});try{let e=u.printer.printFile(f.sourceFile).trimEnd();return`// remote module: ${y}
4
+ ${e}`}finally{f.dispose()}}finally{S.dispose()}};
package/lib/utils/dts.mjs CHANGED
@@ -1 +1 @@
1
- import e from"typescript";import*as t from"../commom/rule.mjs";let i={declaration:!0,emitDeclarationOnly:!0,target:e.ScriptTarget.ESNext,skipLibCheck:!0,checkJs:!1,skipDefaultLibCheck:!0,noResolve:!0,types:[],noEmitOnError:!1,noImplicitAny:!1,noImplicitThis:!1,noImplicitReturns:!1,noUnusedLocals:!1,noUnusedParameters:!1,noFallthroughCasesInSwitch:!1,strictNullChecks:!1,strictFunctionTypes:!1,strictBindCallApply:!1,strictPropertyInitialization:!1,strict:!1};export function extractMfModules(t){let i=e.createSourceFile("temp.ts",t,e.ScriptTarget.Latest,!0),r=[];return!function t(i){if(e.isModuleDeclaration(i)){let e=i.name.text;if(e.startsWith("mf:")){let t=e.substring(3);r.push(t)}}e.forEachChild(i,t)}(i),r}export function generateDeclaration(r,a){let s=(t.js.test(a)?a:`${a}.ts`).replace(/^\.+/,""),n="";return e.createProgram([s],i,{getSourceFile:t=>{if(t===s)return e.createSourceFile(t,r,i.target)},writeFile:(e,t)=>{e.endsWith(".d.ts")&&(n=t)},getDefaultLibFileName:()=>"lib.d.ts",getCurrentDirectory:()=>"",getCanonicalFileName:e=>e,useCaseSensitiveFileNames:()=>!0,getNewLine:()=>"\n",fileExists:()=>!0,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]}).emit(),n}export function getExportKeys(t,i){let r=new Set;for(let a of e.createSourceFile(i,t,e.ScriptTarget.Latest,!0).statements)if(e.isExportDeclaration(a)){if(a.exportClause&&e.isNamedExports(a.exportClause))for(let e of a.exportClause.elements)r.add(e.name.text)}else if(e.isExportAssignment(a))r.add("default");else if((e.isVariableStatement(a)||e.isFunctionDeclaration(a)||e.isClassDeclaration(a))&&a.modifiers?.some(t=>t.kind===e.SyntaxKind.ExportKeyword)){if(e.isFunctionDeclaration(a)||e.isClassDeclaration(a))a.name&&r.add(a.name.text);else if(e.isVariableStatement(a))for(let t of a.declarationList.declarations)e.isIdentifier(t.name)&&r.add(t.name.text)}return Array.from(r)}
1
+ import{isClassDeclaration as t,isExportAssignment as e,isExportDeclaration as r,isFunctionDeclaration as i,isIdentifier as s,isModuleDeclaration as o,isNamedExports as n,isVariableStatement as l,ScriptKind as a,ScriptTarget as c,SyntaxKind as p,visitEachChild as m,visitNode as f}from"typescript/ast";import{API as u}from"typescript/sync";import*as d from"../commom/rule.mjs";let x={declaration:!0,emitDeclarationOnly:!0,target:c.ESNext,skipLibCheck:!0,checkJs:!1,skipDefaultLibCheck:!0,noResolve:!0,types:[],noEmitOnError:!1,noImplicitAny:!1,noImplicitThis:!1,noImplicitReturns:!1,noUnusedLocals:!1,noUnusedParameters:!1,noFallthroughCasesInSwitch:!1,strictNullChecks:!1,strictFunctionTypes:!1,strictBindCallApply:!1,strictPropertyInitialization:!1,strict:!1},y=new u;export function extractMfModules(t){let e=y.createSourceFile("temp.ts",t,{scriptKind:a.TS});try{let t=[];return f(e.sourceFile,function e(r){if(o(r)){let e=r.name.text;e.startsWith("mf:")&&t.push(e.substring(3))}return m(r,e)}),t}finally{e.dispose()}}export function generateDeclaration(t,e){let r=(d.js.test(e)?e:`${e}.ts`).replace(/^\.+/,"");return!/\.tsx?$/i.test(r)||/\.d\.ts$/i.test(r)?"":y.transpileDeclaration(t,{fileName:r,compilerOptions:x}).outputText}export function getExportKeys(o,a){let c=new Set,m=y.createSourceFile(a,o);try{for(let o of m.sourceFile.statements)if(r(o)){if(o.exportClause&&n(o.exportClause))for(let t of o.exportClause.elements)c.add(t.name.text)}else if(e(o))c.add("default");else if((l(o)||i(o)||t(o))&&o.modifiers?.some(t=>t.kind===p.ExportKeyword)){if(i(o)||t(o))o.name&&c.add(o.name.text);else if(l(o))for(let t of o.declarationList.declarations)s(t.name)&&c.add(t.name.text)}return Array.from(c)}finally{m.dispose()}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/core",
3
- "version": "4.14.0-beta.0",
3
+ "version": "4.14.0-beta.2",
4
4
  "description": "@moneko/core",
5
5
  "main": "lib/index.mjs",
6
6
  "type": "module",