@visulima/packem 1.0.0-alpha.62 → 1.0.0-alpha.63

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/dist/cli.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- var Dt=Object.defineProperty;var d=(e,t)=>Dt(e,"name",{value:t,configurable:!0});import St from"@visulima/cerebro";import{SimpleReporter as Nt}from"@visulima/pail/reporter";import{env as O,versions as Pt,cwd as _t,exit as Ct}from"node:process";import{chmod as Mt,stat as Re,readdir as It}from"node:fs/promises";import ve from"node:module";import{cyan as v,bold as S,gray as M,yellow as Ft,grey as Rt,green as Tt}from"@visulima/colorize";import{readFile as se,writeFile as J,isAccessibleSync as E,collectSync as At,readFileSync as Te,writeFileSync as U,writeJsonSync as Bt,ensureDirSync as Jt,emptyDir as Ae,walk as Wt,isAccessible as Lt}from"@visulima/fs";import{NotFoundError as zt}from"@visulima/fs/error";import{formatBytes as _,duration as Ut}from"@visulima/humanizer";import{parsePackageJson as Be}from"@visulima/package/package-json";import{resolve as g,join as y,normalize as ie,extname as ae,relative as D,dirname as le,basename as H,isAbsolute as Je,toNamespacedPath as be}from"@visulima/path";import{readTsConfig as Vt,findTsConfig as Ht}from"@visulima/tsconfig";import{defu as qt}from"defu";import{createHooks as Gt}from"hookable";import{rollup as We,watch as $e,VERSION as Yt}from"rollup";import{DEFAULTS as Kt,nodeResolve as Le}from"@rollup/plugin-node-resolve";import{pathToFileURL as Xt,fileURLToPath as Zt}from"node:url";import{resolvePath as Qt,resolveModuleExportNames as eo,findStaticImports as ze}from"mlly";import P from"magic-string";import Ue from"jiti";import{existsSync as ce,rmSync as to}from"node:fs";import Ve from"@rollup/plugin-alias";import oo from"@rollup/plugin-commonjs";import ro from"@rollup/plugin-dynamic-import-vars";import He from"@rollup/plugin-replace";import{wasm as no}from"@rollup/plugin-wasm";import so from"rollup-plugin-polyfill-node";import{visualizer as io}from"rollup-plugin-visualizer";import{minVersion as qe}from"semver";import{glob as ao}from"glob";import lo from"glob-parent";import{createFilter as q,normalizePath as we}from"@rollup/pluginutils";import co from"@rollup/plugin-json";import po from"rollup-plugin-license";import{createHash as uo}from"node:crypto";import{parse as mo}from"@babel/parser";import{findCacheDirSync as fo}from"@visulima/find-cache-dir";import{distance as go}from"fastest-levenshtein";import{installPackage as ho}from"@antfu/install-pkg";import{intro as yo,isCancel as vo,cancel as bo,select as $o,confirm as wo,spinner as Y,outro as jo}from"@clack/prompts";
2
+ var St=Object.defineProperty;var d=(e,t)=>St(e,"name",{value:t,configurable:!0});import Nt from"@visulima/cerebro";import{SimpleReporter as Pt}from"@visulima/pail/reporter";import{env as O,versions as _t,cwd as Ct,exit as Mt}from"node:process";import{chmod as It,stat as Te,readdir as Ft}from"node:fs/promises";import be from"node:module";import{cyan as v,bold as S,gray as I,yellow as Rt,grey as Tt,green as At}from"@visulima/colorize";import{readFile as ie,writeFile as J,isAccessibleSync as x,collectSync as Bt,readFileSync as Ae,writeFileSync as U,writeJsonSync as Jt,ensureDirSync as Wt,emptyDir as Be,walk as Lt,isAccessible as zt}from"@visulima/fs";import{NotFoundError as Ut}from"@visulima/fs/error";import{formatBytes as C,duration as Vt}from"@visulima/humanizer";import{parsePackageJson as Je}from"@visulima/package/package-json";import{resolve as g,join as h,normalize as ae,extname as le,relative as D,dirname as ce,basename as H,isAbsolute as We,toNamespacedPath as $e}from"@visulima/path";import{readTsConfig as Ht,findTsConfig as qt}from"@visulima/tsconfig";import{defu as Gt}from"defu";import{createHooks as Yt}from"hookable";import{rollup as Le,watch as we,VERSION as Kt}from"rollup";import{DEFAULTS as Xt,nodeResolve as ze}from"@rollup/plugin-node-resolve";import{pathToFileURL as Zt,fileURLToPath as Qt}from"node:url";import{resolvePath as eo,resolveModuleExportNames as to,findStaticImports as Ue}from"mlly";import P from"magic-string";import Ve from"jiti";import{existsSync as pe,rmSync as oo}from"node:fs";import He from"@rollup/plugin-alias";import ro from"@rollup/plugin-commonjs";import no from"@rollup/plugin-dynamic-import-vars";import qe from"@rollup/plugin-replace";import{wasm as so}from"@rollup/plugin-wasm";import io from"rollup-plugin-polyfill-node";import{visualizer as ao}from"rollup-plugin-visualizer";import{minVersion as Ge}from"semver";import{glob as lo}from"glob";import co from"glob-parent";import{createFilter as q,normalizePath as je}from"@rollup/pluginutils";import po from"@rollup/plugin-json";import uo from"rollup-plugin-license";import{createHash as mo}from"node:crypto";import{parse as fo}from"@babel/parser";import{findCacheDirSync as go}from"@visulima/find-cache-dir";import{distance as ho}from"fastest-levenshtein";import{installPackage as yo}from"@antfu/install-pkg";import{intro as vo,isCancel as bo,cancel as $o,select as wo,confirm as jo,spinner as K,outro as ko}from"@clack/prompts";
3
3
  // -- pack CommonJS Shims --
4
4
  import __cjs_url__ from "node:url";
5
5
  import __cjs_path__ from "node:path";
@@ -7,39 +7,39 @@ import __cjs_mod__ from "node:module";
7
7
  const __filename = __cjs_url__.fileURLToPath(import.meta.url);
8
8
  const __dirname = __cjs_path__.dirname(__filename);
9
9
  const require = __cjs_mod__.createRequire(import.meta.url);
10
- const ko="@visulima/packem",xo="1.0.0-alpha.61",F=[...Kt.extensions,".cjs",".ts",".cts",".mts",".tsx",".jsx"],Eo=["development","production"],Ge=["react-server","react-native","edge-light"];[...Eo,...Ge];const K=/node_modules/;var Oo=Object.defineProperty,G=d((e,t)=>Oo(e,"name",{value:t,configurable:!0}),"i$d");const pe=/^#![^\n]*/,re=G(async e=>{await Mt(e,493).catch(()=>{})},"makeExecutable"),Do=G((e,t=`#!/usr/bin/env node
11
- `)=>({name:"packem:shebang",renderChunk:{handler(o,n,r){if(!n.isEntry||!n.facadeModuleId||o.startsWith("#")&&o[1]==="!")return null;if(e.includes(n.name)){const s=new P(o);return s.prepend(t),{code:s.toString(),map:r.sourcemap?s.generateMap({hires:!0}):void 0}}return null},order:"post"},async writeBundle(o,n){for(const[r,s]of Object.entries(n))if(s.type==="chunk"&&pe.test(s.code)&&o.dir){const i=g(o.dir,r);await re(i)}}}),"shebangPlugin"),So=G(()=>({name:"packem:remove-shebang",renderChunk(e){return e.replace(pe,"")}}),"removeShebangPlugin"),No=G((e,t=`
12
- `)=>{const o=pe.exec(e);return o?o+t:""},"getShebang");var Po=Object.defineProperty,_o=d((e,t)=>Po(e,"name",{value:t,configurable:!0}),"p$5");const ue=_o((e,t)=>{let o={};if(e.pkg.name&&(o[e.pkg.name]=e.options.rootDir),e.pkg.imports){const{imports:n}=e.pkg;for(const r in n){if(r.startsWith("#"))continue;const s=n[r];typeof s=="string"&&(o[r]=y(e.options.rootDir,s))}}return o={...o,...e.options.alias},e.options.rollup.alias&&(Array.isArray(e.options.rollup.alias.entries)?Object.assign(o,Object.fromEntries(e.options.rollup.alias.entries.map(n=>[n.find,n.replacement]))):Object.assign(o,e.options.rollup.alias.entries??e.options.rollup.alias)),e.logger.debug({message:"Resolved aliases: "+JSON.stringify(o),prefix:t}),o},"resolveAliases");var Co=Object.defineProperty,Mo=d((e,t)=>Co(e,"name",{value:t,configurable:!0}),"o$3");const Io=Mo((e,t)=>{const o=Ue(t,{esmResolve:!0,interopDefault:!0});try{return o.resolve(e)}catch(n){if(n.code!=="MODULE_NOT_FOUND")throw new Error(`Error trying import ${e} from ${t}`,{cause:n});return e}},"tryResolve");var Fo=Object.defineProperty,Ro=d((e,t)=>Fo(e,"name",{value:t,configurable:!0}),"r$a");const B=Ro((e,t)=>{e.warnings.has(t)||e.warnings.add(t)},"warn");var To=Object.defineProperty,Ao=d((e,t)=>To(e,"name",{value:t,configurable:!0}),"u$9");const Bo=Ao(async e=>{const t=await Qt("jiti",{url:import.meta.url}),o=JSON.stringify({...e.options.stubOptions.jiti,alias:{...ue(e,"jit"),...e.options.stubOptions.jiti.alias}},null,2);for(const n of e.options.entries){const r=g(e.options.rootDir,e.options.outDir,n.name),s=ie(Io(n.input,e.options.rootDir)||n.input),i=s.slice(0,Math.max(0,s.length-ae(s).length)),a=await se(s),l=No(a);e.options.emitCJS&&await J(`${r}.cjs`,l+[`const jiti = require(${JSON.stringify(t)})`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(i)})} */`,`module.exports = _jiti(${JSON.stringify(s)})`].join(`
13
- `));let c=[];try{c=await eo(s,{extensions:F})}catch(u){B(e,`Cannot analyze ${s} for exports: ${u.toString()}`);return}const p=c.includes("default")||c.length===0;await J(`${r}.mjs`,l+[`import jiti from ${JSON.stringify(Xt(t).href)};`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(s)})} */`,`const _module = await _jiti.import(${JSON.stringify(s)});`,p?`
10
+ const xo="@visulima/packem",Eo="1.0.0-alpha.62",T=[...Xt.extensions,".cjs",".ts",".cts",".mts",".tsx",".jsx"],Oo=["development","production"],Ye=["react-server","react-native","edge-light"];[...Oo,...Ye];const X=/node_modules/;var Do=Object.defineProperty,G=d((e,t)=>Do(e,"name",{value:t,configurable:!0}),"i$d");const ue=/^#![^\n]*/,ne=G(async e=>{await It(e,493).catch(()=>{})},"makeExecutable"),So=G((e,t=`#!/usr/bin/env node
11
+ `)=>({name:"packem:shebang",renderChunk:{handler(o,r,n){if(!r.isEntry||!r.facadeModuleId||o.startsWith("#")&&o[1]==="!")return null;if(e.includes(r.name)){const s=new P(o);return s.prepend(t),{code:s.toString(),map:n.sourcemap?s.generateMap({hires:!0}):void 0}}return null},order:"post"},async writeBundle(o,r){for(const[n,s]of Object.entries(r))if(s.type==="chunk"&&ue.test(s.code)&&o.dir){const i=g(o.dir,n);await ne(i)}}}),"shebangPlugin"),No=G(()=>({name:"packem:remove-shebang",renderChunk(e){return e.replace(ue,"")}}),"removeShebangPlugin"),Po=G((e,t=`
12
+ `)=>{const o=ue.exec(e);return o?o+t:""},"getShebang");var _o=Object.defineProperty,Co=d((e,t)=>_o(e,"name",{value:t,configurable:!0}),"p$4");const de=Co((e,t)=>{let o={};if(e.pkg.name&&(o[e.pkg.name]=e.options.rootDir),e.pkg.imports){const{imports:r}=e.pkg;for(const n in r){if(n.startsWith("#"))continue;const s=r[n];typeof s=="string"&&(o[n]=h(e.options.rootDir,s))}}return o={...o,...e.options.alias},e.options.rollup.alias&&(Array.isArray(e.options.rollup.alias.entries)?Object.assign(o,Object.fromEntries(e.options.rollup.alias.entries.map(r=>[r.find,r.replacement]))):Object.assign(o,e.options.rollup.alias.entries??e.options.rollup.alias)),e.logger.debug({message:"Resolved aliases: "+JSON.stringify(o),prefix:t}),o},"resolveAliases");var Mo=Object.defineProperty,Io=d((e,t)=>Mo(e,"name",{value:t,configurable:!0}),"o$3");const Fo=Io((e,t)=>{const o=Ve(t,{esmResolve:!0,interopDefault:!0});try{return o.resolve(e)}catch(r){if(r.code!=="MODULE_NOT_FOUND")throw new Error(`Error trying import ${e} from ${t}`,{cause:r});return e}},"tryResolve");var Ro=Object.defineProperty,To=d((e,t)=>Ro(e,"name",{value:t,configurable:!0}),"r$a");const B=To((e,t)=>{e.warnings.has(t)||e.warnings.add(t)},"warn");var Ao=Object.defineProperty,Bo=d((e,t)=>Ao(e,"name",{value:t,configurable:!0}),"u$9");const Jo=Bo(async e=>{const t=await eo("jiti",{url:import.meta.url}),o=JSON.stringify({...e.options.stubOptions.jiti,alias:{...de(e,"jit"),...e.options.stubOptions.jiti.alias}},null,2);for(const r of e.options.entries){const n=g(e.options.rootDir,e.options.outDir,r.name),s=ae(Fo(r.input,e.options.rootDir)||r.input),i=s.slice(0,Math.max(0,s.length-le(s).length)),a=await ie(s),l=Po(a);e.options.emitCJS&&await J(`${n}.cjs`,l+[`const jiti = require(${JSON.stringify(t)})`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(i)})} */`,`module.exports = _jiti(${JSON.stringify(s)})`].join(`
13
+ `));let c=[];try{c=await to(s,{extensions:T})}catch(u){B(e,`Cannot analyze ${s} for exports: ${u.toString()}`);return}const p=c.includes("default")||c.length===0;await J(`${n}.mjs`,l+[`import jiti from ${JSON.stringify(Zt(t).href)};`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(s)})} */`,`const _module = await _jiti.import(${JSON.stringify(s)});`,p?`
14
14
  export default _module;`:"",...c.filter(u=>u!=="default").map(u=>`export const ${u} = _module.${u};`)].join(`
15
- `)),await J(`${r}.d.cts`,[`export * from ${JSON.stringify(i)};`,p?`export { default } from ${JSON.stringify(i)};`:""].join(`
16
- `)),await J(`${r}.d.mts`,[`export * from ${JSON.stringify(s)};`,p?`export { default } from ${JSON.stringify(s)};`:""].join(`
17
- `)),l&&(await re(`${r}.cjs`),await re(`${r}.mjs`))}await e.hooks.callHook("rollup:done",e)},"createStub");var Jo=Object.defineProperty,Wo=d((e,t)=>Jo(e,"name",{value:t,configurable:!0}),"r$9");const Ye=Wo((e,t)=>Ue(t,{esmResolve:!0,interopDefault:!0})(e),"tryRequire");var Lo=Object.defineProperty,Ke=d((e,t)=>Lo(e,"name",{value:t,configurable:!0}),"t$5");const V=Ke(e=>{if(e.endsWith(".mjs")||e.endsWith(".d.mts"))return"esm";if(e.endsWith(".cjs")||e.endsWith(".d.cts"))return"cjs"},"inferExportTypeFromFileName"),Xe=Ke((e,t,o,n)=>{if(o){const i=V(o);if(i)return i}if(e==="module"||e==="import")return"esm";if(e==="require")return"cjs";if(t.length===0)return n==="commonjs"?"cjs":"esm";const[r,...s]=t;return Xe(r,s,o,n)},"inferExportType");var zo=Object.defineProperty,Uo=d((e,t)=>zo(e,"name",{value:t,configurable:!0}),"n$7");const de=Uo((e,t,o,n=[])=>{if(!e)return[];if(typeof e=="string"){const r=V(e),s=t==="module"?"esm":"cjs";if(r&&r!==s)throw new Error(`Exported file "${e}" has an extension that does not match the package.json type "${t}".`);return[{file:e,key:"exports",type:r??s}]}return Object.entries(e).filter(([r])=>!r.endsWith(".json")).flatMap(([r,s])=>r==="types"&&o===!1?[]:typeof s=="string"?{file:s,key:"exports",...["browser","default","deno","development","import","node","node-addons","production","require","types"].includes(r)?{subKey:r}:{},type:Xe(r,n,s,t)}:de(s,t,o,[...n,r]))},"extractExportFilenames");var Vo=Object.defineProperty,me=d((e,t)=>Vo(e,"name",{value:t,configurable:!0}),"y$1");const Ho=me(e=>{if(e.key==="exports"&&e.subKey==="production")return"production";if(e.key==="exports"&&e.subKey==="development")return"development";if(O.NODE_ENV){if(!O.NODE_ENV.includes("production")&&!O.NODE_ENV.includes("development"))throw new Error(`Invalid NODE_ENV value: ${O.NODE_ENV}, must be either "production" or "development".`);return O.NODE_ENV}return"production"},"getEnvironment"),W=me((e,t,o,n,r,s)=>{const i=e.find(a=>a.input===t)??e[e.push({input:t})-1];if(o&&(i.outDir=n),r.isExecutable)i.executable=!0,i.declaration=!1,r.type==="cjs"&&(i.cjs=!0),r.type==="esm"&&(i.esm=!0);else{/\.d\.[mc]?ts$/.test(r.file)&&s!==!1&&(i.declaration=s),r.type==="cjs"&&(i.cjs=!0),r.type==="esm"&&(i.esm=!0);for(const a of Ge)if(r.file.includes("."+a+".")){i.runtime=a;break}}i.runtime===void 0&&(i.runtime="node"),i.environment=Ho(r)},"createOrUpdateEntry"),je=/(?:\.d\.[mc]?ts|\.\w+)$/;let ke=!1;const qo=me((e,t,o)=>{const n=[];t.sort((a,l)=>a.split("/").length-l.split("/").length);const r=e.type==="module"?"esm":"cjs",s=de(e.exports,e.type??"commonjs",o.options.declaration);if(e.bin){const a=(typeof e.bin=="string"?[e.bin]:Object.values(e.bin)).filter(Boolean);for(const l of a){const c=V(l);if(c&&c!==r)throw new Error(`Exported file "${l}" has an extension that does not match the package.json type "${e.type}".`);s.push({file:l,isExecutable:!0,key:"bin",type:c??r})}}e.main&&s.push({file:e.main,key:"main",type:V(e.main)??r}),e.module&&s.push({file:e.module,key:"module",type:"esm"}),o.options.declaration!==!1&&(e.types||e.typings)&&s.push({file:e.types??e.typings,key:"types"});const i=[];for(const a of s){const l=a.file.replace(/(?:\*[^/\\]|\.d\.[mc]?ts|\.\w+)$/,""),c=l.endsWith("/");if(c&&["./","/"].includes(l))continue;const p=l.replace(new RegExp("(./)?"+o.options.outDir),o.options.sourceDir).replace("./","");if(a.file.includes("/*")&&a.key==="exports"){ke||(o.logger.debug("Private subfolders are not supported, if you need this feature please open an issue on GitHub."),ke=!0);const f=[],b=new RegExp("(?<=/|$)"+p.replace("*","(.*)")+(c?"":"\\.\\w+"));for(const $ of t)b.test($)&&f.push($.replace(je,""));if(f.length===0){n.push(`Could not find entrypoint for \`${a.file}\``);continue}for(const $ of f)W(i,$,c,l,a,o.options.declaration);continue}const u=new RegExp("(?<=/|$)"+p+(c?"":"\\.\\w+")),m=t.find(f=>u.test(f))?.replace(je,"");if(!m){ce(g(o.options.rootDir,a.file))||n.push(`Could not find entrypoint for \`${a.file}\``);continue}E(m+".cts")&&E(m+".mts")?(W(i,m+".cts",c,l,{...a,type:"cjs"},o.options.declaration),W(i,m+".mts",c,l,{...a,type:"esm"},o.options.declaration)):W(i,m,c,l,a,o.options.declaration)}return{entries:i,warnings:n}},"inferEntries");var Go=Object.defineProperty,Yo=d((e,t)=>Go(e,"name",{value:t,configurable:!0}),"t$4");const Ko=Yo((e,t)=>{const{publishConfig:o}=e;return o&&(o.bin&&(typeof o.bin=="object"||typeof o.bin=="string")&&(e.bin=o.bin),o.type&&typeof o.type=="string"&&o.type!==""&&(e.type=o.type),o.main&&typeof o.main=="string"&&o.main!==""&&(e.main=o.main),o.module&&typeof o.module=="string"&&o.module!==""&&(e.module=o.module),t===void 0&&o.types&&typeof o.types=="string"&&o.types!==""?e.types=o.types:t===void 0&&o.typings&&typeof o.typings=="string"&&o.typings!==""&&(e.typings=o.typings),o.exports&&typeof o.exports=="object"&&(e.exports=o.exports)),e},"overwriteWithPublishConfig");var Xo=Object.defineProperty,Zo=d((e,t)=>Xo(e,"name",{value:t,configurable:!0}),"t$3");const Qo={hooks:{"build:prepare":Zo(function(e){if(e.options.entries.length>0)return;const t=y(e.options.rootDir,e.options.sourceDir);if(!ce(t))throw new Error("No 'src' directory found. Please provide entries manually.");const o=At(t,{extensions:[],includeDirs:!1,includeSymlinks:!1});if(o.length===0)throw new Error("No source files found in 'src' directory. Please provide entries manually.");let n={...e.pkg};n.publishConfig&&(n=Ko(n,e.options.declaration));const r=qo(n,o,e);for(const s of r.warnings)B(e,s);if(e.options.entries.push(...r.entries),e.options.entries.length===0)throw new Error("No entries detected. Please provide entries manually.");e.logger.info("Automatically detected entries:",v(e.options.entries.map(s=>S(s.input.replace(`${e.options.rootDir}/`,"").replace(/\/$/,"/*"))).join(", ")),M([e.options.emitESM&&"esm",e.options.emitCJS&&"cjs",e.options.declaration&&"dts"].filter(Boolean).map(s=>`[${s}]`).join(" ")))},"build:prepare")}};var er=Object.defineProperty,tr=d((e,t)=>er(e,"name",{value:t,configurable:!0}),"t$2");const or=tr((e,t)=>(e==="auto"?e=Qo:typeof e=="string"&&(e=Ye(e,t)),typeof e=="function"&&(e=e()),e),"resolvePreset");var rr=Object.defineProperty,nr=d((e,t)=>rr(e,"name",{value:t,configurable:!0}),"a$d");const ne=nr((e,t)=>e.some(o=>o instanceof RegExp?o.test(t):o===t),"arrayIncludes");var sr=Object.defineProperty,ir=d((e,t)=>sr(e,"name",{value:t,configurable:!0}),"a$c");const X=ir(e=>e===void 0?[]:Array.isArray(e)?e:[e],"arrayify");var ar=Object.defineProperty,lr=d((e,t)=>ar(e,"name",{value:t,configurable:!0}),"a$b");const Ze=lr((e="")=>{const t=e.split("/");return t[0].startsWith("@")?t[0]+"/"+t[1]:t[0]},"getPackageName");var cr=Object.defineProperty,Qe=d((e,t)=>cr(e,"name",{value:t,configurable:!0}),"s$d");const pr=Qe((e,t,o)=>{const n=o??new Map;return(...r)=>{const s=t?typeof t=="function"?t(...r):t:JSON.stringify({args:r}),i=n.get(s);if(i!==void 0)return i;const a=e(...r);return n.set(s,a),a}},"memoize"),ur=Qe(e=>{const t=new Map;return o=>pr(e,o,t)},"memoizeByKey");var dr=Object.defineProperty,mr=d((e,t)=>dr(e,"name",{value:t,configurable:!0}),"m$7");const et=mr(({addDefaultProperty:e=!1,logger:t,type:o})=>({name:"packem:cjs-interop",renderChunk(n,r,s){if(r.type!=="chunk"||!r.isEntry)return null;if(s.format==="cjs"&&s.exports==="auto"){const i=/(exports(?:\['default'\]|\.default)) = (.*);/i.exec(n);if(i===null||i.length<3)return null;const a=new P(n);a.replace("Object.defineProperty(exports, '__esModule', { value: true });",""),a.replaceAll(/exports\.(.*) = (.*);/g,"module.exports.$1 = $2;"),e&&a.append(`
18
- module.exports.default = `+i[2]+";");let l=a.toString();return l=l.replace(/(?:module\.)?exports(?:\['default'\]|\.default)/i,"module.exports"),t.debug({message:"Applied CommonJS interop to entry chunk "+r.fileName+".",prefix:"plugin:cjs-interop"}),{code:l,map:a.generateMap({hires:!0})}}if(s.format==="es"&&/\.d\.(?:ts|cts)$/.test(r.fileName)){if(o!=="commonjs"&&r.fileName.endsWith(".d.ts"))return null;const i=/export\s\{\s(.*)\s\}/i.exec(n);if(i===null||i.length<2)return null;const a=i[1].split(", "),l=[];let c="";for(const u of a)if(!u.includes("type"))if(u.includes("as")){const[m,f]=u.split(" as ");if(f==="default"&&(c=m,!e))continue;l.push(f+": typeof "+m+";")}else l.push(u+": typeof "+u+";");const p=new P(n);return p.replace(" "+c+" as default,",""),p.append(`
15
+ `)),await J(`${n}.d.cts`,[`export * from ${JSON.stringify(i)};`,p?`export { default } from ${JSON.stringify(i)};`:""].join(`
16
+ `)),await J(`${n}.d.mts`,[`export * from ${JSON.stringify(s)};`,p?`export { default } from ${JSON.stringify(s)};`:""].join(`
17
+ `)),l&&(await ne(`${n}.cjs`),await ne(`${n}.mjs`))}await e.hooks.callHook("rollup:done",e)},"createStub");var Wo=Object.defineProperty,Lo=d((e,t)=>Wo(e,"name",{value:t,configurable:!0}),"r$9");const Ke=Lo((e,t)=>Ve(t,{esmResolve:!0,interopDefault:!0})(e),"tryRequire");var zo=Object.defineProperty,Xe=d((e,t)=>zo(e,"name",{value:t,configurable:!0}),"t$5");const V=Xe(e=>{if(e.endsWith(".mjs")||e.endsWith(".d.mts"))return"esm";if(e.endsWith(".cjs")||e.endsWith(".d.cts"))return"cjs"},"inferExportTypeFromFileName"),Ze=Xe((e,t,o,r)=>{if(o){const i=V(o);if(i)return i}if(e==="module"||e==="import")return"esm";if(e==="require")return"cjs";if(t.length===0)return r==="commonjs"?"cjs":"esm";const[n,...s]=t;return Ze(n,s,o,r)},"inferExportType");var Uo=Object.defineProperty,Vo=d((e,t)=>Uo(e,"name",{value:t,configurable:!0}),"n$7");const me=Vo((e,t,o,r=[])=>{if(!e)return[];if(typeof e=="string"){const n=V(e),s=t==="module"?"esm":"cjs";if(n&&n!==s)throw new Error(`Exported file "${e}" has an extension that does not match the package.json type "${t}".`);return[{file:e,key:"exports",type:n??s}]}return Object.entries(e).filter(([n])=>!n.endsWith(".json")).flatMap(([n,s])=>n==="types"&&o===!1?[]:typeof s=="string"?{file:s,key:"exports",...["browser","default","deno","development","import","node","node-addons","production","require","types"].includes(n)?{subKey:n}:{},type:Ze(n,r,s,t)}:me(s,t,o,[...r,n]))},"extractExportFilenames");var Ho=Object.defineProperty,fe=d((e,t)=>Ho(e,"name",{value:t,configurable:!0}),"y$1");const qo=fe(e=>{if(e.key==="exports"&&e.subKey==="production")return"production";if(e.key==="exports"&&e.subKey==="development")return"development";if(O.NODE_ENV){if(!O.NODE_ENV.includes("production")&&!O.NODE_ENV.includes("development"))throw new Error(`Invalid NODE_ENV value: ${O.NODE_ENV}, must be either "production" or "development".`);return O.NODE_ENV}return"production"},"getEnvironment"),W=fe((e,t,o,r,n,s)=>{const i=e.find(a=>a.input===t)??e[e.push({input:t})-1];if(o&&(i.outDir=r),n.isExecutable)i.executable=!0,i.declaration=!1,n.type==="cjs"&&(i.cjs=!0),n.type==="esm"&&(i.esm=!0);else{/\.d\.[mc]?ts$/.test(n.file)&&s!==!1&&(i.declaration=s),n.type==="cjs"&&(i.cjs=!0),n.type==="esm"&&(i.esm=!0);for(const a of Ye)if(n.file.includes("."+a+".")){i.runtime=a;break}}i.runtime===void 0&&(i.runtime="node"),i.environment=qo(n)},"createOrUpdateEntry"),ke=/(?:\.d\.[mc]?ts|\.\w+)$/;let xe=!1;const Go=fe((e,t,o)=>{const r=[];t.sort((a,l)=>a.split("/").length-l.split("/").length);const n=e.type==="module"?"esm":"cjs",s=me(e.exports,e.type??"commonjs",o.options.declaration);if(e.bin){const a=(typeof e.bin=="string"?[e.bin]:Object.values(e.bin)).filter(Boolean);for(const l of a){const c=V(l);if(c&&c!==n)throw new Error(`Exported file "${l}" has an extension that does not match the package.json type "${e.type}".`);s.push({file:l,isExecutable:!0,key:"bin",type:c??n})}}e.main&&s.push({file:e.main,key:"main",type:V(e.main)??n}),e.module&&s.push({file:e.module,key:"module",type:"esm"}),o.options.declaration!==!1&&(e.types||e.typings)&&s.push({file:e.types??e.typings,key:"types"});const i=[];for(const a of s){const l=a.file.replace(/(?:\*[^/\\]|\.d\.[mc]?ts|\.\w+)$/,""),c=l.endsWith("/");if(c&&["./","/"].includes(l))continue;const p=l.replace(new RegExp("(./)?"+o.options.outDir),o.options.sourceDir).replace("./","");if(a.file.includes("/*")&&a.key==="exports"){xe||(o.logger.debug("Private subfolders are not supported, if you need this feature please open an issue on GitHub."),xe=!0);const f=[],b=new RegExp("(?<=/|$)"+p.replace("*","(.*)")+(c?"":"\\.\\w+"));for(const $ of t)b.test($)&&f.push($.replace(ke,""));if(f.length===0){r.push(`Could not find entrypoint for \`${a.file}\``);continue}for(const $ of f)W(i,$,c,l,a,o.options.declaration);continue}const u=new RegExp("(?<=/|$)"+p+(c?"":"\\.\\w+")),m=t.find(f=>u.test(f))?.replace(ke,"");if(!m){pe(g(o.options.rootDir,a.file))||r.push(`Could not find entrypoint for \`${a.file}\``);continue}x(m+".cts")&&x(m+".mts")?(W(i,m+".cts",c,l,{...a,type:"cjs"},o.options.declaration),W(i,m+".mts",c,l,{...a,type:"esm"},o.options.declaration)):W(i,m,c,l,a,o.options.declaration)}return{entries:i,warnings:r}},"inferEntries");var Yo=Object.defineProperty,Ko=d((e,t)=>Yo(e,"name",{value:t,configurable:!0}),"t$4");const Xo=Ko((e,t)=>{const{publishConfig:o}=e;return o&&(o.bin&&(typeof o.bin=="object"||typeof o.bin=="string")&&(e.bin=o.bin),o.type&&typeof o.type=="string"&&o.type!==""&&(e.type=o.type),o.main&&typeof o.main=="string"&&o.main!==""&&(e.main=o.main),o.module&&typeof o.module=="string"&&o.module!==""&&(e.module=o.module),t===void 0&&o.types&&typeof o.types=="string"&&o.types!==""?e.types=o.types:t===void 0&&o.typings&&typeof o.typings=="string"&&o.typings!==""&&(e.typings=o.typings),o.exports&&typeof o.exports=="object"&&(e.exports=o.exports)),e},"overwriteWithPublishConfig");var Zo=Object.defineProperty,Qo=d((e,t)=>Zo(e,"name",{value:t,configurable:!0}),"t$3");const er={hooks:{"build:prepare":Qo(function(e){if(e.options.entries.length>0)return;const t=h(e.options.rootDir,e.options.sourceDir);if(!pe(t))throw new Error("No 'src' directory found. Please provide entries manually.");const o=Bt(t,{extensions:[],includeDirs:!1,includeSymlinks:!1});if(o.length===0)throw new Error("No source files found in 'src' directory. Please provide entries manually.");let r={...e.pkg};r.publishConfig&&(r=Xo(r,e.options.declaration));const n=Go(r,o,e);for(const s of n.warnings)B(e,s);if(e.options.entries.push(...n.entries),e.options.entries.length===0)throw new Error("No entries detected. Please provide entries manually.");e.logger.info("Automatically detected entries:",v(e.options.entries.map(s=>S(s.input.replace(`${e.options.rootDir}/`,"").replace(/\/$/,"/*"))).join(", ")),I([e.options.emitESM&&"esm",e.options.emitCJS&&"cjs",e.options.declaration&&"dts"].filter(Boolean).map(s=>`[${s}]`).join(" ")))},"build:prepare")}};var tr=Object.defineProperty,or=d((e,t)=>tr(e,"name",{value:t,configurable:!0}),"t$2");const rr=or((e,t)=>(e==="auto"?e=er:typeof e=="string"&&(e=Ke(e,t)),typeof e=="function"&&(e=e()),e),"resolvePreset");var nr=Object.defineProperty,sr=d((e,t)=>nr(e,"name",{value:t,configurable:!0}),"a$d");const se=sr((e,t)=>e.some(o=>o instanceof RegExp?o.test(t):o===t),"arrayIncludes");var ir=Object.defineProperty,ar=d((e,t)=>ir(e,"name",{value:t,configurable:!0}),"a$c");const Z=ar(e=>e===void 0?[]:Array.isArray(e)?e:[e],"arrayify");var lr=Object.defineProperty,cr=d((e,t)=>lr(e,"name",{value:t,configurable:!0}),"a$b");const Qe=cr((e="")=>{const t=e.split("/");return t[0].startsWith("@")?t[0]+"/"+t[1]:t[0]},"getPackageName");var pr=Object.defineProperty,et=d((e,t)=>pr(e,"name",{value:t,configurable:!0}),"s$d");const ur=et((e,t,o)=>{const r=o??new Map;return(...n)=>{const s=t?typeof t=="function"?t(...n):t:JSON.stringify({args:n}),i=r.get(s);if(i!==void 0)return i;const a=e(...n);return r.set(s,a),a}},"memoize"),dr=et(e=>{const t=new Map;return o=>ur(e,o,t)},"memoizeByKey");var mr=Object.defineProperty,fr=d((e,t)=>mr(e,"name",{value:t,configurable:!0}),"m$7");const tt=fr(({addDefaultProperty:e=!1,logger:t,type:o})=>({name:"packem:cjs-interop",renderChunk(r,n,s){if(n.type!=="chunk"||!n.isEntry)return null;if(s.format==="cjs"&&s.exports==="auto"){const i=/(exports(?:\['default'\]|\.default)) = (.*);/i.exec(r);if(i===null||i.length<3)return null;const a=new P(r);a.replace("Object.defineProperty(exports, '__esModule', { value: true });",""),a.replaceAll(/exports\.(.*) = (.*);/g,"module.exports.$1 = $2;"),e&&a.append(`
18
+ module.exports.default = `+i[2]+";");let l=a.toString();return l=l.replace(/(?:module\.)?exports(?:\['default'\]|\.default)/i,"module.exports"),t.debug({message:"Applied CommonJS interop to entry chunk "+n.fileName+".",prefix:"plugin:cjs-interop"}),{code:l,map:a.generateMap({hires:!0})}}if(s.format==="es"&&/\.d\.(?:ts|cts)$/.test(n.fileName)){if(o!=="commonjs"&&n.fileName.endsWith(".d.ts"))return null;const i=/export\s\{\s(.*)\s\}/i.exec(r);if(i===null||i.length<2)return null;const a=i[1].split(", "),l=[];let c="";for(const u of a)if(!u.includes("type"))if(u.includes("as")){const[m,f]=u.split(" as ");if(f==="default"&&(c=m,!e))continue;l.push(f+": typeof "+m+";")}else l.push(u+": typeof "+u+";");const p=new P(r);return p.replace(" "+c+" as default,",""),p.append(`
19
19
 
20
20
  declare const defaultExport: {
21
21
  `+(l.length>0?" ":"")+l.join(`
22
22
  `)+`
23
23
  } & typeof `+c+`;
24
24
 
25
- export default defaultExport;`),t.debug({message:"Applied CommonJS interop to entry chunk "+r.fileName+".",prefix:"plugin:cjs-interop"}),{code:p.toString(),map:p.generateMap({hires:!0})}}return null}}),"cjsInterop");var fr=Object.defineProperty,gr=d((e,t)=>fr(e,"name",{value:t,configurable:!0}),"f$5");const hr=gr((e,t)=>{const o=new Map,n={copyOnce:!0,exactFileNames:!0,flatten:!1,...e};let{targets:r}=n;return Array.isArray(r)?r=r.map(s=>{if(typeof s=="string")return{src:s};if(typeof s=="object"&&"src"in s)return s}).filter(Boolean):typeof r=="string"&&(r=[{src:r}]),{async buildStart(){const s=await Promise.all(r.flatMap(i=>Array.isArray(i.src)?i.src.map(a=>({...i,src:a})):i).map(async i=>await ao(i.src,{ignore:i.exclude}).then(a=>({dest:i.dest??"",parent:lo(i.src),src:a}))));for(const i of s)for(const a of i.src){let l;o.has(a)?l=o.get(a):(l={copied:[],dest:[],timestamp:0},o.set(a,l));const c=n.flatten?ie(i.dest):y(i.dest,D(i.parent,le(a)));l.dest.includes(c)||l.dest.push(c),this.addWatchFile(a)}t.info({message:"Copying files...",prefix:"plugin:copy"}),await Promise.all([...o].map(async([i,a])=>{let l;try{const c=await Re(i);if(!c.isFile())return;const p=c.mtime.getTime();p>a.timestamp&&(a.timestamp=p,a.copied=[]),l=await se(i,{buffer:!0})}catch(c){t.error({context:[c],message:`error reading file ${i}`,prefix:"plugin:copy"});return}for(const c of a.dest){if(n.copyOnce&&a.copied.includes(c))continue;const p=H(i),u=y(c,p);try{this.emitFile({[n.exactFileNames?"fileName":"name"]:u,source:l,type:"asset"}),t.debug({message:`copied ${i} → ${u}`,prefix:"plugin:copy"}),a.copied.push(c)}catch(m){t.error({context:[m],message:`error copying file ${i} → ${u}`,prefix:"plugin:copy"})}}}))},name:"packem:copy"}},"copyPlugin");var yr=Object.defineProperty,xe=d((e,t)=>yr(e,"name",{value:t,configurable:!0}),"c$9");const vr=xe(e=>(t,o={})=>{const n=q(o.include,o.exclude),r={},s=xe((i,a)=>{r[i.replace(/\..?[jt]s$/,"")]=a},"addOutput");return{generateBundle(i,a){let{entryFileNames:l}=i;typeof l=="function"&&(l=l(a));const c=l.replace(/\.(.)?[jt]s$/,(p,u)=>`.d.${u||""}ts`);for(const[p,u]of Object.entries(r))this.emitFile({fileName:c.replace("[name]",D(e,p)),source:u,type:"asset"})},name:"packem:isolated-declarations",async transform(i,a){if(!n(a))return;const l=await t(a,i),{errors:c,sourceText:p}=l;c.length>0?o.ignoreErrors?this.warn(c[0]):this.error(c[0]):s(a,p)}}},"isolatedDeclarationsPlugin");var br=Object.defineProperty,$r=d((e,t)=>br(e,"name",{value:t,configurable:!0}),"n$2");const Ee="export default ",tt=$r(e=>{const t=co(e);return{...t,name:"packem:json",transform(o,n){const r=t.transform?.call(this,o,n);return r&&typeof r!="string"&&"code"in r&&r.code?.startsWith(Ee)&&(r.code=r.code.replace(Ee,"module.exports = ")),r}}},"JSONPlugin");class wr{static{d(this,"WalkerBase")}constructor(){this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(t=>this.replacement=t,"replace")}}replace(t,o,n,r){t&&o&&(n!=null?t[o][n]=r:t[o]=r)}remove(t,o,n){t&&o&&(n!=null?t[o].splice(n,1):delete t[o])}}class jr extends wr{static{d(this,"SyncWalker")}constructor(t,o){super(),this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(n=>this.replacement=n,"replace")},this.enter=t,this.leave=o}visit(t,o,n,r){if(t){if(this.enter){const i=this.should_skip,a=this.should_remove,l=this.replacement;this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.enter.call(this.context,t,o,n,r),this.replacement&&(t=this.replacement,this.replace(o,n,r,t)),this.should_remove&&this.remove(o,n,r);const c=this.should_skip,p=this.should_remove;if(this.should_skip=i,this.should_remove=a,this.replacement=l,c)return t;if(p)return null}let s;for(s in t){const i=t[s];if(i&&typeof i=="object")if(Array.isArray(i)){const a=i;for(let l=0;l<a.length;l+=1){const c=a[l];Oe(c)&&(this.visit(c,t,s,l)||l--)}}else Oe(i)&&this.visit(i,t,s,null)}if(this.leave){const i=this.replacement,a=this.should_remove;this.replacement=null,this.should_remove=!1,this.leave.call(this.context,t,o,n,r),this.replacement&&(t=this.replacement,this.replace(o,n,r,t)),this.should_remove&&this.remove(o,n,r);const l=this.should_remove;if(this.replacement=i,this.should_remove=a,l)return null}}return t}}function Oe(e){return e!==null&&typeof e=="object"&&"type"in e&&typeof e.type=="string"}d(Oe,"isNode");function ot(e,{enter:t,leave:o}){return new jr(t,o).visit(e,null)}d(ot,"walk");var kr=Object.defineProperty,xr=d((e,t)=>kr(e,"name",{value:t,configurable:!0}),"u$7");const Er=xr(({attributes:e,logger:t})=>{const o=q([/\.[tj]sx$/],/node_modules/);if(!Array.isArray(e)||e.length===0)throw new Error("[packem:jsx-remove-attributes]: attributes must be a non-empty array of strings.");return{name:"packem:jsx-remove-attributes",transform(n,r){if(!o(r))return null;let s=null;try{s=this.parse(n,{allowReturnOutsideFunction:!0})}catch(l){return this.warn({code:"PARSE_ERROR",message:`[packem:jsx-remove-attributes]: failed to parse "${r}" and remove the jsx attribute.`}),t.warn(l),null}let i=!1;const a=new P(n);return ot(s,{enter(l){if(l.type==="CallExpression"&&l.callee.type==="Identifier"&&l.callee.name==="jsx"){const c=l.arguments.filter(p=>p.type==="ObjectExpression"&&Array.isArray(p.properties));for(const p of c)for(const u of p.properties)u.type==="Property"&&u.key.type==="Literal"&&u.value.type==="Literal"&&e.includes(u.key.value)&&(a.overwrite(u.start-2,u.end,""),i=!0)}}}),i?{code:a.toString(),map:a.generateMap({hires:!0})}:null}}},"jsxRemoveAttributes");var Or=Object.defineProperty,fe=d((e,t)=>Or(e,"name",{value:t,configurable:!0}),"p$3");const Dr=fe(e=>{const t=[],o=[];return e.forEach(n=>{n.startsWith("(")?t.push(n):o.push(n)}),[...o.sort(),...t.sort()]},"sortLicenses"),Sr=fe((e,t,o)=>{const n=new RegExp(`(<!-- ${t} -->)[\\s\\S]*?(<!-- ${t} -->)`,"g");if(n.test(e))return e.replace(n,`$1
25
+ export default defaultExport;`),t.debug({message:"Applied CommonJS interop to entry chunk "+n.fileName+".",prefix:"plugin:cjs-interop"}),{code:p.toString(),map:p.generateMap({hires:!0})}}return null}}),"cjsInterop");var gr=Object.defineProperty,hr=d((e,t)=>gr(e,"name",{value:t,configurable:!0}),"f$5");const yr=hr((e,t)=>{const o=new Map,r={copyOnce:!0,exactFileNames:!0,flatten:!1,...e};let{targets:n}=r;return Array.isArray(n)?n=n.map(s=>{if(typeof s=="string")return{src:s};if(typeof s=="object"&&"src"in s)return s}).filter(Boolean):typeof n=="string"&&(n=[{src:n}]),{async buildStart(){const s=await Promise.all(n.flatMap(i=>Array.isArray(i.src)?i.src.map(a=>({...i,src:a})):i).map(async i=>await lo(i.src,{ignore:i.exclude}).then(a=>({dest:i.dest??"",parent:co(i.src),src:a}))));for(const i of s)for(const a of i.src){let l;o.has(a)?l=o.get(a):(l={copied:[],dest:[],timestamp:0},o.set(a,l));const c=r.flatten?ae(i.dest):h(i.dest,D(i.parent,ce(a)));l.dest.includes(c)||l.dest.push(c),this.addWatchFile(a)}t.info({message:"Copying files...",prefix:"plugin:copy"}),await Promise.all([...o].map(async([i,a])=>{let l;try{const c=await Te(i);if(!c.isFile())return;const p=c.mtime.getTime();p>a.timestamp&&(a.timestamp=p,a.copied=[]),l=await ie(i,{buffer:!0})}catch(c){t.error({context:[c],message:`error reading file ${i}`,prefix:"plugin:copy"});return}for(const c of a.dest){if(r.copyOnce&&a.copied.includes(c))continue;const p=H(i),u=h(c,p);try{this.emitFile({[r.exactFileNames?"fileName":"name"]:u,source:l,type:"asset"}),t.debug({message:`copied ${i} → ${u}`,prefix:"plugin:copy"}),a.copied.push(c)}catch(m){t.error({context:[m],message:`error copying file ${i} → ${u}`,prefix:"plugin:copy"})}}}))},name:"packem:copy"}},"copyPlugin");var vr=Object.defineProperty,Ee=d((e,t)=>vr(e,"name",{value:t,configurable:!0}),"c$9");const br=Ee(e=>(t,o={})=>{const r=q(o.include,o.exclude),n={},s=Ee((i,a)=>{n[i.replace(/\..?[jt]s$/,"")]=a},"addOutput");return{generateBundle(i,a){let{entryFileNames:l}=i;typeof l=="function"&&(l=l(a));const c=l.replace(/\.(.)?[jt]s$/,(p,u)=>`.d.${u||""}ts`);for(const[p,u]of Object.entries(n))this.emitFile({fileName:c.replace("[name]",D(e,p)),source:u,type:"asset"})},name:"packem:isolated-declarations",async transform(i,a){if(!r(a))return;const l=await t(a,i),{errors:c,sourceText:p}=l;c.length>0?o.ignoreErrors?this.warn(c[0]):this.error(c[0]):s(a,p)}}},"isolatedDeclarationsPlugin");var $r=Object.defineProperty,wr=d((e,t)=>$r(e,"name",{value:t,configurable:!0}),"n$2");const Oe="export default ",ot=wr(e=>{const t=po(e);return{...t,name:"packem:json",transform(o,r){const n=t.transform?.call(this,o,r);return n&&typeof n!="string"&&"code"in n&&n.code?.startsWith(Oe)&&(n.code=n.code.replace(Oe,"module.exports = ")),n}}},"JSONPlugin");class jr{static{d(this,"WalkerBase")}constructor(){this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(t=>this.replacement=t,"replace")}}replace(t,o,r,n){t&&o&&(r!=null?t[o][r]=n:t[o]=n)}remove(t,o,r){t&&o&&(r!=null?t[o].splice(r,1):delete t[o])}}class kr extends jr{static{d(this,"SyncWalker")}constructor(t,o){super(),this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(r=>this.replacement=r,"replace")},this.enter=t,this.leave=o}visit(t,o,r,n){if(t){if(this.enter){const i=this.should_skip,a=this.should_remove,l=this.replacement;this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.enter.call(this.context,t,o,r,n),this.replacement&&(t=this.replacement,this.replace(o,r,n,t)),this.should_remove&&this.remove(o,r,n);const c=this.should_skip,p=this.should_remove;if(this.should_skip=i,this.should_remove=a,this.replacement=l,c)return t;if(p)return null}let s;for(s in t){const i=t[s];if(i&&typeof i=="object")if(Array.isArray(i)){const a=i;for(let l=0;l<a.length;l+=1){const c=a[l];De(c)&&(this.visit(c,t,s,l)||l--)}}else De(i)&&this.visit(i,t,s,null)}if(this.leave){const i=this.replacement,a=this.should_remove;this.replacement=null,this.should_remove=!1,this.leave.call(this.context,t,o,r,n),this.replacement&&(t=this.replacement,this.replace(o,r,n,t)),this.should_remove&&this.remove(o,r,n);const l=this.should_remove;if(this.replacement=i,this.should_remove=a,l)return null}}return t}}function De(e){return e!==null&&typeof e=="object"&&"type"in e&&typeof e.type=="string"}d(De,"isNode");function rt(e,{enter:t,leave:o}){return new kr(t,o).visit(e,null)}d(rt,"walk");var xr=Object.defineProperty,Er=d((e,t)=>xr(e,"name",{value:t,configurable:!0}),"u$7");const Or=Er(({attributes:e,logger:t})=>{const o=q([/\.[tj]sx$/],/node_modules/);if(!Array.isArray(e)||e.length===0)throw new Error("[packem:jsx-remove-attributes]: attributes must be a non-empty array of strings.");return{name:"packem:jsx-remove-attributes",transform(r,n){if(!o(n))return null;let s=null;try{s=this.parse(r,{allowReturnOutsideFunction:!0})}catch(l){return this.warn({code:"PARSE_ERROR",message:`[packem:jsx-remove-attributes]: failed to parse "${n}" and remove the jsx attribute.`}),t.warn(l),null}let i=!1;const a=new P(r);return rt(s,{enter(l){if(l.type==="CallExpression"&&l.callee.type==="Identifier"&&l.callee.name==="jsx"){const c=l.arguments.filter(p=>p.type==="ObjectExpression"&&Array.isArray(p.properties));for(const p of c)for(const u of p.properties)u.type==="Property"&&u.key.type==="Literal"&&u.value.type==="Literal"&&e.includes(u.key.value)&&(a.overwrite(u.start-2,u.end,""),i=!0)}}}),i?{code:a.toString(),map:a.generateMap({hires:!0})}:null}}},"jsxRemoveAttributes");var Dr=Object.defineProperty,ge=d((e,t)=>Dr(e,"name",{value:t,configurable:!0}),"g$4");const Sr=ge(e=>{const t=[],o=[];return e.forEach(r=>{r.startsWith("(")?t.push(r):o.push(r)}),[...o.sort(),...t.sort()]},"sortLicenses"),Nr=ge((e,t,o)=>{const r=new RegExp(`(<!-- ${t} -->)[\\s\\S]*?(<!-- ${t} -->)`,"g");if(r.test(e))return e.replace(r,`$1
26
26
  ${o}
27
- $2`)},"replaceContentWithin"),rt=fe(({licenseFilePath:e,licenseTemplate:t,logger:o,marker:n,mode:r,packageName:s})=>po({thirdParty(i){const a=new Set,l=i.sort(({name:p},{name:u})=>(p||0)>(u||0)?1:(u||0)>(p||0)?-1:0).map(({author:p,contributors:u,license:m,licenseText:f,maintainers:b,name:$,repository:k})=>{let h="## "+$+`
28
- `;m&&(h+=`License: ${m}
29
- `);const R=new Set;for(const T of[p,...b,...u]){const ye=typeof T=="string"?T:T?.name;ye&&R.add(ye)}return R.size>0&&(h+=`By: ${[...R].join(", ")}
30
- `),k&&(h+=`Repository: ${typeof k=="string"?k:k.url}
31
- `),f&&(h+=`
32
- `+f.trim().replaceAll(/\r\n|\r/g,`
33
- `).split(`
34
- `).map(T=>`> ${T}`).join(`
27
+ $2`)},"replaceContentWithin"),nt=ge(({dtsMarker:e,licenseFilePath:t,licenseTemplate:o,logger:r,marker:n,mode:s,packageName:i})=>uo({thirdParty(a){const l=new Set,c=a.sort(({name:u},{name:m})=>(u||0)>(m||0)?1:(m||0)>(u||0)?-1:0).map(({author:u,contributors:m,license:f,licenseText:b,maintainers:$,name:E,repository:y})=>{let _="## "+E+`
28
+ `;f&&(_+=`License: ${f}
29
+ `);const Y=new Set;for(const R of[u,...$,...m]){const ve=typeof R=="string"?R:R?.name;ve&&Y.add(ve)}return Y.size>0&&(_+=`By: ${[...Y].join(", ")}
30
+ `),y&&(_+=`Repository: ${typeof y=="string"?y:y.url}
31
+ `),b&&(_+=`
32
+ `+b.trim().replaceAll(/\r\n|\r/g,`
33
+ `).replaceAll(`<!-- ${n} -->`,"").replaceAll(e?`<!-- ${e} -->`:"","").trim().split(`
34
+ `).map(R=>R?`> ${R}`:">").join(`
35
35
  `)+`
36
- `),m&&a.add(m),h}).join(`
36
+ `),f&&l.add(f),_}).join(`
37
37
  ---------------------------------------
38
38
 
39
- `);if(l===""){o.info({message:"No dependencies license information found.",prefix:"plugin:license:"+r});return}const c=t(Dr(a),l,s);try{const p=Te(e),u=Sr(p,n,c);if(!u){o.error({message:`Could not find the license marker: <!-- ${n} --> in ${e}`,prefix:"plugin:license:"+r});return}p!==u&&(U(e,u),o.info({message:`${e} updated.`,prefix:"plugin:license:"+r}))}catch(p){o.error(p)}}}),"license");var Nr=Object.defineProperty,Pr=d((e,t)=>Nr(e,"name",{value:t,configurable:!0}),"i$9");const _r=Pr(e=>({async buildEnd(){const t=[];for(const n of this.getModuleIds()){const r=this.getModuleInfo(n);if(r!=null&&!r.isExternal)for(const s of r.importedIds)t.push({source:n,target:s})}if(Array.isArray(t)&&t.length===0)return;const o=g(e.rootDir,e.outDir,"graph.json");Bt(o,t)},name:"packem:metafile"}),"metafilePlugin");var Cr=Object.defineProperty,Mr=d((e,t)=>Cr(e,"name",{value:t,configurable:!0}),"r$6");const C=Mr(e=>{const t=uo("md5");return t.update(e),t.digest("hex")},"getHash");var Ir=Object.defineProperty,nt=d((e,t)=>Ir(e,"name",{value:t,configurable:!0}),"m$5");const A=nt(e=>e.handler||e,"getHandler"),x=nt((e,t)=>({...e,async buildEnd(o){e.buildEnd&&await A(e.buildEnd).call(this,o)},async buildStart(o){e.buildStart&&await A(e.buildStart).call(this,o)},async load(o){if(!e.load)return null;const n=y("load",C(o));if(t.has(n,e.name))return await t.get(n,e.name);const r=await A(e.load).call(this,o);return t.set(n,r,e.name),r},name:`cached(${e.name})`,async resolveId(o,n,r){if(!e.resolveId)return null;const s=y("resolveId",C(o),n?C(n):"",C(JSON.stringify(r)));if(t.has(s,e.name))return await t.get(s,e.name);const i=await A(e.resolveId).call(this,o,n,r);return t.set(s,i,e.name),i},async transform(o,n){if(!e.transform)return null;const r=y("transform",C(n),C(o));if(t.has(r,e.name))return await t.get(r,e.name);const s=await A(e.transform).call(this,o,n);return t.set(r,s,e.name),s}}),"cachingPlugin");var Fr=Object.defineProperty,Rr=d((e,t)=>Fr(e,"name",{value:t,configurable:!0}),"c$7");const Tr=/\.(?:m|c)?(?:j|t)sx?$/,Ar=/^use \w+$/,Br=Rr(e=>{const t={},o={};return{name:"packem:preserve-directives",onLog(n,r){return r.code==="MODULE_LEVEL_DIRECTIVE"&&n==="warn"?!1:null},renderChunk:{handler(n,r,{sourcemap:s}){const i=r.moduleIds.map(c=>t[c]?t[c]:null).reduce((c,p)=>(p&&p.forEach(u=>{c.add(u)}),c),new Set),a=new P(n);i.size>0&&(e.debug({message:`directives for chunk "${r.fileName}" are preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${[...i].map(c=>`'${c}';`).join(`
39
+ `);if(c===""){r.info({message:"No dependencies license information found.",prefix:"plugin:license:"+s});return}const p=o(Sr(l),c,i);try{const u=Ae(t),m=Nr(u,n,p);if(!m){r.error({message:`Could not find the license marker: <!-- ${n} --> in ${t}`,prefix:"plugin:license:"+s});return}u!==m&&(U(t,m),r.info({message:`${t} updated.`,prefix:"plugin:license:"+s}))}catch(u){r.error(u)}}}),"license");var Pr=Object.defineProperty,_r=d((e,t)=>Pr(e,"name",{value:t,configurable:!0}),"i$9");const Cr=_r(e=>({async buildEnd(){const t=[];for(const r of this.getModuleIds()){const n=this.getModuleInfo(r);if(n!=null&&!n.isExternal)for(const s of n.importedIds)t.push({source:r,target:s})}if(Array.isArray(t)&&t.length===0)return;const o=g(e.rootDir,e.outDir,"graph.json");Jt(o,t)},name:"packem:metafile"}),"metafilePlugin");var Mr=Object.defineProperty,Ir=d((e,t)=>Mr(e,"name",{value:t,configurable:!0}),"r$6");const M=Ir(e=>{const t=mo("md5");return t.update(e),t.digest("hex")},"getHash");var Fr=Object.defineProperty,st=d((e,t)=>Fr(e,"name",{value:t,configurable:!0}),"m$5");const A=st(e=>e.handler||e,"getHandler"),k=st((e,t)=>({...e,async buildEnd(o){e.buildEnd&&await A(e.buildEnd).call(this,o)},async buildStart(o){e.buildStart&&await A(e.buildStart).call(this,o)},async load(o){if(!e.load)return null;const r=h("load",M(o));if(t.has(r,e.name))return await t.get(r,e.name);const n=await A(e.load).call(this,o);return t.set(r,n,e.name),n},name:`cached(${e.name})`,async resolveId(o,r,n){if(!e.resolveId)return null;const s=h("resolveId",M(o),r?M(r):"",M(JSON.stringify(n)));if(t.has(s,e.name))return await t.get(s,e.name);const i=await A(e.resolveId).call(this,o,r,n);return t.set(s,i,e.name),i},async transform(o,r){if(!e.transform)return null;const n=h("transform",M(r),M(o));if(t.has(n,e.name))return await t.get(n,e.name);const s=await A(e.transform).call(this,o,r);return t.set(n,s,e.name),s}}),"cachingPlugin");var Rr=Object.defineProperty,Tr=d((e,t)=>Rr(e,"name",{value:t,configurable:!0}),"c$7");const Ar=/\.(?:m|c)?(?:j|t)sx?$/,Br=/^use \w+$/,Jr=Tr(e=>{const t={},o={};return{name:"packem:preserve-directives",onLog(r,n){return n.code==="MODULE_LEVEL_DIRECTIVE"&&r==="warn"?!1:null},renderChunk:{handler(r,n,{sourcemap:s}){const i=n.moduleIds.map(c=>t[c]?t[c]:null).reduce((c,p)=>(p&&p.forEach(u=>{c.add(u)}),c),new Set),a=new P(r);i.size>0&&(e.debug({message:`directives for chunk "${n.fileName}" are preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${[...i].map(c=>`'${c}';`).join(`
40
40
  `)}
41
- `));let l=null;return r.facadeModuleId&&typeof o[r.facadeModuleId]=="string"&&(l=o[r.facadeModuleId]),l&&(e.debug({message:`shebang for chunk "${r.fileName}" is preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${l}
42
- `)),i.size===0&&l===null?null:{code:a.toString(),map:s?a.generateMap({hires:!0}):null}},order:"post"},transform:{handler(n,r){const s=ae(r);if(!Tr.test(s))return null;let i=!1;const a=new P(n);if(n.startsWith("#")&&n[1]==="!"){let c=0;for(let p=2,u=n.length;p<u;p++){const m=n.codePointAt(p);if(m===10||m===13||m===8232||m===8233){c=p;break}}c&&(o[r]=n.slice(0,c),a.remove(0,c+1),i=!0,e.debug({message:`shebang for module "${r}" is preserved.`,prefix:"plugin:preserve-directives"}))}let l=null;try{l=this.parse(a.toString(),{allowReturnOutsideFunction:!0})}catch(c){return this.warn({code:"PARSE_ERROR",message:`[packem:preserve-directives]: failed to parse "${r}" and extract the directives.`}),e.warn(c),null}if(l.type!=="Program")return null;for(const c of l.body.filter(Boolean)){if(c.type!=="ExpressionStatement")break;let p=null;"directive"in c?p=c.directive:c.expression.type==="Literal"&&typeof c.expression.value=="string"&&Ar.test(c.expression.value)&&(p=c.expression.value),p!=="use strict"&&p&&(t[r]||=new Set,t[r].add(p),"start"in c&&typeof c.start=="number"&&"end"in c&&typeof c.end=="number"&&(a.remove(c.start,c.end),i=!0),e.debug({message:`directive "${p}" for module "${r}" is preserved.`,prefix:"plugin:preserve-directives"}))}return i?{code:a.toString(),map:a.generateMap({hires:!0}),meta:{preserveDirectives:{directives:[...t[r]??[]],shebang:o[r]??null}}}:null},order:"post"}}},"preserveDirectives");var Jr=Object.defineProperty,Wr=d((e,t)=>Jr(e,"name",{value:t,configurable:!0}),"r$5");const Lr={exclude:[],include:[/\.(md|txt|css|htm|html)$/]},zr=Wr((e={})=>{e={...e,...Lr};const t=q(e.include,e.exclude);return{name:"packem:raw",transform(o,n){return t(n)?{code:`export default ${JSON.stringify(o)}`,map:null}:null}}},"rawPlugin");var Ur=Object.defineProperty,Vr=d((e,t)=>Ur(e,"name",{value:t,configurable:!0}),"l$4");const Z="\0__file_url__",st=Vr(()=>({async load(e){if(e.startsWith(Z)){const t=Zt(e.slice(Z.length));return await se(t)}},name:"packem:resolve-file-url",resolveId(e){if(e.startsWith("file://"))return`${Z}${e}`}}),"resolveFileUrl");var Hr=Object.defineProperty,it=d((e,t)=>Hr(e,"name",{value:t,configurable:!0}),"i$5");const qr=/__filename|__dirname|require\(|require\.resolve\(/,at=`
41
+ `));let l=null;return n.facadeModuleId&&typeof o[n.facadeModuleId]=="string"&&(l=o[n.facadeModuleId]),l&&(e.debug({message:`shebang for chunk "${n.fileName}" is preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${l}
42
+ `)),i.size===0&&l===null?null:{code:a.toString(),map:s?a.generateMap({hires:!0}):null}},order:"post"},transform:{handler(r,n){const s=le(n);if(!Ar.test(s))return null;let i=!1;const a=new P(r);if(r.startsWith("#")&&r[1]==="!"){let c=0;for(let p=2,u=r.length;p<u;p++){const m=r.codePointAt(p);if(m===10||m===13||m===8232||m===8233){c=p;break}}c&&(o[n]=r.slice(0,c),a.remove(0,c+1),i=!0,e.debug({message:`shebang for module "${n}" is preserved.`,prefix:"plugin:preserve-directives"}))}let l=null;try{l=this.parse(a.toString(),{allowReturnOutsideFunction:!0})}catch(c){return this.warn({code:"PARSE_ERROR",message:`[packem:preserve-directives]: failed to parse "${n}" and extract the directives.`}),e.warn(c),null}if(l.type!=="Program")return null;for(const c of l.body.filter(Boolean)){if(c.type!=="ExpressionStatement")break;let p=null;"directive"in c?p=c.directive:c.expression.type==="Literal"&&typeof c.expression.value=="string"&&Br.test(c.expression.value)&&(p=c.expression.value),p!=="use strict"&&p&&(t[n]||=new Set,t[n].add(p),"start"in c&&typeof c.start=="number"&&"end"in c&&typeof c.end=="number"&&(a.remove(c.start,c.end),i=!0),e.debug({message:`directive "${p}" for module "${n}" is preserved.`,prefix:"plugin:preserve-directives"}))}return i?{code:a.toString(),map:a.generateMap({hires:!0}),meta:{preserveDirectives:{directives:[...t[n]??[]],shebang:o[n]??null}}}:null},order:"post"}}},"preserveDirectives");var Wr=Object.defineProperty,Lr=d((e,t)=>Wr(e,"name",{value:t,configurable:!0}),"r$5");const zr={exclude:[],include:[/\.(md|txt|css|htm|html)$/]},Ur=Lr((e={})=>{e={...e,...zr};const t=q(e.include,e.exclude);return{name:"packem:raw",transform(o,r){return t(r)?{code:`export default ${JSON.stringify(o)}`,map:null}:null}}},"rawPlugin");var Vr=Object.defineProperty,Hr=d((e,t)=>Vr(e,"name",{value:t,configurable:!0}),"l$4");const Q="\0__file_url__",it=Hr(()=>({async load(e){if(e.startsWith(Q)){const t=Qt(e.slice(Q.length));return await ie(t)}},name:"packem:resolve-file-url",resolveId(e){if(e.startsWith("file://"))return`${Q}${e}`}}),"resolveFileUrl");var qr=Object.defineProperty,at=d((e,t)=>qr(e,"name",{value:t,configurable:!0}),"i$5");const Gr=/__filename|__dirname|require\(|require\.resolve\(/,lt=`
43
43
  // -- pack CommonJS Shims --
44
44
  import __cjs_url__ from "node:url";
45
45
  import __cjs_path__ from "node:path";
@@ -47,75 +47,77 @@ import __cjs_mod__ from "node:module";
47
47
  const __filename = __cjs_url__.fileURLToPath(import.meta.url);
48
48
  const __dirname = __cjs_path__.dirname(__filename);
49
49
  const require = __cjs_mod__.createRequire(import.meta.url);
50
- `,lt=`
50
+ `,ct=`
51
51
  // -- pack CommonJS Shims Node 20.11 --
52
52
  import __cjs_mod__ from "node:module";
53
53
  const __filename = import.meta.filename;
54
54
  const __dirname = import.meta.dirname;
55
55
  const require = __cjs_mod__.createRequire(import.meta.url);
56
- `,Gr=it((e,t)=>{if(O.INTERNAL_PACKEM_BUILD!=="1"&&(e.includes(at)||e.includes(lt)||!qr.test(e)))return null;const o=ze(e).pop(),n=o?o.end:0,r=new P(e);return r.appendRight(n,t),{code:r.toString(),map:r.generateMap()}},"CJSToESM"),Yr=it(e=>({name:"packem:cjs",renderChunk(t,o,n){if(n.format==="es"){let r=at;if(e.engines?.node){const s=qe(e.engines.node);s&&s.major>=20&&s.minor>=11&&(r=lt)}return Gr(t,r)}return null}}),"cjsPlugin");var Kr=Object.defineProperty,I=d((e,t)=>Kr(e,"name",{value:t,configurable:!0}),"r$4");const Xr=/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g,Zr=/MIT License|MIT license|BSD license/,Qr=/\n{2,}/g,en=/\b(\w+)\$\d+\b/g,tn=/[-/\\^$*+?.()|[\]{}]/g,on=I(e=>e.replaceAll(tn,"\\$&"),"escapeRegex"),rn=I(e=>[...new Set(e)],"unique"),nn=I(e=>e.replaceAll(Xr,t=>Zr.test(t)?"":t).replaceAll(Qr,`
56
+ `,Yr=at((e,t)=>{if(O.INTERNAL_PACKEM_BUILD!=="1"&&(e.includes(lt)||e.includes(ct)||!Gr.test(e)))return null;const o=Ue(e).pop(),r=o?o.end:0,n=new P(e);return n.appendRight(r,t),{code:n.toString(),map:n.generateMap()}},"CJSToESM"),Kr=at(e=>({name:"packem:cjs",renderChunk(t,o,r){if(r.format==="es"){let n=lt;if(e.engines?.node){const s=Ge(e.engines.node);s&&s.major>=20&&s.minor>=11&&(n=ct)}return Yr(t,n)}return null}}),"cjsPlugin");var Xr=Object.defineProperty,F=d((e,t)=>Xr(e,"name",{value:t,configurable:!0}),"r$4");const Zr=/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g,Qr=/MIT License|MIT license|BSD license/,en=/\n{2,}/g,tn=/\b(\w+)\$\d+\b/g,on=/[-/\\^$*+?.()|[\]{}]/g,rn=F(e=>e.replaceAll(on,"\\$&"),"escapeRegex"),nn=F(e=>[...new Set(e)],"unique"),sn=F(e=>e.replaceAll(Zr,t=>Qr.test(t)?"":t).replaceAll(en,`
57
57
 
58
- `),"cleanUnnecessaryComments"),De=new Map;function ct(e,t,{identifierReplacements:o},n){const r=ze(e);for(const i in o){const a=r.find(c=>c.specifier===i&&c.imports.includes("{"));if(!a){this.warn(`${t.fileName} does not import "${i}" for replacement`),process.exitCode=1;continue}const l=o[i];for(const c in l){if(!a.imports.includes(c))throw new Error(`${t.fileName} does not import "${c}" from "${i}" for replacement`);const p=l[c],u=on(c);p.includes(".")&&(e=e.replace(new RegExp(`\\b\\w+\\b as ${u},?\\s?`),"")),e=e.replaceAll(new RegExp(`\\b${u}\\b`,"g"),p)}}const s=rn(Array.from(e.matchAll(en),i=>i[0]));if(s.length>0){const i=s.map(l=>`
59
- - ${l}`).join(""),a=t.fileName.replace(/\.[^/.]+$/,"");De.has(a)||n.warn({message:`${t.fileName} contains confusing identifier names${i}
58
+ `),"cleanUnnecessaryComments"),Se=new Map;function pt(e,t,{identifierReplacements:o},r){const n=Ue(e);for(const i in o){const a=n.find(c=>c.specifier===i&&c.imports.includes("{"));if(!a){this.warn(`${t.fileName} does not import "${i}" for replacement`),process.exitCode=1;continue}const l=o[i];for(const c in l){if(!a.imports.includes(c))throw new Error(`${t.fileName} does not import "${c}" from "${i}" for replacement`);const p=l[c],u=rn(c);p.includes(".")&&(e=e.replace(new RegExp(`\\b\\w+\\b as ${u},?\\s?`),"")),e=e.replaceAll(new RegExp(`\\b${u}\\b`,"g"),p)}}const s=nn(Array.from(e.matchAll(tn),i=>i[0]));if(s.length>0){const i=s.map(l=>`
59
+ - ${l}`).join(""),a=t.fileName.replace(/\.[^/.]+$/,"");Se.has(a)||r.warn({message:`${t.fileName} contains confusing identifier names${i}
60
60
 
61
- To replace these, add them to the "rollup -> patchTypes -> identifierReplacements" option in your packem config.`,prefix:"plugin:patch-types"}),De.set(a,!0)}return e}d(ct,"I$1");I(ct,"replaceConfusingTypeNames");function pt(e,t){if(t.leadingComments?.some(o=>o.type==="CommentBlock"&&o.value.includes("@internal"))){const o=e.original[t.end]===","?t.end+1:t.end;return e.remove(t.leadingComments[0].start,o),!0}return!1}d(pt,"N");I(pt,"removeInternal");function ut(e,t){if(e.includes("@internal")){const o=new P(e),n=mo(e,{plugins:["typescript"],sourceType:"module"});if(ot(n,{enter(r){pt(o,r)&&this.skip()}}),e=o.toString(),e.includes("@internal"))throw new Error(`${t.fileName} has unhandled @internal declarations`)}return e}d(ut,"S");I(ut,"stripInternalTypes");const sn=I((e,t)=>({name:"packem:patch-types",renderChunk(o,n){return o=ct.call(this,o,n,e,t),o=ut.call(this,o,n),o=nn(o),o},resolveId(o){return o.startsWith("types/")?{external:!0,id:"../../"+(o.endsWith(".js")?o:o+".js")}:null}}),"patchTypescriptTypes");var an=Object.defineProperty,dt=d((e,t)=>an(e,"name",{value:t,configurable:!0}),"u$5");const mt=dt((e,t=!0)=>{if(!e)return null;const{config:o,path:n}=e;if(!o.compilerOptions)return null;const{baseUrl:r,paths:s}=o.compilerOptions;if(!r)return null;const i=g(le(n),r),a=[];if(s)for(const[l,c]of Object.entries(s)){const p=new RegExp(`^${[...l].map(m=>m==="*"?"(.+)":m.replace(/[\\^$*+?.()|[\]{}]/,"\\$&")).join("")}$`);let u=0;for(const m of c){const f=[...we(g(i,m))].map(b=>b==="*"?"$"+(++u+""):b==="$"?"$$":b).join("");a.push({find:p,replacement:f})}}return t&&a.push({find:/^(?!\.*\/|\.*$|\w:)(.+)$/,replacement:`${[...we(i)].map(l=>l==="$"?"$$":l).join("")}/$1`}),a},"getConfigAlias"),ft=dt((e,t)=>{const o=mt(e);return{name:"packem:resolve-tsconfig-paths",async resolveId(n,r,s){if(!o||n.includes("\0"))return null;for(const{find:i,replacement:a}of o)if(i.test(n)){const l=n.replace(i,a),c=await this.resolve(l,r,{skipSelf:!0,...s});if(c)return t.debug({message:`Resolved ${n} to ${c.id} using paths from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-paths"}),c.id}return null}}},"resolveTsconfigPaths");var ln=Object.defineProperty,gt=d((e,t)=>ln(e,"name",{value:t,configurable:!0}),"u$4");const cn=gt((e,t)=>{if(!t)return null;const{config:o,path:n}=t;if(!o.compilerOptions)return null;const{rootDirs:r}=o.compilerOptions;if(!r)return null;const s=[];for(const i of r){if(i.startsWith("."))throw new Error(`Invalid rootDir value '.' in ${n}.`);if(i.startsWith(".."))throw new Error(`Invalid rootDir value '..' in ${n}.`);s.push(g(e,i))}return s},"getRootDirectories"),ht=gt((e,t,o)=>{const n=cn(e,o);return{name:"packem:resolve-tsconfig-root-dirs",async resolveId(r,s,i){if(n===null||n.length===0)return null;if(r.startsWith("."))for(const a of n){const l=y(a,r),c=await this.resolve(l,s,{skipSelf:!0,...i});if(c)return t.debug({message:`Resolved ${r} to ${c.id} using rootDirs from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-root-dirs"}),c.id}return null}}},"resolveTsconfigRootDirectories");var pn=Object.defineProperty,un=d((e,t)=>pn(e,"name",{value:t,configurable:!0}),"r$3");const yt=un(()=>{const e=/\.(?:[mc]?js|jsx)$/;return{name:"packem:resolve-typescript-mjs-cjs",async resolveId(t,o,n){return e.test(t)&&o?await this.resolve(t.replace(/js(x?)$/,"ts$1"),o,n):null}}},"resolveTypescriptMjsCts");var dn=Object.defineProperty,mn=d((e,t)=>dn(e,"name",{value:t,configurable:!0}),"s$9");const fn=mn(e=>{const t=H(e).split(".");if(t.length>=2){const[o,n]=t.slice(-2),r=t[0],s=/^(\w+)-runtime$/.exec(o)?.[1];if(F.includes(n)&&s&&s.length>0)return r+"-"+s}},"getCustomModuleLayer");var gn=Object.defineProperty,hn=d((e,t)=>gn(e,"name",{value:t,configurable:!0}),"i$4");const Q=hn(e=>(e.preserveDirectives||{directives:[]}).directives.map(t=>t.replace(/^use /,"")).find(t=>t!=="strict"),"getModuleLayer");var yn=Object.defineProperty,Se=d((e,t)=>yn(e,"name",{value:t,configurable:!0}),"c$5");const Ne=Se((e,t)=>{const o=new Map;return Se(function(n,r){const s=r.getModuleInfo(n);if(!s)return;const{isEntry:i}=s,a=s.meta,l=Q(a);if(!i){const c=o.get(n);if(c)return c;const p=fn(n);if(p)return o.set(n,p),p}if(i){const c=r.getModuleIds();for(const p of c)r.getModuleInfo(p)&&Q(a)===l&&(e.has(p)||e.set(p,new Set),e.get(p).add([n,l]))}if(l&&!i&&e.has(n)){const c=[...e.get(n)];if(c.some(([u])=>{if(t.some(m=>m.path===u)){const m=r.getModuleInfo(u);return Q(m?m.meta:{})===l}return!1}))return;if(c.every(([,u])=>u===l))return o.has(n)?o.get(n):void 0;const p=`${H(n,ae(n))}-${l}`;return o.set(n,p),p}},"splitChunks")},"createSplitChunks");var vn=Object.defineProperty,bn=d((e,t)=>vn(e,"name",{value:t,configurable:!0}),"n");const N=bn((e,t,o)=>t.isDynamicEntry?`chunks/[name].${o}`:`shared/${e.options.name}.[hash].${o}`,"getChunkFilename");var $n=Object.defineProperty,wn=d((e,t)=>$n(e,"name",{value:t,configurable:!0}),"s$7");const jn=process.platform==="win32",Pe=wn((e,t)=>{const o=jn?"\\":"/";return e.name?.includes("node_modules"+o+".pnpm")?(e.name.replace("node_modules"+o+".pnpm","external")+"."+t).replace("node_modules"+o,""):e.name?.includes("node_modules")?e.name.replace("node_modules","external")+"."+t:"[name]."+t},"getEntryFileNames");var kn=Object.defineProperty,w=d((e,t)=>kn(e,"name",{value:t,configurable:!0}),"p$2");const xn=w((e,t)=>{if(e==="esbuild"){if(!t.options.rollup.esbuild)throw new Error("No esbuild options found in your configuration.");t.tsconfig?.config.compilerOptions?.target?.toLowerCase()==="es3"&&(t.logger.warn(["ES3 target is not supported by esbuild, so ES5 will be used instead..","Please set 'target' option in tsconfig to at least ES5 to disable this error"].join(" ")),t.tsconfig.config.compilerOptions.target="es5",t.options.rollup.esbuild.target="es5");let o="node"+Pt.node.split(".")[0];if(t.pkg.engines?.node){const n=qe(t.pkg.engines.node);n&&(o="node"+n.major)}if(t.options.rollup.esbuild.target){const n=X(t.options.rollup.esbuild.target);n.some(r=>r.startsWith("node"))||(t.options.rollup.esbuild.target=[...new Set([...X(o),...n])])}else t.options.rollup.esbuild.target=X(o);return t.tsconfig?.config.compilerOptions?.target==="es5"&&(t.options.rollup.esbuild.keepNames=!1,t.logger.debug("Disabling keepNames because target is set to es5")),{logger:t.logger,minify:t.options.minify,minifyWhitespace:t.options.minify,sourceMap:t.options.sourcemap,...t.options.rollup.esbuild}}if(e==="swc"){if(!t.options.rollup.swc)throw new Error("No swc options found in your configuration.");return{minify:t.options.minify,...t.options.rollup.swc,jsc:{minify:{compress:{directives:!1},format:{comments:"some"},mangle:{toplevel:!0},sourceMap:t.options.sourcemap,toplevel:t.options.emitCJS??t.options.emitESM},...t.options.rollup.swc.jsc},sourceMaps:t.options.sourcemap}}if(e==="sucrase"){if(!t.options.rollup.sucrase)throw new Error("No sucrase options found in your configuration.");return{...t.options.rollup.sucrase}}throw new Error("A Unknown transformer was provided")},"getTransformerConfig"),vt=w((e,t)=>{if(e.code==="CIRCULAR_DEPENDENCY"&&/Circular dependency:[\s\S]*node_modules/.test(e.message))return!0;if(e.code==="UNRESOLVED_IMPORT")throw new Error(`Failed to resolve the module "${e.exporter}" imported by "${v(D(g(),e.id))}"
61
+ To replace these, add them to the "rollup -> patchTypes -> identifierReplacements" option in your packem config.`,prefix:"plugin:patch-types"}),Se.set(a,!0)}return e}d(pt,"I$1");F(pt,"replaceConfusingTypeNames");function ut(e,t){if(t.leadingComments?.some(o=>o.type==="CommentBlock"&&o.value.includes("@internal"))){const o=e.original[t.end]===","?t.end+1:t.end;return e.remove(t.leadingComments[0].start,o),!0}return!1}d(ut,"N");F(ut,"removeInternal");function dt(e,t){if(e.includes("@internal")){const o=new P(e),r=fo(e,{plugins:["typescript"],sourceType:"module"});if(rt(r,{enter(n){ut(o,n)&&this.skip()}}),e=o.toString(),e.includes("@internal"))throw new Error(`${t.fileName} has unhandled @internal declarations`)}return e}d(dt,"S");F(dt,"stripInternalTypes");const an=F((e,t)=>({name:"packem:patch-types",renderChunk(o,r){return o=pt.call(this,o,r,e,t),o=dt.call(this,o,r),o=sn(o),o},resolveId(o){return o.startsWith("types/")?{external:!0,id:"../../"+(o.endsWith(".js")?o:o+".js")}:null}}),"patchTypescriptTypes");var ln=Object.defineProperty,mt=d((e,t)=>ln(e,"name",{value:t,configurable:!0}),"u$5");const ft=mt((e,t=!0)=>{if(!e)return null;const{config:o,path:r}=e;if(!o.compilerOptions)return null;const{baseUrl:n,paths:s}=o.compilerOptions;if(!n)return null;const i=g(ce(r),n),a=[];if(s)for(const[l,c]of Object.entries(s)){const p=new RegExp(`^${[...l].map(m=>m==="*"?"(.+)":m.replace(/[\\^$*+?.()|[\]{}]/,"\\$&")).join("")}$`);let u=0;for(const m of c){const f=[...je(g(i,m))].map(b=>b==="*"?"$"+(++u+""):b==="$"?"$$":b).join("");a.push({find:p,replacement:f})}}return t&&a.push({find:/^(?!\.*\/|\.*$|\w:)(.+)$/,replacement:`${[...je(i)].map(l=>l==="$"?"$$":l).join("")}/$1`}),a},"getConfigAlias"),gt=mt((e,t)=>{const o=ft(e);return{name:"packem:resolve-tsconfig-paths",async resolveId(r,n,s){if(!o||r.includes("\0"))return null;for(const{find:i,replacement:a}of o)if(i.test(r)){const l=r.replace(i,a),c=await this.resolve(l,n,{skipSelf:!0,...s});if(c)return t.debug({message:`Resolved ${r} to ${c.id} using paths from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-paths"}),c.id}return null}}},"resolveTsconfigPaths");var cn=Object.defineProperty,ht=d((e,t)=>cn(e,"name",{value:t,configurable:!0}),"u$4");const pn=ht((e,t)=>{if(!t)return null;const{config:o,path:r}=t;if(!o.compilerOptions)return null;const{rootDirs:n}=o.compilerOptions;if(!n)return null;const s=[];for(const i of n){if(i.startsWith("."))throw new Error(`Invalid rootDir value '.' in ${r}.`);if(i.startsWith(".."))throw new Error(`Invalid rootDir value '..' in ${r}.`);s.push(g(e,i))}return s},"getRootDirectories"),yt=ht((e,t,o)=>{const r=pn(e,o);return{name:"packem:resolve-tsconfig-root-dirs",async resolveId(n,s,i){if(r===null||r.length===0)return null;if(n.startsWith("."))for(const a of r){const l=h(a,n),c=await this.resolve(l,s,{skipSelf:!0,...i});if(c)return t.debug({message:`Resolved ${n} to ${c.id} using rootDirs from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-root-dirs"}),c.id}return null}}},"resolveTsconfigRootDirectories");var un=Object.defineProperty,dn=d((e,t)=>un(e,"name",{value:t,configurable:!0}),"r$3");const vt=dn(()=>{const e=/\.(?:[mc]?js|jsx)$/;return{name:"packem:resolve-typescript-mjs-cjs",async resolveId(t,o,r){return e.test(t)&&o?await this.resolve(t.replace(/js(x?)$/,"ts$1"),o,r):null}}},"resolveTypescriptMjsCts");var mn=Object.defineProperty,fn=d((e,t)=>mn(e,"name",{value:t,configurable:!0}),"s$9");const gn=fn(e=>{const t=H(e).split(".");if(t.length>=2){const[o,r]=t.slice(-2),n=t[0],s=/^(\w+)-runtime$/.exec(o)?.[1];if(T.includes(r)&&s&&s.length>0)return n+"-"+s}},"getCustomModuleLayer");var hn=Object.defineProperty,yn=d((e,t)=>hn(e,"name",{value:t,configurable:!0}),"i$4");const ee=yn(e=>(e.preserveDirectives||{directives:[]}).directives.map(t=>t.replace(/^use /,"")).find(t=>t!=="strict"),"getModuleLayer");var vn=Object.defineProperty,Ne=d((e,t)=>vn(e,"name",{value:t,configurable:!0}),"c$5");const Pe=Ne((e,t)=>{const o=new Map;return Ne(function(r,n){const s=n.getModuleInfo(r);if(!s)return;const{isEntry:i}=s,a=s.meta,l=ee(a);if(!i){const c=o.get(r);if(c)return c;const p=gn(r);if(p)return o.set(r,p),p}if(i){const c=n.getModuleIds();for(const p of c)n.getModuleInfo(p)&&ee(a)===l&&(e.has(p)||e.set(p,new Set),e.get(p).add([r,l]))}if(l&&!i&&e.has(r)){const c=[...e.get(r)];if(c.some(([u])=>{if(t.some(m=>m.path===u)){const m=n.getModuleInfo(u);return ee(m?m.meta:{})===l}return!1}))return;if(c.every(([,u])=>u===l))return o.has(r)?o.get(r):void 0;const p=`${H(r,le(r))}-${l}`;return o.set(r,p),p}},"splitChunks")},"createSplitChunks");var bn=Object.defineProperty,$n=d((e,t)=>bn(e,"name",{value:t,configurable:!0}),"n");const N=$n((e,t,o)=>t.isDynamicEntry?`chunks/[name].${o}`:`shared/${e.options.name}.[hash].${o}`,"getChunkFilename");var wn=Object.defineProperty,jn=d((e,t)=>wn(e,"name",{value:t,configurable:!0}),"s$7");const kn=process.platform==="win32",_e=jn((e,t)=>{const o=kn?"\\":"/";return e.name?.includes("node_modules"+o+".pnpm")?(e.name.replace("node_modules"+o+".pnpm","external")+"."+t).replace("node_modules"+o,""):e.name?.includes("node_modules")?e.name.replace("node_modules","external")+"."+t:"[name]."+t},"getEntryFileNames");var xn=Object.defineProperty,w=d((e,t)=>xn(e,"name",{value:t,configurable:!0}),"p$2");const En=w((e,t)=>{if(e==="esbuild"){if(!t.options.rollup.esbuild)throw new Error("No esbuild options found in your configuration.");t.tsconfig?.config.compilerOptions?.target?.toLowerCase()==="es3"&&(t.logger.warn(["ES3 target is not supported by esbuild, so ES5 will be used instead..","Please set 'target' option in tsconfig to at least ES5 to disable this error"].join(" ")),t.tsconfig.config.compilerOptions.target="es5",t.options.rollup.esbuild.target="es5");let o="node"+_t.node.split(".")[0];if(t.pkg.engines?.node){const r=Ge(t.pkg.engines.node);r&&(o="node"+r.major)}if(t.options.rollup.esbuild.target){const r=Z(t.options.rollup.esbuild.target);r.some(n=>n.startsWith("node"))||(t.options.rollup.esbuild.target=[...new Set([...Z(o),...r])])}else t.options.rollup.esbuild.target=Z(o);return t.tsconfig?.config.compilerOptions?.target==="es5"&&(t.options.rollup.esbuild.keepNames=!1,t.logger.debug("Disabling keepNames because target is set to es5")),{logger:t.logger,minify:t.options.minify,minifyWhitespace:t.options.minify,sourceMap:t.options.sourcemap,...t.options.rollup.esbuild}}if(e==="swc"){if(!t.options.rollup.swc)throw new Error("No swc options found in your configuration.");return{minify:t.options.minify,...t.options.rollup.swc,jsc:{minify:{compress:{directives:!1},format:{comments:"some"},mangle:{toplevel:!0},sourceMap:t.options.sourcemap,toplevel:t.options.emitCJS??t.options.emitESM},...t.options.rollup.swc.jsc},sourceMaps:t.options.sourcemap}}if(e==="sucrase"){if(!t.options.rollup.sucrase)throw new Error("No sucrase options found in your configuration.");return{...t.options.rollup.sucrase}}throw new Error("A Unknown transformer was provided")},"getTransformerConfig"),bt=w((e,t)=>{if(e.code==="CIRCULAR_DEPENDENCY"&&/Circular dependency:[\s\S]*node_modules/.test(e.message))return!0;if(e.code==="UNRESOLVED_IMPORT")throw new Error(`Failed to resolve the module "${e.exporter}" imported by "${v(D(g(),e.id))}"
62
62
  Is the module installed? Note:
63
63
  ↳ to inline a module into your bundle, install it to "devDependencies".
64
- ↳ to depend on a module via import/require, install it to "dependencies".`);return e.code==="MIXED_EXPORTS"&&t.options.cjsInterop===!0},"sharedOnWarn"),_e=new Map,bt=w((e,t,o)=>{const n=w(s=>{for(const[i,a]of Object.entries(t))if(s.startsWith(i))return s.replace(i,a)},"findAlias"),r=mt(e.tsconfig,!1);return{external(s){const i=n(s);i&&(s=i);const a=Ze(s);if(ne(e.options.externals,a)||ne(e.options.externals,s))return!0;const{pkg:l}=e;if(s.startsWith(".")||Je(s)||/src[/\\]/.test(s)||l.name&&s.startsWith(l.name))return!1;if(r){for(const{find:c}of r)if(c.test(s))return e.logger.debug({message:`Resolved alias ${s} to ${c.source}`,prefix:o}),!1}return _e.has(s)||e.logger.info({message:'Inlined implicit external "'+v(s)+'". If this is incorrect, add it to the "externals" option.',prefix:o}),_e.set(s,!0),!1},input:Object.fromEntries(e.options.entries.map(s=>[s.name,g(e.options.rootDir,s.input)])),logLevel:e.options.debug?"debug":"info",onLog:w((s,i)=>{let a=i.message;switch(i.stack&&(a=`${a}
65
- ${i.stack}`),s){case"info":{e.logger.info({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"warn":{e.logger.warn({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"debug":e.logger.debug({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")})}},"onLog"),onwarn(s,i){vt(s,e)||s.code||i(s)},watch:e.mode==="watch"?e.options.rollup.watch:!1}},"baseRollupOptions"),$t=w(async(e,t)=>{const o=ue(e,"build");let n;return e.options.rollup.resolve&&(n=x(Le({extensions:F,...e.options.rollup.resolve}),t)),{...bt(e,o,"dependencies"),output:[e.options.emitCJS&&{chunkFileNames:w(r=>N(e,r,"cjs"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:w(r=>Pe(r,"cjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"cjs",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:e.tsconfig?.config.compilerOptions?.target==="es5"?"es5":"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,interop:"compat",sourcemap:e.options.sourcemap,validate:!0,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:Ne(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}},e.options.emitESM&&{chunkFileNames:w(r=>N(e,r,"mjs"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:w(r=>Pe(r,"mjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"esm",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:e.tsconfig?.config.compilerOptions?.target==="es5"?"es5":"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,sourcemap:e.options.sourcemap,validate:!0,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:Ne(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}}].filter(Boolean),plugins:[x(st(),t),x(yt(),t),e.tsconfig&&x(ht(e.options.rootDir,e.logger,e.tsconfig),t),e.tsconfig&&x(ft(e.tsconfig,e.logger),t),e.options.rollup.replace&&He({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&Ve({customResolver:n?.resolveId,...e.options.rollup.alias,entries:o}),n,e.options.rollup.polyfillNode&&so({sourceMap:e.options.sourcemap,...e.options.rollup.polyfillNode}),e.options.rollup.json&&tt({...e.options.rollup.json}),Br(e.logger),Do(e.options.entries.filter(r=>r.executable).map(r=>r.name).filter(Boolean)),e.options.rollup.wsam&&no(e.options.rollup.wsam),e.options.declaration&&e.options.rollup.isolatedDeclarations&&e.options.isolatedDeclarationTransformer&&vr(y(e.options.rootDir,e.options.sourceDir))(e.options.isolatedDeclarationTransformer,e.options.rollup.isolatedDeclarations),e.options.transformer?.(xn(e.options.transformerName,e)),e.options.cjsInterop&&e.options.emitCJS&&et({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.dynamicVars&&ro(e.options.rollup.dynamicVars),e.options.rollup.commonjs&&x(oo({extensions:F,sourceMap:e.options.sourcemap,...e.options.rollup.commonjs}),t),e.options.rollup.preserveDynamicImports&&{renderDynamicImport(){return{left:"import(",right:")"}}},e.options.rollup.shim&&Yr(e.pkg),e.options.rollup.raw&&zr(e.options.rollup.raw),e.options.rollup.jsxRemoveAttributes&&Er({attributes:e.options.rollup.jsxRemoveAttributes.attributes,logger:e.logger}),e.options.rollup.metafile&&_r({outDir:g(e.options.rootDir,e.options.outDir),rootDir:e.options.rootDir}),e.options.rollup.copy&&hr(e.options.rollup.copy,e.logger),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dependenciesTemplate=="function"&&rt({licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dependenciesTemplate,logger:e.logger,marker:e.options.rollup.license.dependenciesMarker??"DEPENDENCIES",mode:"dependencies",packageName:e.pkg.name}),e.options.rollup.visualizer&&io({brotliSize:!0,filename:"packem-bundle-analyze.html",gzipSize:!0,projectRoot:e.options.rootDir,sourcemap:e.options.sourcemap,title:"Packem Visualizer",...e.options.rollup.visualizer})].filter(Boolean)}},"getRollupOptions"),En=w(async e=>{const{dts:t}=require("rollup-plugin-dts");return t({compilerOptions:{...e.options.rollup.dts.compilerOptions,incremental:void 0,inlineSources:void 0,sourceMap:void 0,tsBuildInfoFile:void 0},respectExternal:e.options.rollup.dts.respectExternal,tsconfig:e.tsconfig?.path})},"createDtsPlugin"),On=ur(En),wt=w(async(e,t)=>{const o=ue(e,"types"),n={load(a){return/\.(?:js|cjs|mjs|jsx|ts|tsx|mts|json)$/.test(a)?null:""},name:"packem:ignore-files"},r=e.tsconfig?.config.compilerOptions;delete r?.lib;let s;e.options.rollup.resolve&&(s=x(Le({extensions:F,...e.options.rollup.resolve}),t));const i="dts-plugin:"+process.pid+e.tsconfig.path;return{...bt(e,o,"dts"),onwarn(a,l){vt(a,e)||a.code!=="EMPTY_BUNDLE"&&l(a)},output:[e.options.emitCJS&&{chunkFileNames:w(a=>N(e,a,"d.cts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output},e.options.emitESM&&{chunkFileNames:w(a=>N(e,a,"d.mts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts",format:"esm",sourcemap:e.options.sourcemap,...e.options.rollup.output},(e.options.declaration===!0||e.options.declaration==="compatible")&&{chunkFileNames:w(a=>N(e,a,"d.ts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output}].filter(Boolean),plugins:[x(st(),t),x(yt(),t),e.options.rollup.json&&tt({...e.options.rollup.json}),n,e.tsconfig&&x(ht(e.options.rootDir,e.logger,e.tsconfig),t),e.tsconfig&&x(ft(e.tsconfig,e.logger),t),e.options.rollup.replace&&He({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&Ve({customResolver:s?.resolveId,...e.options.rollup.alias,entries:o}),s,await On(i)(e),e.options.cjsInterop&&e.options.emitCJS&&et({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.patchTypes&&sn(e.options.rollup.patchTypes,e.logger),So(),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dtsTemplate=="function"&&rt({licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dtsTemplate,logger:e.logger,marker:e.options.rollup.license.dependenciesMarker??"TYPE_DEPENDENCIES",mode:"types",packageName:e.pkg.name})].filter(Boolean)}},"getRollupDtsOptions");var Dn=Object.defineProperty,Sn=d((e,t)=>Dn(e,"name",{value:t,configurable:!0}),"c$4");const ee=Sn(async(e,t)=>{const o=await $t(e,t);if(await e.hooks.callHook("rollup:options",e,o),Object.keys(o.input).length===0)return;const n="rollup-build.json";o.cache=t.get(n);const r=await We(o);t.set(n,r.cache),await e.hooks.callHook("rollup:build",e,r);const s=new Map;for(const i of o.output){const{output:a}=await r.write(i),l=new Set,c=a.filter(u=>u.type==="chunk");for(const u of c){l.add(u.fileName);for(const m of u.imports)e.usedImports.add(m);u.isEntry&&e.buildEntries.push({bytes:Buffer.byteLength(u.code,"utf8"),chunks:u.imports.filter(m=>c.find(f=>f.fileName===m)),exports:u.exports,modules:Object.entries(u.modules).map(([m,f])=>({bytes:f.renderedLength,id:m})),path:u.fileName,type:"entry"})}const p=a.filter(u=>u.type==="asset");for(const u of p)s.has(u.fileName)||s.set(u.fileName,{bytes:Buffer.byteLength(u.source,"utf8"),path:u.fileName,type:"asset"});for(const u of l)e.usedImports.delete(u)}e.buildEntries.push(...s.values())},"build");var Nn=Object.defineProperty,L=d((e,t)=>Nn(e,"name",{value:t,configurable:!0}),"s$6");const te=L(async(e,t)=>{if(e.options.declaration&&e.options.rollup.isolatedDeclarations&&e.options.isolatedDeclarationTransformer){e.logger.debug({message:"Skipping declaration file generation as isolated declaration transformer is enabled.",prefix:"dts"});return}const o=await wt(e,t);if(await e.hooks.callHook("rollup:dts:options",e,o),Object.keys(o.input).length===0)return;const n="rollup-dts.json";o.cache=t.get(n);const r=await We(o);t.set(n,r.cache),await e.hooks.callHook("rollup:dts:build",e,r),e.logger.info({message:"Building declaration files...",prefix:"dts"}),e.options.emitCJS&&await r.write({chunkFileNames:L(s=>N(e,s,"d.cts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts"}),e.options.emitESM&&await r.write({chunkFileNames:L(s=>N(e,s,"d.mts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts"}),(e.options.declaration===!0||e.options.declaration==="compatible")&&await r.write({chunkFileNames:L(s=>N(e,s,"d.ts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts"}),await e.hooks.callHook("rollup:dts:done",e)},"buildTypes");var Pn=Object.defineProperty,ge=d((e,t)=>Pn(e,"name",{value:t,configurable:!0}),"i$2");const _n=ge(e=>{const{message:t,name:o="Error",stack:n}=e;if(!n)return n;const r=`${o}: ${t}
66
- `;return n.startsWith(r)?n.slice(r.length):n},"extractStack"),Cn=ge(e=>`
64
+ ↳ to depend on a module via import/require, install it to "dependencies".`);return e.code==="MIXED_EXPORTS"&&t.options.cjsInterop===!0},"sharedOnWarn"),Ce=new Map,$t=w((e,t,o)=>{const r=w(s=>{for(const[i,a]of Object.entries(t))if(s.startsWith(i))return s.replace(i,a)},"findAlias"),n=ft(e.tsconfig,!1);return{external(s){const i=r(s);i&&(s=i);const a=Qe(s);if(se(e.options.externals,a)||se(e.options.externals,s))return!0;const{pkg:l}=e;if(s.startsWith(".")||We(s)||/src[/\\]/.test(s)||l.name&&s.startsWith(l.name))return!1;if(n){for(const{find:c}of n)if(c.test(s))return e.logger.debug({message:`Resolved alias ${s} to ${c.source}`,prefix:o}),!1}return Ce.has(s)||e.logger.info({message:'Inlined implicit external "'+v(s)+'". If this is incorrect, add it to the "externals" option.',prefix:o}),Ce.set(s,!0),!1},input:Object.fromEntries(e.options.entries.map(s=>[s.name,g(e.options.rootDir,s.input)])),logLevel:e.options.debug?"debug":"info",onLog:w((s,i)=>{let a=i.message;switch(i.stack&&(a=`${a}
65
+ ${i.stack}`),s){case"info":{e.logger.info({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"warn":{e.logger.warn({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"debug":e.logger.debug({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")})}},"onLog"),onwarn(s,i){bt(s,e)||s.code||i(s)},watch:e.mode==="watch"?e.options.rollup.watch:!1}},"baseRollupOptions"),wt=w(async(e,t)=>{const o=de(e,"build");let r;return e.options.rollup.resolve&&(r=k(ze({extensions:T,...e.options.rollup.resolve}),t)),{...$t(e,o,"dependencies"),output:[e.options.emitCJS&&{chunkFileNames:w(n=>N(e,n,"cjs"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:w(n=>_e(n,"cjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"cjs",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:e.tsconfig?.config.compilerOptions?.target==="es5"?"es5":"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,interop:"compat",sourcemap:e.options.sourcemap,validate:!0,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:Pe(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}},e.options.emitESM&&{chunkFileNames:w(n=>N(e,n,"mjs"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:w(n=>_e(n,"mjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"esm",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:e.tsconfig?.config.compilerOptions?.target==="es5"?"es5":"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,sourcemap:e.options.sourcemap,validate:!0,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:Pe(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}}].filter(Boolean),plugins:[k(it(),t),k(vt(),t),e.tsconfig&&k(yt(e.options.rootDir,e.logger,e.tsconfig),t),e.tsconfig&&k(gt(e.tsconfig,e.logger),t),e.options.rollup.replace&&qe({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&He({customResolver:r?.resolveId,...e.options.rollup.alias,entries:o}),r,e.options.rollup.polyfillNode&&io({sourceMap:e.options.sourcemap,...e.options.rollup.polyfillNode}),e.options.rollup.json&&ot({...e.options.rollup.json}),Jr(e.logger),So(e.options.entries.filter(n=>n.executable).map(n=>n.name).filter(Boolean)),e.options.rollup.wsam&&so(e.options.rollup.wsam),e.options.declaration&&e.options.rollup.isolatedDeclarations&&e.options.isolatedDeclarationTransformer&&br(h(e.options.rootDir,e.options.sourceDir))(e.options.isolatedDeclarationTransformer,e.options.rollup.isolatedDeclarations),e.options.transformer?.(En(e.options.transformerName,e)),e.options.cjsInterop&&e.options.emitCJS&&tt({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.dynamicVars&&no(e.options.rollup.dynamicVars),e.options.rollup.commonjs&&k(ro({extensions:T,sourceMap:e.options.sourcemap,...e.options.rollup.commonjs}),t),e.options.rollup.preserveDynamicImports&&{renderDynamicImport(){return{left:"import(",right:")"}}},e.options.rollup.shim&&Kr(e.pkg),e.options.rollup.raw&&Ur(e.options.rollup.raw),e.options.rollup.jsxRemoveAttributes&&Or({attributes:e.options.rollup.jsxRemoveAttributes.attributes,logger:e.logger}),e.options.rollup.metafile&&Cr({outDir:g(e.options.rootDir,e.options.outDir),rootDir:e.options.rootDir}),e.options.rollup.copy&&yr(e.options.rollup.copy,e.logger),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dependenciesTemplate=="function"&&nt({dtsMarker:e.options.rollup.license.dtsMarker??"TYPE_DEPENDENCIES",licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dependenciesTemplate,logger:e.logger,marker:e.options.rollup.license.dependenciesMarker??"DEPENDENCIES",mode:"dependencies",packageName:e.pkg.name}),e.options.rollup.visualizer&&ao({brotliSize:!0,filename:"packem-bundle-analyze.html",gzipSize:!0,projectRoot:e.options.rootDir,sourcemap:e.options.sourcemap,title:"Packem Visualizer",...e.options.rollup.visualizer})].filter(Boolean)}},"getRollupOptions"),On=w(async e=>{const{dts:t}=require("rollup-plugin-dts");return t({compilerOptions:{...e.options.rollup.dts.compilerOptions,incremental:void 0,inlineSources:void 0,sourceMap:void 0,tsBuildInfoFile:void 0},respectExternal:e.options.rollup.dts.respectExternal,tsconfig:e.tsconfig?.path})},"createDtsPlugin"),Dn=dr(On),jt=w(async(e,t)=>{const o=de(e,"types"),r={load(a){return/\.(?:js|cjs|mjs|jsx|ts|tsx|mts|json)$/.test(a)?null:""},name:"packem:ignore-files"},n=e.tsconfig?.config.compilerOptions;delete n?.lib;let s;e.options.rollup.resolve&&(s=k(ze({extensions:T,...e.options.rollup.resolve}),t));const i="dts-plugin:"+process.pid+e.tsconfig.path;return{...$t(e,o,"dts"),onwarn(a,l){bt(a,e)||a.code!=="EMPTY_BUNDLE"&&l(a)},output:[e.options.emitCJS&&{chunkFileNames:w(a=>N(e,a,"d.cts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output},e.options.emitESM&&{chunkFileNames:w(a=>N(e,a,"d.mts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts",format:"esm",sourcemap:e.options.sourcemap,...e.options.rollup.output},(e.options.declaration===!0||e.options.declaration==="compatible")&&{chunkFileNames:w(a=>N(e,a,"d.ts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output}].filter(Boolean),plugins:[k(it(),t),k(vt(),t),e.options.rollup.json&&ot({...e.options.rollup.json}),r,e.tsconfig&&k(yt(e.options.rootDir,e.logger,e.tsconfig),t),e.tsconfig&&k(gt(e.tsconfig,e.logger),t),e.options.rollup.replace&&qe({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&He({customResolver:s?.resolveId,...e.options.rollup.alias,entries:o}),s,await Dn(i)(e),e.options.cjsInterop&&e.options.emitCJS&&tt({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.patchTypes&&an(e.options.rollup.patchTypes,e.logger),No(),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dtsTemplate=="function"&&nt({licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dtsTemplate,logger:e.logger,marker:e.options.rollup.license.dtsMarker??"TYPE_DEPENDENCIES",mode:"types",packageName:e.pkg.name})].filter(Boolean)}},"getRollupDtsOptions");var Sn=Object.defineProperty,Nn=d((e,t)=>Sn(e,"name",{value:t,configurable:!0}),"c$4");const te=Nn(async(e,t)=>{const o=await wt(e,t);if(await e.hooks.callHook("rollup:options",e,o),Object.keys(o.input).length===0)return;const r="rollup-build.json";o.cache=t.get(r);const n=await Le(o);t.set(r,n.cache),await e.hooks.callHook("rollup:build",e,n);const s=new Map;for(const i of o.output){const{output:a}=await n.write(i),l=new Set,c=a.filter(u=>u.type==="chunk");for(const u of c){l.add(u.fileName);for(const m of u.imports)e.usedImports.add(m);u.isEntry&&e.buildEntries.push({bytes:Buffer.byteLength(u.code,"utf8"),chunks:u.imports.filter(m=>c.find(f=>f.fileName===m)),exports:u.exports,modules:Object.entries(u.modules).map(([m,f])=>({bytes:f.renderedLength,id:m})),path:u.fileName,type:"entry"})}const p=a.filter(u=>u.type==="asset");for(const u of p)s.has(u.fileName)||s.set(u.fileName,{bytes:Buffer.byteLength(u.source,"utf8"),path:u.fileName,type:"asset"});for(const u of l)e.usedImports.delete(u)}e.buildEntries.push(...s.values())},"build");var Pn=Object.defineProperty,L=d((e,t)=>Pn(e,"name",{value:t,configurable:!0}),"s$6");const oe=L(async(e,t)=>{if(e.options.declaration&&e.options.rollup.isolatedDeclarations&&e.options.isolatedDeclarationTransformer){e.logger.debug({message:"Skipping declaration file generation as isolated declaration transformer is enabled.",prefix:"dts"});return}const o=await jt(e,t);if(await e.hooks.callHook("rollup:dts:options",e,o),Object.keys(o.input).length===0)return;const r="rollup-dts.json";o.cache=t.get(r);const n=await Le(o);t.set(r,n.cache),await e.hooks.callHook("rollup:dts:build",e,n),e.logger.info({message:"Building declaration files...",prefix:"dts"}),e.options.emitCJS&&await n.write({chunkFileNames:L(s=>N(e,s,"d.cts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts"}),e.options.emitESM&&await n.write({chunkFileNames:L(s=>N(e,s,"d.mts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts"}),(e.options.declaration===!0||e.options.declaration==="compatible")&&await n.write({chunkFileNames:L(s=>N(e,s,"d.ts"),"chunkFileNames"),dir:g(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts"}),await e.hooks.callHook("rollup:dts:done",e)},"buildTypes");var _n=Object.defineProperty,he=d((e,t)=>_n(e,"name",{value:t,configurable:!0}),"i$2");const Cn=he(e=>{const{message:t,name:o="Error",stack:r}=e;if(!r)return r;const n=`${o}: ${t}
66
+ `;return r.startsWith(n)?r.slice(n.length):r},"extractStack"),Mn=he(e=>`
67
67
  ${e.replaceAll(/^\n|\n$/g,"")}
68
- `,"normalizeCodeFrame"),jt=ge(e=>{const t=_n(e);let o=(e.plugin?`[${e.plugin}] `:"")+e.message;e.id&&(o+=`
68
+ `,"normalizeCodeFrame"),kt=he(e=>{const t=Cn(e);let o=(e.plugin?`[${e.plugin}] `:"")+e.message;e.id&&(o+=`
69
69
  file: ${v(e.id+(e.loc?":"+e.loc.line+":"+e.loc.column:""))}`),e.frame&&(o+=`
70
- `+Ft(Cn(e.frame))),e.message=o,t!==void 0&&(e.stack=`${e.message}
71
- ${t}`)},"enhanceRollupError");var Mn=Object.defineProperty,kt=d((e,t)=>Mn(e,"name",{value:t,configurable:!0}),"l$3");const Ce=kt((e,t,o)=>{const n="watcher:"+t;e.on("change",(r,{event:s})=>{o.info({message:`${v(D(".",r))} was ${s}d`,prefix:n})}),e.on("restart",()=>{o.info({message:"Rebuilding "+t+"...",prefix:n})}),e.on("event",async r=>{switch(r.code){case"END":{o.success({message:"Rebuild "+t+" finished",prefix:n});break}case"BUNDLE_START":{o.info({message:v("build started..."),prefix:n});break}case"BUNDLE_END":{await r.result.close(),o.info({message:v(`built in ${r.duration+""}ms.`),prefix:n});break}case"ERROR":{jt(r.error),o.error({context:[r.error],message:"Rebuild "+t+" failed: "+r.error.message,prefix:n});break}}})},"watchHandler"),In=kt(async(e,t)=>{const o=await $t(e,t);if(await e.hooks.callHook("rollup:options",e,o),Object.keys(o.input).length===0)return;o.cache=t.get("rollup-watch"),typeof o.watch=="object"&&o.watch.include===void 0&&(o.watch.include=[y(e.options.sourceDir,"**")],o.watch.chokidar={cwd:e.options.rootDir,...o.watch.chokidar});const n=$e(o);await e.hooks.callHook("rollup:watch",e,n);const r=[...Array.isArray(o.input)?o.input:typeof o.input=="string"?[o.input]:Object.keys(o.input??{})];let s="Starting watchers for entries:";for(const i of r)s+=M(`
72
- └─ ${D(process.cwd(),i)}`);if(e.logger.info(s),Ce(n,"bundle",e.logger),e.options.declaration){const i=await wt(e,t);await e.hooks.callHook("rollup:dts:options",e,i);const a=$e(i);await e.hooks.callHook("rollup:watch",e,a),Ce(a,"types",e.logger)}},"watch");var Fn=Object.defineProperty,Rn=d((e,t)=>Fn(e,"name",{value:t,configurable:!0}),"i$1");const xt=Rn(e=>`{ ${Object.keys(e).map(t=>`${t}: ${JSON.stringify(e[t])}`).join(", ")} }`,"dumpObject");var Tn=Object.defineProperty,An=d((e,t)=>Tn(e,"name",{value:t,configurable:!0}),"a$4");let Bn=class{static{d(this,"p")}static{An(this,"FileCache")}#r;#e;#n;#t=!0;#o=new Map;#s;constructor(t,o,n){this.#r=t,this.#e=fo("@visulima/packem",{cwd:t}),this.#n=o,this.#s=n,this.#e===void 0?n.debug("Could not create cache directory."):n.debug(`Cache path is: ${this.#e}`)}set isEnabled(t){this.#t=t}get cachePath(){return this.#e}has(t,o){return!this.#t||this.#e===void 0?!1:E(this.getFilePath(t,o))}get(t,o){if(!this.#t||this.#e===void 0)return;const n=this.getFilePath(t,o);if(this.#o.has(n))return this.#o.get(n);if(!E(n))return;const r=Te(n);try{const s=JSON.parse(r);return this.#o.set(n,s),s}catch{this.#s.warn(`Could not parse cache file: ${n}, deleting the broken cache file.`),this.#o.delete(n),to(n,{force:!0});return}}set(t,o,n){if(!this.#t||this.#e===void 0||o===void 0)return;const r=this.getFilePath(t,n);typeof o=="object"&&(o=JSON.stringify(o)),U(r,o,{overwrite:!0})}getFilePath(t,o){let n=t.replaceAll(be(this.#r),"");return n=n.replaceAll(":","-"),y(this.#e,this.#n,o?.replaceAll(":","-")??"",be(n))}};var Jn=Object.defineProperty,z=d((e,t)=>Jn(e,"name",{value:t,configurable:!0}),"l$2");const Wn=q,Ln=z((e,t)=>{const{sideEffects:o}=t;let n;if(typeof o=="boolean")n=z(()=>o,"hasSideEffects");else if(Array.isArray(o))if(o.length<=0)n=z(()=>!1,"hasSideEffects");else{const r=o.map(s=>s.includes("/")?s:`**/${s}`);n=Wn(r,null,{resolve:e})}else n=z(()=>null,"hasSideEffects");return n},"getPackageSideEffect");var zn=Object.defineProperty,Un=d((e,t)=>zn(e,"name",{value:t,configurable:!0}),"y");const Vn=Un((e,t,o)=>e.reduce((n,r)=>{const s=r[t],i=r[o];return n[s]||(n[s]={}),n[s][i]||(n[s][i]=[]),n[s][i].push(r),n},{}),"groupByKeys");var Hn=Object.defineProperty,qn=d((e,t)=>Hn(e,"name",{value:t,configurable:!0}),"a$3");const Gn=/^[^a-z_@#~]|[^\w/@#~-]|@\/|#\/|~\//i,Yn=new Set(["abstract","await","boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","let","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with","yield"]),Me=qn(e=>{if(!Array.isArray(e)&&e!==null)for(const[t,o]of Object.entries(e)){if(typeof t!="string"||t.trim()==="")throw new Error(`Alias name "${t}" is invalid. Alias names should be non-empty strings.`);if(Gn.test(t))throw new Error(`Alias name "${t}" is invalid. Alias names should start with a letter or underscore and only contain letters, numbers, underscores, and dashes.`);if(Yn.has(t))throw new Error(`Alias name "${t}" is a reserved keyword and cannot be used.`);const n=g(o);if(!E(n))throw new Error(`Target path "${n}" for alias "${t}" does not exist.`)}},"validateAliasEntries");var Kn=Object.defineProperty,Xn=d((e,t)=>Kn(e,"name",{value:t,configurable:!0}),"o");const Zn=Xn(e=>{const t=new Set,o=new Set(Object.keys(e.pkg.dependencies??{})),n=new Set;for(const r of e.usedImports)o.delete(r),t.add(r);if(e.pkg.dependencies)for(const r of Object.keys(e.pkg.dependencies))o.delete(r);for(const r of t){const s=Ze(r);!ne(e.options.externals,r)&&!r.startsWith("chunks/")&&e.pkg.dependencies?.[s]===void 0&&e.pkg.peerDependencies?.[s]===void 0&&n.add(r)}o.size>0&&B(e,`Potential unused dependencies found: ${[...o].map(r=>v(r)).join(", ")}`),n.size>0&&B(e,`Potential implicit dependencies found: ${[...n].map(r=>v(r)).join(", ")}`)},"validateDependencies");var Qn=Object.defineProperty,Et=d((e,t)=>Qn(e,"name",{value:t,configurable:!0}),"i");const es=Et((e,t)=>go(e,t)<=e.length/3||t.includes(e),"isSimilar"),ts=Et((e,t)=>{const o=e.toLowerCase();return t.filter(n=>es(n.toLowerCase(),o))},"findAlternatives");var os=Object.defineProperty,Ie=d((e,t)=>os(e,"name",{value:t,configurable:!0}),"s$1");const rs=Ie((e,t)=>{const o=new Set([...typeof e.bin=="string"?[e.bin]:Object.values(e.bin??{}),e.main,e.module,t.options.declaration?e.types:"",t.options.declaration?e.typings:"",...de(e.exports,e.type??"commonjs",t.options.declaration).map(r=>r.file)].map(r=>r&&g(t.options.rootDir,r.replace(/\/[^*/]*\*[^\n\r/\u2028\u2029]*(?:[\n\r\u2028\u2029][^*/]*\*[^\n\r/\u2028\u2029]*)*(?:\/.*)?$/,"")))),n=[];for(const r of o)r&&!r.includes("*")&&!ce(r)&&n.push(r.replace(`${t.options.rootDir}/`,""));if(n.length>0){const r=Ie(a=>D(t.options.rootDir,g(t.options.outDir,a)),"rPath"),s=t.buildEntries.filter(a=>!a.chunk).map(a=>r(a.path));let i="Potential missing or wrong package.json files:";for(const a of n){const l=ts(a,s);i+=`
73
- - `+v(a)+(l.length>0?Rt` (did you mean ${l.map(c=>`"${c}"`).join(", ")}?)`:"")}B(t,i)}},"validatePackage");var ns=Object.defineProperty,j=d((e,t)=>ns(e,"name",{value:t,configurable:!0}),"h$1");const Ot=j((e,t)=>{if(e.warnings.size>0&&(t&&e.logger.raw(`
70
+ `+Rt(Mn(e.frame))),e.message=o,t!==void 0&&(e.stack=`${e.message}
71
+ ${t}`)},"enhanceRollupError");var In=Object.defineProperty,xt=d((e,t)=>In(e,"name",{value:t,configurable:!0}),"l$3");const Me=xt((e,t,o)=>{const r="watcher:"+t;e.on("change",(n,{event:s})=>{o.info({message:`${v(D(".",n))} was ${s}d`,prefix:r})}),e.on("restart",()=>{o.info({message:"Rebuilding "+t+"...",prefix:r})}),e.on("event",async n=>{switch(n.code){case"END":{o.success({message:"Rebuild "+t+" finished",prefix:r});break}case"BUNDLE_START":{o.info({message:v("build started..."),prefix:r});break}case"BUNDLE_END":{await n.result.close(),o.info({message:v(`built in ${n.duration+""}ms.`),prefix:r});break}case"ERROR":{kt(n.error),o.error({context:[n.error],message:"Rebuild "+t+" failed: "+n.error.message,prefix:r});break}}})},"watchHandler"),Fn=xt(async(e,t)=>{const o=await wt(e,t);if(await e.hooks.callHook("rollup:options",e,o),Object.keys(o.input).length===0)return;o.cache=t.get("rollup-watch"),typeof o.watch=="object"&&o.watch.include===void 0&&(o.watch.include=[h(e.options.sourceDir,"**")],o.watch.chokidar={cwd:e.options.rootDir,...o.watch.chokidar});const r=we(o);await e.hooks.callHook("rollup:watch",e,r);const n=[...Array.isArray(o.input)?o.input:typeof o.input=="string"?[o.input]:Object.keys(o.input??{})];let s="Starting watchers for entries:";for(const i of n)s+=I(`
72
+ └─ ${D(process.cwd(),i)}`);if(e.logger.info(s),Me(r,"bundle",e.logger),e.options.declaration){const i=await jt(e,t);await e.hooks.callHook("rollup:dts:options",e,i);const a=we(i);await e.hooks.callHook("rollup:watch",e,a),Me(a,"types",e.logger)}},"watch");var Rn=Object.defineProperty,Tn=d((e,t)=>Rn(e,"name",{value:t,configurable:!0}),"i$1");const Et=Tn(e=>`{ ${Object.keys(e).map(t=>`${t}: ${JSON.stringify(e[t])}`).join(", ")} }`,"dumpObject");var An=Object.defineProperty,Bn=d((e,t)=>An(e,"name",{value:t,configurable:!0}),"a$4");let Jn=class{static{d(this,"p")}static{Bn(this,"FileCache")}#r;#e;#n;#t=!0;#o=new Map;#s;constructor(t,o,r){this.#r=t,this.#e=go("@visulima/packem",{cwd:t}),this.#n=o,this.#s=r,this.#e===void 0?r.debug("Could not create cache directory."):r.debug(`Cache path is: ${this.#e}`)}set isEnabled(t){this.#t=t}get cachePath(){return this.#e}has(t,o){return!this.#t||this.#e===void 0?!1:x(this.getFilePath(t,o))}get(t,o){if(!this.#t||this.#e===void 0)return;const r=this.getFilePath(t,o);if(this.#o.has(r))return this.#o.get(r);if(!x(r))return;const n=Ae(r);try{const s=JSON.parse(n);return this.#o.set(r,s),s}catch{this.#s.warn(`Could not parse cache file: ${r}, deleting the broken cache file.`),this.#o.delete(r),oo(r,{force:!0});return}}set(t,o,r){if(!this.#t||this.#e===void 0||o===void 0)return;const n=this.getFilePath(t,r);typeof o=="object"&&(o=JSON.stringify(o)),U(n,o,{overwrite:!0})}getFilePath(t,o){let r=t.replaceAll($e(this.#r),"");return r=r.replaceAll(":","-"),h(this.#e,this.#n,o?.replaceAll(":","-")??"",$e(r))}};var Wn=Object.defineProperty,z=d((e,t)=>Wn(e,"name",{value:t,configurable:!0}),"l$2");const Ln=q,zn=z((e,t)=>{const{sideEffects:o}=t;let r;if(typeof o=="boolean")r=z(()=>o,"hasSideEffects");else if(Array.isArray(o))if(o.length<=0)r=z(()=>!1,"hasSideEffects");else{const n=o.map(s=>s.includes("/")?s:`**/${s}`);r=Ln(n,null,{resolve:e})}else r=z(()=>null,"hasSideEffects");return r},"getPackageSideEffect");var Un=Object.defineProperty,Vn=d((e,t)=>Un(e,"name",{value:t,configurable:!0}),"y");const Hn=Vn((e,t,o)=>e.reduce((r,n)=>{const s=n[t],i=n[o];return r[s]||(r[s]={}),r[s][i]||(r[s][i]=[]),r[s][i].push(n),r},{}),"groupByKeys");var qn=Object.defineProperty,Gn=d((e,t)=>qn(e,"name",{value:t,configurable:!0}),"a$3");const Yn=/^[^a-z_@#~]|[^\w/@#~-]|@\/|#\/|~\//i,Kn=new Set(["abstract","await","boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","let","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with","yield"]),Ie=Gn(e=>{if(!Array.isArray(e)&&e!==null)for(const[t,o]of Object.entries(e)){if(typeof t!="string"||t.trim()==="")throw new Error(`Alias name "${t}" is invalid. Alias names should be non-empty strings.`);if(Yn.test(t))throw new Error(`Alias name "${t}" is invalid. Alias names should start with a letter or underscore and only contain letters, numbers, underscores, and dashes.`);if(Kn.has(t))throw new Error(`Alias name "${t}" is a reserved keyword and cannot be used.`);const r=g(o);if(!x(r))throw new Error(`Target path "${r}" for alias "${t}" does not exist.`)}},"validateAliasEntries");var Xn=Object.defineProperty,Zn=d((e,t)=>Xn(e,"name",{value:t,configurable:!0}),"o");const Qn=Zn(e=>{const t=new Set,o=new Set(Object.keys(e.pkg.dependencies??{})),r=new Set;for(const n of e.usedImports)o.delete(n),t.add(n);if(e.pkg.dependencies)for(const n of Object.keys(e.pkg.dependencies))o.delete(n);for(const n of t){const s=Qe(n);!se(e.options.externals,n)&&!n.startsWith("chunks/")&&e.pkg.dependencies?.[s]===void 0&&e.pkg.peerDependencies?.[s]===void 0&&r.add(n)}o.size>0&&B(e,`Potential unused dependencies found: ${[...o].map(n=>v(n)).join(", ")}`),r.size>0&&B(e,`Potential implicit dependencies found: ${[...r].map(n=>v(n)).join(", ")}`)},"validateDependencies");var es=Object.defineProperty,Ot=d((e,t)=>es(e,"name",{value:t,configurable:!0}),"i");const ts=Ot((e,t)=>ho(e,t)<=e.length/3||t.includes(e),"isSimilar"),os=Ot((e,t)=>{const o=e.toLowerCase();return t.filter(r=>ts(r.toLowerCase(),o))},"findAlternatives");var rs=Object.defineProperty,Fe=d((e,t)=>rs(e,"name",{value:t,configurable:!0}),"s$1");const ns=Fe((e,t)=>{const o=new Set([...typeof e.bin=="string"?[e.bin]:Object.values(e.bin??{}),e.main,e.module,t.options.declaration?e.types:"",t.options.declaration?e.typings:"",...me(e.exports,e.type??"commonjs",t.options.declaration).map(n=>n.file)].map(n=>n&&g(t.options.rootDir,n.replace(/\/[^*/]*\*[^\n\r/\u2028\u2029]*(?:[\n\r\u2028\u2029][^*/]*\*[^\n\r/\u2028\u2029]*)*(?:\/.*)?$/,"")))),r=[];for(const n of o)n&&!n.includes("*")&&!pe(n)&&r.push(n.replace(`${t.options.rootDir}/`,""));if(r.length>0){const n=Fe(a=>D(t.options.rootDir,g(t.options.outDir,a)),"rPath"),s=t.buildEntries.filter(a=>!a.chunk).map(a=>n(a.path));let i="Potential missing or wrong package.json files:";for(const a of r){const l=os(a,s);i+=`
73
+ - `+v(a)+(l.length>0?Tt` (did you mean ${l.map(c=>`"${c}"`).join(", ")}?)`:"")}B(t,i)}},"validatePackage");var ss=Object.defineProperty,j=d((e,t)=>ss(e,"name",{value:t,configurable:!0}),"h$1");const Dt=j((e,t)=>{if(e.warnings.size>0&&(t&&e.logger.raw(`
74
74
  `),e.logger.warn(`Build is done with some warnings:
75
75
 
76
76
  ${[...e.warnings].map(o=>`- ${o}`).join(`
77
- `)}`),e.options.failOnWarn))throw new Error("Exiting with code (1). You can change this behavior by setting `failOnWarn: false`.")},"logErrors"),ss=j(e=>{switch(e){case"preserve":case"react-native":return"preserve";case"react":return"transform";case"react-jsx":case"react-jsxdev":return"automatic";default:return}},"resolveTsconfigJsxToJsxRuntime"),is=j((e,t,o,n,r,s,i,a,l)=>{const c=ss(l?.config.compilerOptions?.jsx),p=qt(s,r,i,{alias:{},clean:!0,debug:n,declaration:!0,emitCJS:!0,emitESM:!0,entries:[],externals:[...ve.builtinModules,...ve.builtinModules.map(u=>`node:${u}`)],failOnWarn:!0,fileCache:!0,minify:O.NODE_ENV==="production",name:(a.name??"").split("/").pop()??"default",outDir:"dist",replace:{},rollup:{alias:{},cjsInterop:{addDefaultProperty:!1},commonjs:{ignoreTryCatch:!0,preserveSymlinks:!0,transformMixedEsModules:!1},dts:{compilerOptions:{baseUrl:l?.config.compilerOptions?.baseUrl??".",checkJs:!1,composite:!1,declaration:!0,declarationMap:!1,emitDeclarationOnly:!0,incremental:!1,moduleResolution:100,noEmit:!1,noEmitOnError:!0,preserveSymlinks:!1,skipLibCheck:!0,target:99},respectExternal:!0},dynamicVars:{errorWhenNoFilesFound:!0,include:/\bimport\s*[(/]/},esbuild:{charset:"utf8",include:/\.[jt]sx?$/,jsx:c,jsxDev:l?.config.compilerOptions?.jsx==="react-jsxdev",jsxFactory:l?.config.compilerOptions?.jsxFactory,jsxFragment:l?.config.compilerOptions?.jsxFragmentFactory,jsxImportSource:l?.config.compilerOptions?.jsxImportSource,jsxSideEffects:!0,keepNames:!0,sourcesContent:!1,target:l?.config.compilerOptions?.target,treeShaking:!0,tsconfigRaw:l?.config},isolatedDeclarations:{exclude:K,ignoreErrors:!1,include:[/\.[cm]?ts$/]},json:{preferConst:!0},license:{dependenciesTemplate:j((u,m,f)=>`
77
+ `)}`),e.options.failOnWarn))throw new Error("Exiting with code (1). You can change this behavior by setting `failOnWarn: false`.")},"logErrors"),is=j(e=>{switch(e){case"preserve":case"react-native":return"preserve";case"react":return"transform";case"react-jsx":case"react-jsxdev":return"automatic";default:return}},"resolveTsconfigJsxToJsxRuntime"),as=j((e,t,o,r,n,s,i,a,l)=>{const c=is(l?.config.compilerOptions?.jsx),p=Gt(s,n,i,{alias:{},clean:!0,debug:r,declaration:!0,emitCJS:!0,emitESM:!0,entries:[],externals:[...be.builtinModules,...be.builtinModules.map(u=>`node:${u}`)],failOnWarn:!0,fileCache:!0,minify:O.NODE_ENV==="production",name:(a.name??"").split("/").pop()??"default",outDir:"dist",replace:{},rollup:{alias:{},cjsInterop:{addDefaultProperty:!1},commonjs:{ignoreTryCatch:!0,preserveSymlinks:!0,transformMixedEsModules:!1},dts:{compilerOptions:{baseUrl:l?.config.compilerOptions?.baseUrl??".",checkJs:!1,composite:!1,declaration:!0,declarationMap:!1,emitDeclarationOnly:!0,incremental:!1,moduleResolution:100,noEmit:!1,noEmitOnError:!0,preserveSymlinks:!1,skipLibCheck:!0,target:99},respectExternal:!0},dynamicVars:{errorWhenNoFilesFound:!0,include:/\bimport\s*[(/]/},esbuild:{charset:"utf8",include:/\.[jt]sx?$/,jsx:c,jsxDev:l?.config.compilerOptions?.jsx==="react-jsxdev",jsxFactory:l?.config.compilerOptions?.jsxFactory,jsxFragment:l?.config.compilerOptions?.jsxFragmentFactory,jsxImportSource:l?.config.compilerOptions?.jsxImportSource,jsxSideEffects:!0,keepNames:!0,sourcesContent:!1,target:l?.config.compilerOptions?.target,treeShaking:!0,tsconfigRaw:l?.config},isolatedDeclarations:{exclude:X,ignoreErrors:!1,include:[/\.[cm]?ts$/]},json:{preferConst:!0},license:{dependenciesTemplate:j((u,m,f)=>`
78
78
  # Licenses of bundled dependencies
79
79
  The published ${f} artifact additionally contains code with the following licenses:
80
- ${u.join(", ")}
80
+ `+(u.length>0?`${u.join(", ")}
81
81
 
82
- # Bundled dependencies:
82
+ `:`
83
+ `)+`# Bundled dependencies:
83
84
  `+m,"dependenciesTemplate"),dtsTemplate:j((u,m,f)=>`
84
85
  # Licenses of bundled types
85
86
  The published ${f} artifact additionally contains code with the following licenses:
86
- ${u.join(", ")}
87
+ `+(u.length>0?`${u.join(", ")}
87
88
 
88
- # Bundled types:
89
- `+m,"dtsTemplate")},patchTypes:{},polyfillNode:{},preserveDynamicImports:!0,raw:{exclude:K,include:["**/*.data","**/*.txt"]},replace:{objectGuards:!0,preventAssignment:!0},resolve:{allowExportsFolderMapping:!1,preferBuiltins:!1},shim:!0,sucrase:{disableESTransforms:!0,enableLegacyBabel5ModuleInterop:!1,enableLegacyTypeScriptModuleInterop:l?.config.compilerOptions?.esModuleInterop===!1,include:/\.[jt]sx?$/,injectCreateRequireForImportRequire:!1,preserveDynamicImport:!0,production:O.NODE_ENV==="production",...l?.config.compilerOptions?.jsx&&["react","react-jsx","react-jsxdev"].includes(l.config.compilerOptions.jsx)?{jsxFragmentPragma:l.config.compilerOptions.jsxFragmentFactory,jsxImportSource:l.config.compilerOptions.jsxImportSource,jsxPragma:l.config.compilerOptions.jsxFactory,jsxRuntime:c,transforms:["typescript","jsx",...l.config.compilerOptions.esModuleInterop?["imports"]:[]]}:{transforms:["typescript",...l?.config.compilerOptions?.esModuleInterop?["imports"]:[]]}},swc:{include:/\.[jt]sx?$/,inlineSourcesContent:!1,inputSourceMap:!1,isModule:!0,jsc:{experimental:{keepImportAttributes:!0},externalHelpers:!1,keepClassNames:!0,loose:!0,parser:{decorators:l?.config.compilerOptions?.experimentalDecorators,syntax:l?"typescript":"ecmascript",[l?"tsx":"jsx"]:!0},target:l?.config.compilerOptions?.target?.toLowerCase(),transform:{decoratorMetadata:l?.config.compilerOptions?.emitDecoratorMetadata,legacyDecorator:l?.config.compilerOptions?.experimentalDecorators,react:{development:O.NODE_ENV!=="production",pragma:l?.config.compilerOptions?.jsxFactory,pragmaFrag:l?.config.compilerOptions?.jsxFragmentFactory,runtime:c,throwIfNamespace:!0},treatConstEnumAsEnum:l?.config.compilerOptions?.preserveConstEnums,useDefineForClassFields:l?.config.compilerOptions?.useDefineForClassFields}},module:{ignoreDynamic:!0,importInterop:"none",preserveImportMeta:!0,strict:!1,strictMode:!1,type:"es6"},transform:{decoratorVersion:"2022-03"}},treeshake:{moduleSideEffects:Ln(t,a),preset:"recommended"},watch:{chokidar:{ignoreInitial:!0,ignorePermissionErrors:!0},clearScreen:!0,exclude:K}},rootDir:t,sourceDir:"src",sourcemap:!1,stub:o==="jit",stubOptions:{jiti:{alias:{},esmResolve:!0,interopDefault:!0}},transformerName:void 0});if(!p.transformerName){const u=new Map([...Object.entries(a.dependencies??{}),...Object.entries(a.devDependencies??{})]);let m="0.0.0";if(u.has("esbuild"))p.transformerName="esbuild",m=u.get("esbuild");else if(u.has("@swc/core"))p.transformerName="swc",m=u.get("@swc/core");else if(u.has("sucrase"))p.transformerName="sucrase",m=u.get("sucrase");else throw new Error("Unknown transformer, check your transformer options or install one of the supported transformers: esbuild, swc, sucrase");e.info("Using "+v("rollup ")+Yt),e.info({message:"Using "+v(p.transformerName)+" "+m,prefix:"transformer"})}return p.rollup.resolve&&p.rollup.resolve.preferBuiltins===!0&&(p.rollup.polyfillNode=!1,e.debug("Disabling polyfillNode because preferBuiltins is set to true")),a.devDependencies?.typescript&&!l?.config.compilerOptions?.isolatedModules&&e.warn(`'compilerOptions.isolatedModules' is not enabled in tsconfig.
89
+ `:`
90
+ `)+`# Bundled types:
91
+ `+m,"dtsTemplate")},patchTypes:{},polyfillNode:{},preserveDynamicImports:!0,raw:{exclude:X,include:["**/*.data","**/*.txt"]},replace:{objectGuards:!0,preventAssignment:!0},resolve:{allowExportsFolderMapping:!1,preferBuiltins:!1},shim:!0,sucrase:{disableESTransforms:!0,enableLegacyBabel5ModuleInterop:!1,enableLegacyTypeScriptModuleInterop:l?.config.compilerOptions?.esModuleInterop===!1,include:/\.[jt]sx?$/,injectCreateRequireForImportRequire:!1,preserveDynamicImport:!0,production:O.NODE_ENV==="production",...l?.config.compilerOptions?.jsx&&["react","react-jsx","react-jsxdev"].includes(l.config.compilerOptions.jsx)?{jsxFragmentPragma:l.config.compilerOptions.jsxFragmentFactory,jsxImportSource:l.config.compilerOptions.jsxImportSource,jsxPragma:l.config.compilerOptions.jsxFactory,jsxRuntime:c,transforms:["typescript","jsx",...l.config.compilerOptions.esModuleInterop?["imports"]:[]]}:{transforms:["typescript",...l?.config.compilerOptions?.esModuleInterop?["imports"]:[]]}},swc:{include:/\.[jt]sx?$/,inlineSourcesContent:!1,inputSourceMap:!1,isModule:!0,jsc:{experimental:{keepImportAttributes:!0},externalHelpers:!1,keepClassNames:!0,loose:!0,parser:{decorators:l?.config.compilerOptions?.experimentalDecorators,syntax:l?"typescript":"ecmascript",[l?"tsx":"jsx"]:!0},target:l?.config.compilerOptions?.target?.toLowerCase(),transform:{decoratorMetadata:l?.config.compilerOptions?.emitDecoratorMetadata,legacyDecorator:l?.config.compilerOptions?.experimentalDecorators,react:{development:O.NODE_ENV!=="production",pragma:l?.config.compilerOptions?.jsxFactory,pragmaFrag:l?.config.compilerOptions?.jsxFragmentFactory,runtime:c,throwIfNamespace:!0},treatConstEnumAsEnum:l?.config.compilerOptions?.preserveConstEnums,useDefineForClassFields:l?.config.compilerOptions?.useDefineForClassFields}},module:{ignoreDynamic:!0,importInterop:"none",preserveImportMeta:!0,strict:!1,strictMode:!1,type:"es6"},transform:{decoratorVersion:"2022-03"}},treeshake:{moduleSideEffects:zn(t,a),preset:"recommended"},watch:{chokidar:{ignoreInitial:!0,ignorePermissionErrors:!0},clearScreen:!0,exclude:X}},rootDir:t,sourceDir:"src",sourcemap:!1,stub:o==="jit",stubOptions:{jiti:{alias:{},esmResolve:!0,interopDefault:!0}},transformerName:void 0});if(!p.transformerName){const u=new Map([...Object.entries(a.dependencies??{}),...Object.entries(a.devDependencies??{})]);let m="0.0.0";if(u.has("esbuild"))p.transformerName="esbuild",m=u.get("esbuild");else if(u.has("@swc/core"))p.transformerName="swc",m=u.get("@swc/core");else if(u.has("sucrase"))p.transformerName="sucrase",m=u.get("sucrase");else throw new Error("Unknown transformer, check your transformer options or install one of the supported transformers: esbuild, swc, sucrase");e.info("Using "+v("rollup ")+Kt),e.info({message:"Using "+v(p.transformerName)+" "+m,prefix:"transformer"})}return p.rollup.resolve&&p.rollup.resolve.preferBuiltins===!0&&(p.rollup.polyfillNode=!1,e.debug("Disabling polyfillNode because preferBuiltins is set to true")),a.devDependencies?.typescript&&!l?.config.compilerOptions?.isolatedModules&&e.warn(`'compilerOptions.isolatedModules' is not enabled in tsconfig.
90
92
  Because none of the third-party transpiler, packem uses under the hood is type-aware, some techniques or features often used in TypeScript are not properly checked and can cause mis-compilation or even runtime errors.
91
- To mitigate this, you should set the isolatedModules option to true in tsconfig and let your IDE warn you when such incompatible constructs are used.`),a.dependencies&&p.externals.push(...Object.keys(a.dependencies)),a.peerDependencies&&p.externals.push(...Object.keys(a.peerDependencies)),a.optionalDependencies&&p.externals.push(...Object.keys(a.optionalDependencies)),Me(p.alias),p.rollup.alias&&p.rollup.alias.entries&&Me(p.rollup.alias.entries),p},"generateOptions"),as=j(e=>e.replace(/\.(?:js|mjs|cjs|ts|mts|cts|json|jsx|tsx)$/,""),"removeExtension"),ls=j(async(e,t)=>{e.options.entries=e.options.entries.map(o=>typeof o=="string"?{input:o}:o);for await(const o of e.options.entries){if(typeof o.name!="string"){let n=Je(o.input)?D(t,o.input):ie(o.input);n.startsWith("./")&&(n=n.slice(2)),o.name=as(n.replace(/^src\//,""))}if(!o.input)throw new Error(`Missing entry input: ${xt(o)}`);if(o.input=g(e.options.rootDir,o.input),!E(o.input)){const n=new Set(await It(le(o.input)));let r=!1;for(const s of F)if(n.has(H(o.input)+s)){r=!0;break}if(!r)throw new zt("Your configured entry: "+v(o.input)+" does not exist.")}o.outDir=g(e.options.rootDir,o.outDir??e.options.outDir)}},"prepareEntries"),cs=j((e,t,o)=>{const n=j(s=>D(t.options.rootDir,g(t.options.outDir,s)),"rPath");let r=!1;for(const s of t.buildEntries.filter(i=>!i.chunk)){let i=s.bytes??0;for(const l of s.chunks??[])i+=t.buildEntries.find(c=>c.path===l)?.bytes??0;let a=` ${S(n(s.path))} (${["total size: "+v(_(i)),s.type!=="asset"&&s.bytes&&"chunk size: "+v(_(s.bytes))].filter(Boolean).join(", ")})`;if(a+=s.exports?.length?`
92
- exports: `+M(s.exports.join(", ")):"",s.chunks?.length&&(a+=`
93
- ${s.chunks.map(l=>{const c=t.buildEntries.find(p=>p.path===l)??{};return M(" └─ "+n(l)+S(c.bytes?" ("+_(c?.bytes)+")":""))}).join(`
94
- `)}`),s.modules&&s.modules.length>0){const l=s.modules.filter(c=>c.id.includes("node_modules")).sort((c,p)=>(p.bytes||0)-(c.bytes||0)).map(c=>M(" 📦 "+n(c.id)+S(c.bytes?" ("+_(c.bytes)+")":""))).join(`
93
+ To mitigate this, you should set the isolatedModules option to true in tsconfig and let your IDE warn you when such incompatible constructs are used.`),a.dependencies&&p.externals.push(...Object.keys(a.dependencies)),a.peerDependencies&&p.externals.push(...Object.keys(a.peerDependencies)),a.optionalDependencies&&p.externals.push(...Object.keys(a.optionalDependencies)),Ie(p.alias),p.rollup.alias&&p.rollup.alias.entries&&Ie(p.rollup.alias.entries),p},"generateOptions"),ls=j(e=>e.replace(/\.(?:js|mjs|cjs|ts|mts|cts|json|jsx|tsx)$/,""),"removeExtension"),cs=j(async(e,t)=>{e.options.entries=e.options.entries.map(o=>typeof o=="string"?{input:o}:o);for await(const o of e.options.entries){if(typeof o.name!="string"){let r=We(o.input)?D(t,o.input):ae(o.input);r.startsWith("./")&&(r=r.slice(2)),o.name=ls(r.replace(/^src\//,""))}if(!o.input)throw new Error(`Missing entry input: ${Et(o)}`);if(o.input=g(e.options.rootDir,o.input),!x(o.input)){const r=new Set(await Ft(ce(o.input)));let n=!1;for(const s of T)if(r.has(H(o.input)+s)){n=!0;break}if(!n)throw new Ut("Your configured entry: "+v(o.input)+" does not exist.")}o.outDir=g(e.options.rootDir,o.outDir??e.options.outDir)}},"prepareEntries"),ps=j((e,t,o)=>{const r=j(s=>D(t.options.rootDir,g(t.options.outDir,s)),"rPath");let n=!1;for(const s of t.buildEntries.filter(i=>!i.chunk)){let i=s.bytes??0;for(const l of s.chunks??[])i+=t.buildEntries.find(c=>c.path===l)?.bytes??0;let a=` ${S(r(s.path))} (${["total size: "+v(C(i)),s.type!=="asset"&&s.bytes&&"chunk size: "+v(C(s.bytes))].filter(Boolean).join(", ")})`;if(a+=s.exports?.length?`
94
+ exports: `+I(s.exports.join(", ")):"",s.chunks?.length&&(a+=`
95
+ ${s.chunks.map(l=>{const c=t.buildEntries.find(p=>p.path===l)??{};return I(" └─ "+r(l)+S(c.bytes?" ("+C(c?.bytes)+")":""))}).join(`
96
+ `)}`),s.modules&&s.modules.length>0){const l=s.modules.filter(c=>c.id.includes("node_modules")).sort((c,p)=>(p.bytes||0)-(c.bytes||0)).map(c=>I(" 📦 "+r(c.id)+S(c.bytes?" ("+C(c.bytes)+")":""))).join(`
95
97
  `);a+=l.length>0?`
96
98
  inlined modules:
97
99
  `+l:""}if(t.options.declaration&&s.type==="entry"){let l=s.path.replace(/\.js$/,".d.ts"),c="commonjs";s.path.endsWith(".cjs")?l=s.path.replace(/\.cjs$/,".d.cts"):s.path.endsWith(".mjs")&&(c="module",l=s.path.replace(/\.mjs$/,".d.mts"));const p=t.buildEntries.find(u=>u.path.endsWith(l));if(p){let u;(t.options.declaration===!0||t.options.declaration==="compatible")&&!l.includes(".d.ts")&&(l=l.replace(c==="commonjs"?".d.c":".d.m",".d."),u=t.buildEntries.find(m=>m.path.endsWith(l))),a+=u&&c===o.type?`
98
100
  types:
99
- `+[p,u].map(m=>M(" └─ ")+S(n(m.path))+" (total size: "+v(_(m.bytes??0))+")").join(`
101
+ `+[p,u].map(m=>I(" └─ ")+S(r(m.path))+" (total size: "+v(C(m.bytes??0))+")").join(`
100
102
  `):`
101
- types: `+S(n(p.path))+" (total size: "+v(_(p.bytes??0))+")"}}r=!0,a+=`
103
+ types: `+S(r(p.path))+" (total size: "+v(C(p.bytes??0))+")"}}n=!0,a+=`
102
104
 
103
- `,e.raw(s.chunk?M(a):a)}return r&&e.raw("Σ Total dist size (byte size):",v(_(t.buildEntries.reduce((s,i)=>s+(i.bytes??0),0))),`
104
- `),r},"showSizeInformation"),ps=j(async(e,t,o,n,r,s,i,a)=>{const l=or(s.preset??r.preset??"auto",t),c=is(e,t,o,n,r,s,l,i,a);Jt(y(c.rootDir,c.outDir));const p={buildEntries:[],dependencyGraphMap:new Map,hooks:Gt(),logger:e,mode:o,options:c,pkg:i,tsconfig:a,usedImports:new Set,warnings:new Set};if(l.hooks&&p.hooks.addHooks(l.hooks),r.hooks&&p.hooks.addHooks(r.hooks),s.hooks&&p.hooks.addHooks(s.hooks),await p.hooks.callHook("build:prepare",p),!p.options.emitESM&&!p.options.emitCJS)throw new Error("Both emitESM and emitCJS are disabled. At least one of them must be enabled.");if(p.options.declaration&&a===void 0&&i.devDependencies?.typescript)throw new Error(" Cannot build declaration files without a tsconfig.json");return p.options.emitESM===void 0&&p.logger.info("Emitting ESM bundles, is disabled."),p.options.emitCJS===void 0&&p.logger.info("Emitting CJS bundles, is disabled."),i.devDependencies?.typescript||(p.options.declaration=!1),p.options.declaration||p.logger.info("Declaration files, are disabled."),p},"createContext"),us=j(async e=>{const t=[];if(e.options.clean)for(const o of new Set(e.options.entries.map(n=>n.outDir).filter(Boolean).sort()))o===e.options.rootDir||o===e.options.sourceDir||e.options.rootDir.startsWith(o.endsWith("/")?o:`${o}/`)||t.some(n=>o.startsWith(n))||(t.push(o),e.logger.info(`Cleaning dist directory: \`./${D(e.options.rootDir,o)}\``),await Ae(o))},"cleanDistributionDirectories"),ds=j(async(e,t,o)=>{await e.hooks.callHook("build:before",e),e.options.minify&&e.logger.info("Minification is enabled, the output will be minified");const n=Vn(e.options.entries,"environment","runtime"),r=[];for(const[i,a]of Object.entries(n))for(const[l,c]of Object.entries(a)){e.logger.info("Preparing build for "+v(i)+" environment with "+v(l)+" runtime"),e.options.rollup.replace?(e.options.rollup.replace.values={...e.options.rollup.replace.values,production:i},l==="edge-light"&&(e.options.rollup.replace.values.EdgeRuntime="edge-runtime")):e.logger.warn("'replace' plugin is disabled. You should enable it to replace 'process.env.*' environments.");const p=[],u=[],m=[];for(const f of c)f.cjs&&f.esm?p.push(f):f.cjs?m.push(f):f.esm&&u.push(f);if(p.length>0){const f={...e,options:{...e.options,emitCJS:!0,emitESM:!0,entries:p}};r.push(ee(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&r.push(te({...f,options:{...f.options,entries:b}},o))}if(u.length>0){const f={...e,options:{...e.options,emitCJS:!1,emitESM:!0,entries:u}};r.push(ee(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&r.push(te({...f,options:{...f.options,entries:b}},o))}if(m.length>0){const f={...e,options:{...e.options,emitCJS:!0,emitESM:!1,entries:m}};r.push(ee(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&r.push(te({...f,options:{...f.options,entries:b}},o))}}await Promise.all(r),e.logger.success(Tt(e.options.name?"Build succeeded for "+e.options.name:"Build succeeded"));for await(const i of Wt(y(e.options.rootDir,e.options.outDir))){let a=e.buildEntries.find(l=>y(e.options.rootDir,e.options.outDir,l.path)===i.path);if(a||(a={chunk:!0,path:i.path},e.buildEntries.push(a)),!a.bytes){const l=await Re(g(e.options.rootDir,e.options.outDir,i.path));a.bytes=l.size}}const s=cs(e.logger,e,t);Zn(e),rs(t,e),await e.hooks.callHook("build:done",e),Ot(e,s)},"build"),ms=j(async(e,t,o,n={})=>{const{configPath:r,debug:s,tsconfigPath:i,...a}=n;o.wrapAll(),e=g(_t(),e),o.debug("Root directory:",e);const l=y(e,"package.json");if(!E(l))throw new Error("package.json not found at "+l);const c=Be(l);o.debug("Using package.json found at",l);let p;if(i){const u=y(e,i);if(!await Lt(u))throw new Error("tsconfig.json not found at "+u);p={config:Vt(u),path:u},o.info("Using tsconfig settings at",u)}else if(c.devDependencies?.typescript)try{p=await Ht(e),o.debug("Using tsconfig settings found at",p.path)}catch{o.info("No tsconfig.json or jsconfig.json found.")}try{const u=r??"./packem.config.ts";if(!/\.(?:js|mjs|cjs|ts)$/.test(u))throw new Error("Invalid packem config file extension. Only .js, .mjs, .cjs, .ts extensions are allowed.");const m=Ye(u,e);o.debug("Using packem config found at",y(e,u));const f=Date.now(),b=j(()=>Ut(Math.floor(Date.now()-f)),"getDuration"),$=C(JSON.stringify({version:c.version,...c.dependencies,...c.devDependencies,...c.peerDependencies,...c.peerDependenciesMeta,browser:c.browser,eNode:c.engines?.node,exports:c.exports,main:c.main,module:c.module,type:c.type,types:c.types})),k=new Bn(e,$,o);k.cachePath&&!E(y(k.cachePath,$))&&E(k.cachePath)&&(o.info("Clearing file cache because the cache key has changed."),await Ae(k.cachePath));const h=await ps(o,e,t,s??!1,a,m,c,p);if(k.isEnabled=h.options.fileCache,await ls(h,e),h.logger.info(v((t==="watch"?"Watching":t==="jit"?"Stubbing":"Building")+" "+h.options.name)),h.logger.debug(`${S("Root dir:")} ${h.options.rootDir}
105
+ `,e.raw(s.chunk?I(a):a)}return n&&e.raw("Σ Total dist size (byte size):",v(C(t.buildEntries.reduce((s,i)=>s+(i.bytes??0),0))),`
106
+ `),n},"showSizeInformation"),us=j(async(e,t,o,r,n,s,i,a)=>{const l=rr(s.preset??n.preset??"auto",t),c=as(e,t,o,r,n,s,l,i,a);Wt(h(c.rootDir,c.outDir));const p={buildEntries:[],dependencyGraphMap:new Map,hooks:Yt(),logger:e,mode:o,options:c,pkg:i,tsconfig:a,usedImports:new Set,warnings:new Set};if(l.hooks&&p.hooks.addHooks(l.hooks),n.hooks&&p.hooks.addHooks(n.hooks),s.hooks&&p.hooks.addHooks(s.hooks),await p.hooks.callHook("build:prepare",p),!p.options.emitESM&&!p.options.emitCJS)throw new Error("Both emitESM and emitCJS are disabled. At least one of them must be enabled.");if(p.options.declaration&&a===void 0&&i.devDependencies?.typescript)throw new Error(" Cannot build declaration files without a tsconfig.json");return p.options.emitESM===void 0&&p.logger.info("Emitting ESM bundles, is disabled."),p.options.emitCJS===void 0&&p.logger.info("Emitting CJS bundles, is disabled."),i.devDependencies?.typescript||(p.options.declaration=!1),p.options.declaration||p.logger.info("Declaration files, are disabled."),p},"createContext"),ds=j(async e=>{const t=[];if(e.options.clean)for(const o of new Set(e.options.entries.map(r=>r.outDir).filter(Boolean).sort()))o===e.options.rootDir||o===e.options.sourceDir||e.options.rootDir.startsWith(o.endsWith("/")?o:`${o}/`)||t.some(r=>o.startsWith(r))||(t.push(o),e.logger.info(`Cleaning dist directory: \`./${D(e.options.rootDir,o)}\``),await Be(o))},"cleanDistributionDirectories"),ms=j(async(e,t,o)=>{await e.hooks.callHook("build:before",e),e.options.minify&&e.logger.info("Minification is enabled, the output will be minified");const r=Hn(e.options.entries,"environment","runtime"),n=[];for(const[i,a]of Object.entries(r))for(const[l,c]of Object.entries(a)){e.logger.info("Preparing build for "+v(i)+" environment with "+v(l)+" runtime"),e.options.rollup.replace?(e.options.rollup.replace.values={...e.options.rollup.replace.values,production:i},l==="edge-light"&&(e.options.rollup.replace.values.EdgeRuntime="edge-runtime")):e.logger.warn("'replace' plugin is disabled. You should enable it to replace 'process.env.*' environments.");const p=[],u=[],m=[];for(const f of c)f.cjs&&f.esm?p.push(f):f.cjs?m.push(f):f.esm&&u.push(f);if(p.length>0){const f={...e,options:{...e.options,emitCJS:!0,emitESM:!0,entries:p}};n.push(te(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&n.push(oe({...f,options:{...f.options,entries:b}},o))}if(u.length>0){const f={...e,options:{...e.options,emitCJS:!1,emitESM:!0,entries:u}};n.push(te(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&n.push(oe({...f,options:{...f.options,entries:b}},o))}if(m.length>0){const f={...e,options:{...e.options,emitCJS:!0,emitESM:!1,entries:m}};n.push(te(f,o));const b=f.options.entries.filter($=>$.declaration);e.options.declaration&&b.length>0&&n.push(oe({...f,options:{...f.options,entries:b}},o))}}await Promise.all(n),e.logger.success(At(e.options.name?"Build succeeded for "+e.options.name:"Build succeeded"));for await(const i of Lt(h(e.options.rootDir,e.options.outDir))){let a=e.buildEntries.find(l=>h(e.options.rootDir,e.options.outDir,l.path)===i.path);if(a||(a={chunk:!0,path:i.path},e.buildEntries.push(a)),!a.bytes){const l=await Te(g(e.options.rootDir,e.options.outDir,i.path));a.bytes=l.size}}const s=ps(e.logger,e,t);Qn(e),ns(t,e),await e.hooks.callHook("build:done",e),Dt(e,s)},"build"),fs=j(async(e,t,o,r={})=>{const{configPath:n,debug:s,tsconfigPath:i,...a}=r;o.wrapAll(),e=g(Ct(),e),o.debug("Root directory:",e);const l=h(e,"package.json");if(!x(l))throw new Error("package.json not found at "+l);const c=Je(l);o.debug("Using package.json found at",l);let p;if(i){const u=h(e,i);if(!await zt(u))throw new Error("tsconfig.json not found at "+u);p={config:Ht(u),path:u},o.info("Using tsconfig settings at",u)}else if(c.devDependencies?.typescript)try{p=await qt(e),o.debug("Using tsconfig settings found at",p.path)}catch{o.info("No tsconfig.json or jsconfig.json found.")}try{const u=n??"./packem.config.ts";if(!/\.(?:js|mjs|cjs|ts)$/.test(u))throw new Error("Invalid packem config file extension. Only .js, .mjs, .cjs, .ts extensions are allowed.");const m=Ke(u,e);o.debug("Using packem config found at",h(e,u));const f=Date.now(),b=j(()=>Vt(Math.floor(Date.now()-f)),"getDuration"),$=M(JSON.stringify({version:c.version,...c.dependencies,...c.devDependencies,...c.peerDependencies,...c.peerDependenciesMeta,browser:c.browser,eNode:c.engines?.node,exports:c.exports,main:c.main,module:c.module,type:c.type,types:c.types})),E=new Jn(e,$,o);E.cachePath&&!x(h(E.cachePath,$))&&x(E.cachePath)&&(o.info("Clearing file cache because the cache key has changed."),await Be(E.cachePath));const y=await us(o,e,t,s??!1,a,m,c,p);if(E.isEnabled=y.options.fileCache,await cs(y,e),y.logger.info(v((t==="watch"?"Watching":t==="jit"?"Stubbing":"Building")+" "+y.options.name)),y.logger.debug(`${S("Root dir:")} ${y.options.rootDir}
105
107
  ${S("Entries:")}
106
- ${h.options.entries.map(R=>` ${xt(R)}`).join(`
107
- `)}`),await us(h),h.options.stub){await Bo(h),await h.hooks.callHook("build:done",h);return}if(t==="watch"){if(h.options.rollup.watch===!1)throw new Error("Rollup watch is disabled. You should check your packem.config file.");await In(h,k),Ot(h,!1);return}await ds(h,c,k),o.raw(`
108
+ ${y.options.entries.map(_=>` ${Et(_)}`).join(`
109
+ `)}`),await ds(y),y.options.stub){await Jo(y),await y.hooks.callHook("build:done",y);return}if(t==="watch"){if(y.options.rollup.watch===!1)throw new Error("Rollup watch is disabled. You should check your packem.config file.");await Fn(y,E),Dt(y,!1);return}await ms(y,c,E),o.raw(`
108
110
  ⚡️ Build run in `+b()),o.restoreAll()}catch(u){throw o.raw(`
109
- `),jt(u),u}},"createBundler");var fs=Object.defineProperty,oe=d((e,t)=>fs(e,"name",{value:t,configurable:!0}),"a");const gs=oe(e=>{e.addCommand({description:"Demonstrate options required",execute:oe(async({logger:t,options:o})=>{let n="build";o.watch?n="watch":o.jit&&(n="jit");const r={};if(o.env)for(const s of o.env)r[s.key]=s.value;try{await ms(o.dir,n,t,{cjsInterop:o.cjsInterop,configPath:o.config??void 0,debug:o.debug,minify:o.minify,replace:{...r},rollup:{esbuild:{target:o.target},license:{path:o.license},metafile:o.metafile,...o.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:o.sourcemap,tsconfigPath:o.tsconfig??void 0})}catch(s){t.error(s),Ct(1)}},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{conflicts:"jit",description:"Watch for changes",name:"watch",type:Boolean},{conflicts:"watch",description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:oe(t=>{const[o,n]=t.split("=");return{key:o,value:n}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand");var hs=Object.defineProperty,Fe=d((e,t)=>hs(e,"name",{value:t,configurable:!0}),"m");const ys=Fe(e=>{e.addCommand({description:"Initialize packem configuration",execute:Fe(async({logger:t,options:o})=>{if(yo("Welcome to packem setup"),E(y(o.dir,"packem.config.ts"))){t.info("Packem project already initialized, you can use `packem build` to build your project");return}if(vo(o.transformer)){bo("Operation cancelled");return}const n=y(o.dir,"package.json");if(!E(n))throw new Error("No package.json found in the directory");const r=Be(n),s=[];if(r.dependencies&&s.push(...Object.keys(r.dependencies)),r.devDependencies&&s.push(...Object.keys(r.devDependencies)),o.transformer===void 0&&(o.transformer=await $o({message:"Pick a transformer",options:[{label:"esbuild",value:"esbuild"},{label:"swc",value:"swc"},{label:"Sucrase",value:"sucrase"}]}),!s.includes(o.transformer)&&await wo({message:"Do you want to install "+o.transformer+"?"}))){const i=Y();i.start("Installing "+o.transformer),await ho(o.transformer==="swc"?"@swc/core":o.transformer,{cwd:o.dir,dev:!0,silent:!0}),i.stop("")}if(s.includes("typescript")||r.type==="module"){const i=`import { defineConfig } from "@visulima/packem/config";
111
+ `),kt(u),u}},"createBundler");var gs=Object.defineProperty,re=d((e,t)=>gs(e,"name",{value:t,configurable:!0}),"a");const hs=re(e=>{e.addCommand({description:"Demonstrate options required",execute:re(async({logger:t,options:o})=>{let r="build";o.watch?r="watch":o.jit&&(r="jit");const n={};if(o.env)for(const s of o.env)n[s.key]=s.value;try{await fs(o.dir,r,t,{cjsInterop:o.cjsInterop,configPath:o.config??void 0,debug:o.debug,minify:o.minify,replace:{...n},rollup:{esbuild:{target:o.target},license:{path:o.license},metafile:o.metafile,...o.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:o.sourcemap,tsconfigPath:o.tsconfig??void 0})}catch(s){t.error(s),Mt(1)}},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{conflicts:"jit",description:"Watch for changes",name:"watch",type:Boolean},{conflicts:"watch",description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:re(t=>{const[o,r]=t.split("=");return{key:o,value:r}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand");var ys=Object.defineProperty,Re=d((e,t)=>ys(e,"name",{value:t,configurable:!0}),"m");const vs=Re(e=>{e.addCommand({description:"Initialize packem configuration",execute:Re(async({logger:t,options:o})=>{if(vo("Welcome to packem setup"),x(h(o.dir,"packem.config.ts"))){t.info("Packem project already initialized, you can use `packem build` to build your project");return}if(bo(o.transformer)){$o("Operation cancelled");return}const r=h(o.dir,"package.json");if(!x(r))throw new Error("No package.json found in the directory");const n=Je(r),s=[];if(n.dependencies&&s.push(...Object.keys(n.dependencies)),n.devDependencies&&s.push(...Object.keys(n.devDependencies)),o.transformer===void 0&&(o.transformer=await wo({message:"Pick a transformer",options:[{label:"esbuild",value:"esbuild"},{label:"swc",value:"swc"},{label:"Sucrase",value:"sucrase"}]}),!s.includes(o.transformer)&&await jo({message:"Do you want to install "+o.transformer+"?"}))){const i=K();i.start("Installing "+o.transformer),await yo(o.transformer==="swc"?"@swc/core":o.transformer,{cwd:o.dir,dev:!0,silent:!0}),i.stop("")}if(s.includes("typescript")||n.type==="module"){const i=`import { defineConfig } from "@visulima/packem/config";
110
112
  import transformer from "@visulima/packem/transformer/${o.transformer}";
111
113
 
112
114
  export default defineConfig({
113
115
  transformer
114
116
  });
115
- `,a=Y(),l=r.type==="module"?"mjs":"ts";a.start("Creating packem.config."+l),U(y(o.dir,"packem.config."+l),i),a.stop("Created packem.config."+l)}else{const i=`const { defineConfig } = require("@visulima/packem/config");
117
+ `,a=K(),l=n.type==="module"?"mjs":"ts";a.start("Creating packem.config."+l),U(h(o.dir,"packem.config."+l),i),a.stop("Created packem.config."+l)}else{const i=`const { defineConfig } = require("@visulima/packem/config");
116
118
  const transformer = require("@visulima/packem/transformer/${o.transformer}");
117
119
 
118
120
  module.exports = defineConfig({
119
121
  transformer
120
122
  });
121
- `,a=Y();a.start("Creating packem.config.js"),U(y(o.dir,"packem.config.js"),i),a.stop("Created packem.config.js")}jo("Now you can run `packem build` to build your project")},"execute"),name:"init",options:[{defaultValue:".",description:"The directory to initialize",name:"dir",type:String},{description:"Choose a transformer to use for packem",name:"transformer",type:String}]})},"createInitCommand"),he=new St("packem",{logger:{reporters:[new Nt({error:{hideErrorCauseCodeView:!0,hideErrorCodeView:!0,hideErrorErrorsCodeView:!0}})],scope:"packem"},packageName:ko,packageVersion:xo});ys(he);gs(he);he.run({shouldExitProcess:!1});
123
+ `,a=K();a.start("Creating packem.config.js"),U(h(o.dir,"packem.config.js"),i),a.stop("Created packem.config.js")}ko("Now you can run `packem build` to build your project")},"execute"),name:"init",options:[{defaultValue:".",description:"The directory to initialize",name:"dir",type:String},{description:"Choose a transformer to use for packem",name:"transformer",type:String}]})},"createInitCommand"),ye=new Nt("packem",{logger:{reporters:[new Pt({error:{hideErrorCauseCodeView:!0,hideErrorCodeView:!0,hideErrorErrorsCodeView:!0}})],scope:"packem"},packageName:xo,packageVersion:Eo});vs(ye);hs(ye);ye.run({shouldExitProcess:!1});