@visulima/packem-rollup 1.0.0-alpha.30 → 1.0.0-alpha.31

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/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ ## @visulima/packem-rollup [1.0.0-alpha.31](https://github.com/visulima/packem/compare/@visulima/packem-rollup@1.0.0-alpha.30...@visulima/packem-rollup@1.0.0-alpha.31) (2025-12-09)
2
+
3
+ ### Features
4
+
5
+ * added preset for react and solid, added babel transformer ([773b907](https://github.com/visulima/packem/commit/773b907b462985cb61a5c978c43e227f24db6706))
6
+
7
+
8
+ ### Dependencies
9
+
10
+ * **@visulima/packem-share:** upgraded to 1.0.0-alpha.15
11
+
1
12
  ## @visulima/packem-rollup [1.0.0-alpha.30](https://github.com/visulima/packem/compare/@visulima/packem-rollup@1.0.0-alpha.29...@visulima/packem-rollup@1.0.0-alpha.30) (2025-11-30)
2
13
 
3
14
  ## @visulima/packem-rollup [1.0.0-alpha.29](https://github.com/visulima/packem/compare/@visulima/packem-rollup@1.0.0-alpha.28...@visulima/packem-rollup@1.0.0-alpha.29) (2025-11-26)
package/LICENSE.md CHANGED
@@ -362,7 +362,7 @@ Repository: https://github.com/broofa/mime
362
362
  > SOFTWARE.
363
363
 
364
364
  <!-- /DEPENDENCIES -->
365
- >
365
+
366
366
  > # Licenses of bundled types
367
367
  >
368
368
  > The published @visulima/tsconfig artifact additionally contains code with the following licenses:
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ export { default as browserslistToEsbuild } from "./plugins/esbuild/browserslist
4
4
  export { default as fixDynamicImportExtension } from "./plugins/fix-dynamic-import-extension.d.ts";
5
5
  export { default as metafilePlugin } from "./plugins/metafile.d.ts";
6
6
  export { default as resolveFileUrlPlugin } from "./plugins/resolve-file-url.d.ts";
7
- export type { ExtendedRollupNodeResolveOptions, IsolatedDeclarationsResult, IsolatedDeclarationsTransformer, PackemRollupOptions, RollupPlugins, TransformerFn, TransformerName } from "./types.d.ts";
7
+ export type { ExtendedRollupNodeResolveOptions, IsolatedDeclarationsResult, IsolatedDeclarationsTransformer, PackemRollupOptions, RollupPlugins, TransformerFn, TransformerName, } from "./types.d.ts";
8
8
  export { default as createSplitChunks } from "./utils/chunks/create-split-chunks.d.ts";
9
9
  export { default as getCustomModuleLayer } from "./utils/chunks/get-custom-module-layer.d.ts";
10
10
  export { default as getModuleLayer } from "./utils/chunks/get-module-layer.d.ts";
@@ -1 +1 @@
1
- var j=Object.defineProperty;var u=(e,r)=>j(e,"name",{value:r,configurable:!0});import{createFilter as x}from"@rollup/pluginutils";import{DEFAULT_LOADERS as k}from"@visulima/packem-share/constants";import{join as O,extname as E}from"@visulima/path";import{formatMessages as M,transform as h,build as $}from"esbuild";import{findCacheDirSync as A}from"@visulima/find-cache-dir";import{readFileSync as P}from"@visulima/fs";import*as R from"rs-module-lexer";var S=Object.defineProperty,F=u((e,r)=>S(e,"name",{value:r,configurable:!0}),"n$1");const y=F(async(e,r)=>{r.length>0&&(await M(r,{color:!0,kind:"warning"})).forEach(s=>e.warn(s))},"warn");var C=Object.defineProperty,w=u((e,r)=>C(e,"name",{value:r,configurable:!0}),"t");const L=w(e=>{if(e==="es")return"esm";if(e==="cjs")return e},"getEsbuildFormat"),W=w(({sourceMap:e=!0,...r})=>async function(s,n,i){if(r.minify||r.minifyWhitespace||r.minifyIdentifiers||r.minifySyntax){const t=L(i.format),c=await h(s,{format:t,loader:"js",sourcemap:e,...r});if(await y(this,c.warnings),c.code)return{code:c.code,map:c.map||void 0}}},"getRenderChunk");var I=Object.defineProperty,D=u((e,r)=>I(e,"name",{value:r,configurable:!0}),"n");const b=D(e=>e.replaceAll("\\","/"),"slash"),{parseAsync:T}=R,q=D(async e=>{const r=A("@visulima/packem/optimize-deps",{create:!0,cwd:e.cwd});if(!r)throw new Error('[packem:optimize-deps]: failed to find or create cache directory "node_modules/.cache/packem/optimize_deps".');await $({absWorkingDir:e.cwd,bundle:!0,entryPoints:e.include,format:"esm",ignoreAnnotations:!0,metafile:!0,outdir:r,sourcemap:e.sourceMap,splitting:!0,...e.esbuildOptions,plugins:[{name:"optimize-deps",async setup(n){n.onResolve({filter:/.*/},async i=>{if(e.exclude?.includes(i.path))return{external:!0};if(!i.pluginData?.__resolving_dep_path__&&e.include.includes(i.path)){const t=await n.resolve(i.path,{kind:"import-statement",pluginData:{__resolving_dep_path__:!0},resolveDir:i.resolveDir});return t.errors.length>0||t.warnings.length>0?t:{namespace:"optimize-deps",path:i.path,pluginData:{absolute:t.path,resolveDir:i.resolveDir}}}}),n.onLoad({filter:/.*/,namespace:"optimize-deps"},async i=>{const{absolute:t,resolveDir:c}=i.pluginData,p=P(t),{output:g}=await T({input:[{code:p,filename:t}]});return{contents:(g[0]?.exports??[]).length>0?`export * from '${b(t)}'`:`module.exports = require('${b(t)}')`,resolveDir:c}})}},...e.esbuildOptions?.plugins??[]]});const s=new Map;for(const n of e.include)s.set(n,{file:O(r,`${n}.js`)});return{cacheDir:r,optimized:s}},"optimizeDeps");var N=Object.defineProperty,U=u((e,r)=>N(e,"name",{value:r,configurable:!0}),"g");const B=U(({exclude:e,include:r,loaders:s,logger:n,optimizeDeps:i,sourceMap:t,...c})=>{const p=k;if(s!==void 0)for(let[a,o]of Object.entries(s)){const d=a.startsWith(".")?a:`.${a}`;typeof o=="string"?p[d]=o:o||delete p[d]}const g=Object.keys(p),_=new RegExp(`\\.(${g.map(a=>a.slice(1)).join("|")})$`),z=x(r??_,e);let l,v=process.cwd();return{async buildStart(){!i||l||(l=await q({cwd:v,sourceMap:t??!1,...i}),n.debug("optimized %O",l.optimized))},name:"packem:esbuild",options({context:a}){a&&(v=a)},renderChunk:W({...c,sourceMap:t}),async resolveId(a){if(l?.optimized.has(a)){const o=l.optimized.get(a);if(o)return n.debug("resolved %s to %s",a,o.file),o.file}},async transform(a,o){if(!z(o)||l?.optimized.has(o))return;const d=E(o),m=p[d];if(n.debug("transforming %s with %s loader",o,m),!m)return;const f=await h(a,{format:["base64","binary","dataurl","text","json"].includes(m)?"esm":void 0,loader:m,sourcefile:o.replace(/\.[cm]ts/,".ts"),sourcemap:t,...c});if(await y(this,f.warnings),f.code)return{code:f.code,map:f.map||void 0}}}},"esbuildTransformer");B.NAME="esbuild";export{B as default};
1
+ var j=Object.defineProperty;var u=(e,r)=>j(e,"name",{value:r,configurable:!0});import{createFilter as x}from"@rollup/pluginutils";import{DEFAULT_LOADERS as k}from"@visulima/packem-share/constants";import{join as O,extname as E}from"@visulima/path";import{formatMessages as M,transform as h,build as $}from"esbuild";import{findCacheDirSync as A}from"@visulima/find-cache-dir";import{readFileSync as S}from"@visulima/fs";import*as P from"rs-module-lexer";var R=Object.defineProperty,F=u((e,r)=>R(e,"name",{value:r,configurable:!0}),"n$1");const w=F(async(e,r)=>{r.length>0&&(await M(r,{color:!0,kind:"warning"})).forEach(s=>e.warn(s))},"warn");var C=Object.defineProperty,y=u((e,r)=>C(e,"name",{value:r,configurable:!0}),"t");const L=y(e=>{if(e==="es")return"esm";if(e==="cjs")return e},"getEsbuildFormat"),W=y(({sourceMap:e=!0,...r})=>async function(s,n,i){if(r.minify||r.minifyWhitespace||r.minifyIdentifiers||r.minifySyntax){const t=L(i.format),c=await h(s,{format:t,loader:"js",sourcemap:e,...r});if(await w(this,c.warnings),c.code)return{code:c.code,map:c.map||void 0}}},"getRenderChunk");var I=Object.defineProperty,D=u((e,r)=>I(e,"name",{value:r,configurable:!0}),"n");const b=D(e=>e.replaceAll("\\","/"),"slash"),{parseAsync:T}=P,q=D(async e=>{const r=A("@visulima/packem/optimize-deps",{create:!0,cwd:e.cwd});if(!r)throw new Error('[packem:optimize-deps]: failed to find or create cache directory "node_modules/.cache/packem/optimize_deps".');await $({absWorkingDir:e.cwd,bundle:!0,entryPoints:e.include,format:"esm",ignoreAnnotations:!0,metafile:!0,outdir:r,sourcemap:e.sourceMap,splitting:!0,...e.esbuildOptions,plugins:[{name:"optimize-deps",async setup(n){n.onResolve({filter:/.*/},async i=>{if(e.exclude?.includes(i.path))return{external:!0};if(!i.pluginData?.__resolving_dep_path__&&e.include.includes(i.path)){const t=await n.resolve(i.path,{kind:"import-statement",pluginData:{__resolving_dep_path__:!0},resolveDir:i.resolveDir});return t.errors.length>0||t.warnings.length>0?t:{namespace:"optimize-deps",path:i.path,pluginData:{absolute:t.path,resolveDir:i.resolveDir}}}}),n.onLoad({filter:/.*/,namespace:"optimize-deps"},async i=>{const{absolute:t,resolveDir:c}=i.pluginData,p=S(t),{output:g}=await T({input:[{code:p,filename:t}]});return{contents:(g[0]?.exports??[]).length>0?`export * from '${b(t)}'`:`module.exports = require('${b(t)}')`,resolveDir:c}})}},...e.esbuildOptions?.plugins??[]]});const s=new Map;for(const n of e.include)s.set(n,{file:O(r,`${n}.js`)});return{cacheDir:r,optimized:s}},"optimizeDeps");var N=Object.defineProperty,U=u((e,r)=>N(e,"name",{value:r,configurable:!0}),"g");const B=U(({exclude:e,include:r,loaders:s,logger:n,optimizeDeps:i,sourceMap:t,...c})=>{const p=k;if(s!==void 0)for(let[a,o]of Object.entries(s)){const d=a.startsWith(".")?a:`.${a}`;typeof o=="string"?p[d]=o:o||delete p[d]}const g=Object.keys(p),_=new RegExp(String.raw`\.(${g.map(a=>a.slice(1)).join("|")})$`),z=x(r??_,e);let l,v=process.cwd();return{async buildStart(){!i||l||(l=await q({cwd:v,sourceMap:t??!1,...i}),n.debug("optimized %O",l.optimized))},name:"packem:esbuild",options({context:a}){a&&(v=a)},renderChunk:W({...c,sourceMap:t}),async resolveId(a){if(l?.optimized.has(a)){const o=l.optimized.get(a);if(o)return n.debug("resolved %s to %s",a,o.file),o.file}},async transform(a,o){if(!z(o)||l?.optimized.has(o))return;const d=E(o),m=p[d];if(n.debug("transforming %s with %s loader",o,m),!m)return;const f=await h(a,{format:["base64","binary","dataurl","text","json"].includes(m)?"esm":void 0,loader:m,sourcefile:o.replace(/\.[cm]ts/,".ts"),sourcemap:t,...c});if(await w(this,f.warnings),f.code)return{code:f.code,map:f.map||void 0}}}},"esbuildTransformer");B.NAME="esbuild";export{B as default};
@@ -1,4 +1,4 @@
1
- var A=Object.defineProperty;var v=(a,t)=>A(a,"name",{value:t,configurable:!0});import y from"magic-string";import{findExports as N,findStaticImports as I,parseStaticImport as C}from"mlly";import{parseSync as b}from"oxc-parser";var T=Object.defineProperty,g=v((a,t)=>T(a,"name",{value:t,configurable:!0}),"h");const _=g((a,t,n)=>{const l=N(a).find(e=>e.names.includes("default")),r=a.match(/^export\s+default\s+(\w+);/m);if(r&&r[1])return{defaultAlias:r[1],defaultExport:{code:r[0],end:r.index===void 0?void 0:r.index+r[0].length,names:["default"],specifier:void 0,start:r.index,type:"default"},exports:[]};if(!l)return;const p=l.code.match(/export\s*\{([^}]*)\}/);if(!p?.length){n.warn?.(`A default export was indicated in ${t.fileName}, but its structure could not be parsed.`);return}let i;const c=[];for(const e of p[1].split(",").map(o=>o.trim())){if(e==="default"){i=e;continue}const o=e.match(/\s*as\s+default\s*/);o?i=e.replace(o[0],""):c.push(e)}if(!i){n.warn?.(`A default export was indicated in ${t.fileName}, but its alias could not be determined from the export statement.`);return}return{defaultAlias:i,defaultExport:l,exports:c}},"extractExports"),j=g((a,t,n)=>{if("declarations"in t&&t.declarations.length>0){const l=t.declarations[0];if(l&&l.id.type==="Identifier"){a.set(l.id.name,{declare:t.declare===!0,end:t.end,isVariable:!0,start:t.start});return}}if("id"in t&&t.id&&t.id.type==="Identifier"){const{name:l}=t.id;a.set(l,{declare:t.declare===!0,end:t.end,isClass:t.type==="ClassDeclaration",start:t.start});return}a.set(n(),{declare:t.declare===!0,end:t.end,start:t.start})},"prepareDeclaration"),E=g((a,t,n,l)=>{const r=b(n.fileName,a,{astType:"ts",lang:"ts",sourceType:"module"});let p,i=0;const c=g(()=>(i+=1,`__unnamed_${i}$$`),"generateUnnamed"),e=new Map,o=new Map,{program:m}=r;for(const s of m.body)if(s.type==="ExportNamedDeclaration")for(const d of s.specifiers)d.exported.type==="Identifier"&&(d.exported.name==="default"?d.local.type==="Identifier"&&(p={end:d.end,local:d.local.name,start:d.start}):d.exported.type==="Identifier"&&o.set(d.exported.name,{type:d.exportKind==="type"}));else{if(s.type==="ImportDeclaration")continue;switch(s.type){case"ClassDeclaration":case"FunctionDeclaration":case"TSDeclareFunction":case"TSEnumDeclaration":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"VariableDeclaration":{j(e,s,c);break}case"TSImportEqualsDeclaration":case"TSModuleDeclaration":{e.set(c(),{declare:!1,end:s.end,start:s.start});break}}}const x=[];if(p)for(const[s,d]of o.entries())s!==p.local&&d.type&&x.push(s);if(!p){const s=[...o.values()].every(d=>d.type);return t.startsWith("export type")&&o.size>0&&s||l.warn?.(`Cannot infer default export from the file: ${n.fileName}`),t}if(!e.get(p.local))return l.warn?.(`Cannot infer default export from the file: ${n.fileName}. Declaration for '${p.local}' not found.`),t;const u=t,f=new y(`${u}
1
+ var A=Object.defineProperty;var v=(a,t)=>A(a,"name",{value:t,configurable:!0});import y from"magic-string";import{findExports as C,findStaticImports as I,parseStaticImport as N}from"mlly";import{parseSync as b}from"oxc-parser";var T=Object.defineProperty,g=v((a,t)=>T(a,"name",{value:t,configurable:!0}),"h");const _=g((a,t,n)=>{const l=C(a).find(e=>e.names.includes("default")),r=a.match(/^export\s+default\s+(\w+);/m);if(r&&r[1])return{defaultAlias:r[1],defaultExport:{code:r[0],end:r.index===void 0?void 0:r.index+r[0].length,names:["default"],specifier:void 0,start:r.index,type:"default"},exports:[]};if(!l)return;const p=l.code.match(/export\s*\{([^}]*)\}/);if(!p?.length){n.warn?.(`A default export was indicated in ${t.fileName}, but its structure could not be parsed.`);return}let i;const c=[];for(const e of p[1].split(",").map(o=>o.trim())){if(e==="default"){i=e;continue}const o=e.match(/\s*as\s+default\s*/);o?i=e.replace(o[0],""):c.push(e)}if(!i){n.warn?.(`A default export was indicated in ${t.fileName}, but its alias could not be determined from the export statement.`);return}return{defaultAlias:i,defaultExport:l,exports:c}},"extractExports"),j=g((a,t,n)=>{if("declarations"in t&&t.declarations.length>0){const l=t.declarations[0];if(l&&l.id.type==="Identifier"){a.set(l.id.name,{declare:t.declare===!0,end:t.end,isVariable:!0,start:t.start});return}}if("id"in t&&t.id&&t.id.type==="Identifier"){const{name:l}=t.id;a.set(l,{declare:t.declare===!0,end:t.end,isClass:t.type==="ClassDeclaration",start:t.start});return}a.set(n(),{declare:t.declare===!0,end:t.end,start:t.start})},"prepareDeclaration"),E=g((a,t,n,l)=>{const r=b(n.fileName,a,{astType:"ts",lang:"ts",sourceType:"module"});let p,i=0;const c=g(()=>(i+=1,`__unnamed_${i}$$`),"generateUnnamed"),e=new Map,o=new Map,{program:m}=r;for(const s of m.body)if(s.type==="ExportNamedDeclaration")for(const d of s.specifiers)d.exported.type==="Identifier"&&(d.exported.name==="default"?d.local.type==="Identifier"&&(p={end:d.end,local:d.local.name,start:d.start}):d.exported.type==="Identifier"&&o.set(d.exported.name,{type:d.exportKind==="type"}));else{if(s.type==="ImportDeclaration")continue;switch(s.type){case"ClassDeclaration":case"FunctionDeclaration":case"TSDeclareFunction":case"TSEnumDeclaration":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"VariableDeclaration":{j(e,s,c);break}case"TSImportEqualsDeclaration":case"TSModuleDeclaration":{e.set(c(),{declare:!1,end:s.end,start:s.start});break}}}const x=[];if(p)for(const[s,d]of o.entries())s!==p.local&&d.type&&x.push(s);if(!p){const s=[...o.values()].every(d=>d.type);return t.startsWith("export type")&&o.size>0&&s||l.warn?.(`Cannot infer default export from the file: ${n.fileName}`),t}if(!e.get(p.local))return l.warn?.(`Cannot infer default export from the file: ${n.fileName}. Declaration for '${p.local}' not found.`),t;const u=t,f=new y(`${u}
2
2
  declare namespace ${p.local} {
3
3
  `);for(const[s,d]of e.entries()){if(x.includes(s)&&s!==p.local)continue;const h=a.slice(d.start,d.end).replace(/\s+\}$/," }");f.append(" "),d.declare?f.append(h.replace("declare","export").replaceAll(" "," ")):f.append(`export ${h}`.replaceAll(" "," ")),f.append(`
4
4
  `)}return f.append(` import _default = ${p.local};
@@ -22,5 +22,5 @@ ${n};
22
22
  `),E(a,e.trim(),t,p)}if(n&&c.length>0&&i.length===0){let e=`// @ts-ignore
23
23
  ${n};
24
24
  `;return e+=`export { ${c.join(", ")} };
25
- `,E(a,e.trim(),t,p)}if(n&&c.length===0&&i.length===0){const e=new RegExp(`^export\\\\s+default\\\\s+${n};`,"m"),o=a.match(e);return o?`${a.slice(0,Math.max(0,o.index??0))}export = ${n};`:a.replace(l.code,`export = ${n};`).replace(";;",";")}},"handleNoSpecifierDefaultCJSExport"),J=/^export\s+default\s+from\s+['"]([^'"]+)['"];?$/m,O=g((a,t,n)=>{const l=a.match(J);if(l)return{code:`import _default from '${l[1]}';
26
- export = _default;`,map:void 0};const r=_(a,t,n);if(r){let e;if(r.defaultExport.specifier){const{specifier:o}=r.defaultExport,m=I(a),x=m.filter($=>$.imports).map($=>C($)),u=x.find($=>$.specifier===o),{defaultAlias:f,defaultExport:s,exports:d}=r,h=s.exports;if(f==="default"&&s.specifier&&d.length>0)e=D(a,r,u);else if(f==="default"&&s.specifier&&d.length===0&&h&&/\bas\s+default\b/.test(h))x.find($=>$.specifier===s.specifier)?.defaultImport?e=D(a,r,u):(n.warn?.(`Cannot parse default export name from ${s.specifier} import at ${t.fileName}!. The module might not have a default export, or it's aliased as 'default'.`),e=void 0);else if(f==="default"&&s.specifier&&d.length===0)e=D(a,r,u);else if(s.specifier&&f!=="default"){e=M(a,t,r,m,n,u);const $=u&&r.defaultExport.specifier&&f!=="default"&&(!u.namedImports||u.namedImports[f]!==f);if(!(e===void 0&&$)&&e===void 0&&!(f==="default"&&d.length===0&&h&&/\bas\s+default\b/.test(h))){const S=w(a,t,r,n);S&&(e=S)}}}else e=w(a,t,r,n);return e?{code:e,map:void 0}:void 0}const p=b(t.fileName,a,{astType:"ts",lang:"ts",sourceType:"module"});let i=[],c=!1;if(p.program.body.length>0){const e=p.program.body.at(-1);e?.type==="ExportNamedDeclaration"&&!e.declaration&&e.specifiers.length>0&&e.specifiers.every(o=>o.exportKind==="type")&&(c=!0,i=e.specifiers.map(o=>o.local.type==="Identifier"?o.local.name:"").filter(Boolean))}if(c&&i.length>0){const e=`export type { ${i.join(", ")} };`,o=E(a,e,t,n);return o?{code:o,map:void 0}:void 0}},"fixDtsDefaultCJSExports");export{O as _};
25
+ `,E(a,e.trim(),t,p)}if(n&&c.length===0&&i.length===0){const e=new RegExp(String.raw`^export\\s+default\\s+${n};`,"m"),o=a.match(e);return o?`${a.slice(0,Math.max(0,o.index??0))}export = ${n};`:a.replace(l.code,`export = ${n};`).replace(";;",";")}},"handleNoSpecifierDefaultCJSExport"),J=/^export\s+default\s+from\s+['"]([^'"]+)['"];?$/m,O=g((a,t,n)=>{const l=a.match(J);if(l)return{code:`import _default from '${l[1]}';
26
+ export = _default;`,map:void 0};const r=_(a,t,n);if(r){let e;if(r.defaultExport.specifier){const{specifier:o}=r.defaultExport,m=I(a),x=m.filter($=>$.imports).map($=>N($)),u=x.find($=>$.specifier===o),{defaultAlias:f,defaultExport:s,exports:d}=r,h=s.exports;if(f==="default"&&s.specifier&&d.length>0)e=D(a,r,u);else if(f==="default"&&s.specifier&&d.length===0&&h&&/\bas\s+default\b/.test(h))x.find($=>$.specifier===s.specifier)?.defaultImport?e=D(a,r,u):(n.warn?.(`Cannot parse default export name from ${s.specifier} import at ${t.fileName}!. The module might not have a default export, or it's aliased as 'default'.`),e=void 0);else if(f==="default"&&s.specifier&&d.length===0)e=D(a,r,u);else if(s.specifier&&f!=="default"){e=M(a,t,r,m,n,u);const $=u&&r.defaultExport.specifier&&f!=="default"&&(!u.namedImports||u.namedImports[f]!==f);if(!(e===void 0&&$)&&e===void 0&&!(f==="default"&&d.length===0&&h&&/\bas\s+default\b/.test(h))){const S=w(a,t,r,n);S&&(e=S)}}}else e=w(a,t,r,n);return e?{code:e,map:void 0}:void 0}const p=b(t.fileName,a,{astType:"ts",lang:"ts",sourceType:"module"});let i=[],c=!1;if(p.program.body.length>0){const e=p.program.body.at(-1);e?.type==="ExportNamedDeclaration"&&!e.declaration&&e.specifiers.length>0&&e.specifiers.every(o=>o.exportKind==="type")&&(c=!0,i=e.specifiers.map(o=>o.local.type==="Identifier"?o.local.name:"").filter(Boolean))}if(c&&i.length>0){const e=`export type { ${i.join(", ")} };`,o=E(a,e,t,n);return o?{code:o,map:void 0}:void 0}},"fixDtsDefaultCJSExports");export{O as _};
@@ -0,0 +1,6 @@
1
+ var w=Object.defineProperty;var l=(e,n)=>w(e,"name",{value:n,configurable:!0});import{parse as $}from"@babel/parser";import{w as y}from"./index-Dq8IUFTs.js";import T from"magic-string";import{findStaticImports as b}from"mlly";var C=Object.defineProperty,s=l((e,n)=>C(e,"name",{value:n,configurable:!0}),"r");const S=/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g,x=/MIT License|MIT license|BSD license/,N=/\n{2,}/g,k=/\b(\w+)\$\d+\b/g,v=/[-/\\^$*+?.()|[\]{}]/g,A=s(e=>e.replaceAll(v,String.raw`\$&`),"escapeRegex"),I=s(e=>[...new Set(e)],"unique"),R=s(e=>e.replaceAll(S,n=>x.test(n)?"":n).replaceAll(N,`
2
+
3
+ `),"cleanUnnecessaryComments"),d=new Map;function g(e,n,{identifierReplacements:r},a){const p=b(e);for(const t in r){const o=p.find(i=>i.specifier===t&&i.imports.includes("{"));if(!o){this.warn(`${n.fileName} does not import "${t}" for replacement`),process.exitCode=1;continue}const c=r[t];for(const i in c){if(!o.imports.includes(i))throw new Error(`${n.fileName} does not import "${i}" from "${t}" for replacement`);const f=c[i],u=A(i);f.includes(".")&&(e=e.replace(new RegExp(String.raw`\b\w+\b as ${u},?\s?`),"")),e=e.replaceAll(new RegExp(String.raw`\b${u}\b`,"g"),f)}}const m=I(Array.from(e.matchAll(k),t=>t[0]));if(m.length>0){const t=m.map(c=>`
4
+ - ${c}`).join(""),o=n.fileName.replace(/\.[^/.]+$/,"");d.has(o)||a.warn({message:`${n.fileName} contains confusing identifier names${t}
5
+
6
+ To replace these, add them to the "rollup -> patchTypes -> identifierReplacements" option in your packem config.`,prefix:"plugin:patch-types"}),d.set(o,!0)}return e}l(g,"I");s(g,"replaceConfusingTypeNames");const E=s((e,n)=>{if(n.leadingComments?.some(r=>r.type==="CommentBlock"&&r.value.includes("@internal"))){const r=e.original[n.end]===","?n.end+1:n.end;return e.remove(n.leadingComments[0].start,r),!0}return!1},"removeInternal");function h(e,n){if(e.includes("@internal")){const r=new T(e),a=$(e,{plugins:["typescript"],sourceType:"module"});if(y(a,{enter(p){E(r,p)&&this.skip()}}),e=r.toString(),e.includes("@internal"))throw new Error(`${n.fileName} has unhandled @internal declarations`)}return e}l(h,"P");s(h,"stripInternalTypes");const D=s((e,n)=>({name:"packem:patch-types",renderChunk(r,a){return r=g.call(this,r,a,e,n),r=h.call(this,r,a),r=R(r),r}}),"patchTypescriptTypes");export{D as patchTypescriptTypes};
@@ -0,0 +1,10 @@
1
+ import type { TransformOptions } from "@babel/core";
2
+ import type { FilterPattern } from "@rollup/pluginutils";
3
+ import type { Plugin } from "rollup";
4
+ export interface BabelPluginConfig extends Omit<TransformOptions, "filename" | "sourceFileName" | "exclude" | "include"> {
5
+ exclude?: FilterPattern;
6
+ filename?: string;
7
+ include?: FilterPattern;
8
+ sourceFileName?: string;
9
+ }
10
+ export declare const babelTransformPlugin: ({ exclude, filename, generatorOpts, include, sourceFileName, ...transformOptions }: BabelPluginConfig) => Plugin;
@@ -0,0 +1 @@
1
+ var y=Object.defineProperty;var g=(r,e)=>y(r,"name",{value:e,configurable:!0});import{transformAsync as A}from"@babel/core";import{createFilter as b}from"@rollup/pluginutils";import{EXCLUDE_REGEXP as h}from"@visulima/packem-share/constants";var x=Object.defineProperty,c=g((r,e)=>x(r,"name",{value:e,configurable:!0}),"a");const O=/\.tsx?$/,w=c(r=>{if(r)return r.find(e=>e==="babel-plugin-react-compiler"||Array.isArray(e)&&e[0]==="babel-plugin-react-compiler")},"getReactCompilerPlugin"),E=c((r,e)=>{if(!r||!Array.isArray(r)||r.length===0)return;const t=w(r),p=/['"]use memo['"]/;if(!(!t||!Array.isArray(t))&&t[1]?.compilationMode==="annotation"&&!p.test(e)){const i=r.indexOf(t);i!==-1&&r.splice(i,1)}},"filterReactCompilerByAnnotation"),C=c(({exclude:r,filename:e,generatorOpts:t,include:p,sourceFileName:i,...n})=>{const d=b(p,r??h);return{name:"packem:babel",async transform(m,s){if(!d(s))return;let a=[];n.plugins&&Array.isArray(n.plugins)&&(a=[...n.plugins]),a.length>0&&E(a,m);const o=[];(s.endsWith(".jsx")||s.endsWith(".tsx"))&&o.push("jsx"),O.test(s)&&o.push("typescript");const u=n.parserOpts?.plugins;u&&Array.isArray(u)&&o.unshift(...u);const f=[...new Set(o)],l=await A(m,{...n,filename:e??s,generatorOpts:{...t,decoratorsBeforeExport:!0,importAttributesKeyword:"with"},parserOpts:{...n.parserOpts,allowAwaitOutsideFunction:!0,plugins:f.length>0?f:[],sourceType:"module"},plugins:a.length>0?a:[],sourceFileName:i??s});if(!(!l||!l.code))return{code:l.code,map:l.map||void 0}}}},"babelTransformPlugin");export{C as babelTransformPlugin};
@@ -1,2 +1,2 @@
1
- var I=Object.defineProperty;var $=(e,t)=>I(e,"name",{value:t,configurable:!0});import S from"node:fs/promises";import{createFilter as j}from"@rollup/pluginutils";import M from"magic-string";import*as B from"rs-module-lexer";var E=Object.defineProperty,d=$((e,t)=>E(e,"name",{value:t,configurable:!0}),"u");const A=/\.[mc]?tsx?(?:\?.*)?$/,D=/(?:\.(?:[tj]s|[tj]sx)|\/index\.(?:[tj]s|[tj]sx))(?:\?.*)?$/,O=/^\s*export/,_={exports:[],facade:!1,imports:[]},y=d(e=>A.test(e),"isSourceFile"),b=d(e=>e.includes("/build/cache/vite/")||e.includes("/node_modules/"),"isIgnoredModule"),k=d((e,t)=>b(e)?!1:D.test(e)?!0:t.possibleBarrelFiles?t.possibleBarrelFiles.some(s=>e.match(s)):!1,"isPossibleBarrelSpecifier"),N=d(e=>O.test(e)?"export":"import","getDeclarationKind"),{parseAsync:z}=B,C=d(async(e,t,s)=>{try{const{output:r}=await z({input:[{code:t,filename:e}]});return r[0]}catch(r){return s.warn({message:`Failed to parse ${e}:
2
- ${r instanceof Error?r.message:String(r)}`,prefix:"plugin:debarrel"}),_}},"safeParse"),K=d(async(e,t,s,r)=>{const a=e.parseCache.get(t);if(a!==void 0)return a;const o=await C(t,s,r);return e.parseCache.set(t,o),o},"parsePotentialBarrelFile"),R=d((e,t)=>{const s=e.fileCache.get(t);if(s!==void 0)return s;const r=S.readFile(t,"utf8");return e.fileCache.set(t,r),r},"readFileCached"),P=d(e=>{const t=/^(?:import|export)\s+([\w$]+)/,s=/([\w$]+)\s*,\s*\{|\}\s*,\s*([\w$]+)/,r=/[{,]\s*(type\s+)?([\w$]+)(?:\s+as\s+([\w$]+))?/gi;r.lastIndex=0;const a=[];if(e.includes("*"))return a;if(!e.includes("{")){const i=e.match(t);return i&&a.push({imported:"default",local:i[1]}),a}const o=e.match(s);o&&a.push({imported:"default",local:o[1]||o[2]});let n;for(;n=r.exec(e);)n[1]||n[2]&&a.push({imported:n[2],local:n[3]});return a},"getImportNames"),T=d((e,t,s)=>{let r=e.ln,a=t.find(o=>o.ss<e.s&&o.se>e.e&&o.d===-1);if(!a||!a.n){const o=r||s.slice(e.s).match(/default\s+([a-zA-Z_$][\w$]*)(?:;|\n|$)/)?.[1];o&&(a=t.find(n=>{const i=P(s.slice(n.ss,n.s)).find(c=>c.local===o);return i&&(r=i.imported),i}))}if(a&&!r){const o=s.slice(a.ss,e.s);if(!o.includes("*")){const n=o.match(/([\w$]+)\s*as\s*$/)?.[1];n&&(r=n)}}return{imp:a,localExportName:r}},"findMatchingImport"),v=d(async(e,t,s,r,a)=>{const{resolve:o}=e,n=await R(e,t),{exports:i,imports:c}=await K(e,t,n,a);for await(const l of i){const p=l.n;if(p!==s)continue;const u=T(l,c,n),{imp:f,localExportName:w}=u;if(!f||!f.n)return{exportName:s,id:t,resolved:!0};if(f.d>-1)return{exportName:s,id:t,resolved:!0};let h;const g=n.slice(f.ss,l.s);if(N(g)==="import"&&/\bas\b/.test(g)){const F=new RegExp(`(\\w+)\\s+as\\s+${s}(?!\\w)`);h=g.match(F)?.[0]}const x=(await o(f.n,t))?.id;return x?k(x,r)?v(e,x,w||p,r,a):{aliasedImportName:h,exportName:w||s,id:x,resolved:!1}:{aliasedImportName:h,exportName:w,id:t,resolved:!1}}const m=c.filter(l=>/^export\s+\*(?!\s+as)/.test(n.slice(l.ss,l.s)));if(m.length===1){const l=m[0]?.n,p=l?(await e.resolve(l,t))?.id:void 0;if(!p)return{exportName:s,id:t,resolved:!1};const u=await v(e,p,s,r);if(u.resolved)return u}else if(m.length>1){const l=(await Promise.all(m.map(async p=>{const u=p.n,f=u?(await e.resolve(u,t))?.id:void 0;if(f)return v(e,f,s,r)}))).find(p=>p?.resolved);if(l)return l}return{exportName:s,id:t,resolved:!1}},"resolveThroughBarrel"),J=d((e,t,s)=>{const{aliasedImportName:r,exportName:a}=e,o=t.local||t.imported;return r?`{${r}}`:a==="default"&&s!=="export"?o:`{${a!==o?`${a} as ${o}`:a}}`},"getDeclarationClause"),L=d(async(e,t,s,r,a)=>{const o=[],{imports:n}=await C(t,s,a);return await Promise.all(n.map(async i=>{if(!i.n||i.d!==-1)return;const c=s.slice(i.ss,i.s),m=P(c);if(m.length===0)return;const l=(await e.resolve(i.n,t))?.id;if(!l||!y(l)||b(l))return;const p=N(c);try{const u=await Promise.all(m.map(async f=>{const w=await v(e,l,f.imported,r);if(!w)return;const h=J(w,f,p),g=JSON.stringify(w.id);return`${p} ${h} from ${g}`}));if(u.includes(void 0))return;o.push([i.ss,i.se,u.join(";")])}catch(u){a.warn({context:{error:u},message:u.toString(),prefix:"plugin:debarrel"})}})),o},"getDebarrelModifications"),X=d((e,t,s,r)=>{if(s.length===0)return;const a=new M(t,{filename:e});for(const[o,n,i]of s)a.update(o,n,i);return{code:a.toString(),map:r?a.generateMap({file:e}):void 0}},"applyModifications"),Q=d((e,t)=>{const s=new Map,r=new Map,a=d(()=>{s.clear(),r.clear()},"purgeCaches"),o=e.include?j(e.include,[]):void 0;let n=!0;return{buildEnd:a,buildStart:a,async load(i){const c=s.get(i);if(c)return await c},name:"packem:debarrel",options(i){(i.output&&(Array.isArray(i.output)?i.output[0]?.sourcemap:i.output?.sourcemap))===!1&&(n=!1)},async transform(i,c){if(!y(c)||o&&!o(c))return;const m={fileCache:s,parseCache:r,resolve:this.resolve.bind(this)},l=await L(m,c,i,e,t);return X(c,i,l,n)},watchChange(i){s.delete(i),r.delete(i)}}},"debarrelPlugin");export{Q as debarrelPlugin};
1
+ var F=Object.defineProperty;var $=(e,t)=>F(e,"name",{value:t,configurable:!0});import I from"node:fs/promises";import{createFilter as j}from"@rollup/pluginutils";import M from"magic-string";import*as B from"rs-module-lexer";var E=Object.defineProperty,d=$((e,t)=>E(e,"name",{value:t,configurable:!0}),"u");const A=/\.[mc]?tsx?(?:\?.*)?$/,D=/(?:\.(?:[tj]s|[tj]sx)|\/index\.(?:[tj]s|[tj]sx))(?:\?.*)?$/,O=/^\s*export/,_={exports:[],facade:!1,imports:[]},y=d(e=>A.test(e),"isSourceFile"),b=d(e=>e.includes("/build/cache/vite/")||e.includes("/node_modules/"),"isIgnoredModule"),k=d((e,t)=>b(e)?!1:D.test(e)?!0:t.possibleBarrelFiles?t.possibleBarrelFiles.some(s=>e.match(s)):!1,"isPossibleBarrelSpecifier"),N=d(e=>O.test(e)?"export":"import","getDeclarationKind"),{parseAsync:z}=B,C=d(async(e,t,s)=>{try{const{output:r}=await z({input:[{code:t,filename:e}]});return r[0]}catch(r){return s.warn({message:`Failed to parse ${e}:
2
+ ${r instanceof Error?r.message:String(r)}`,prefix:"plugin:debarrel"}),_}},"safeParse"),K=d(async(e,t,s,r)=>{const a=e.parseCache.get(t);if(a!==void 0)return a;const o=await C(t,s,r);return e.parseCache.set(t,o),o},"parsePotentialBarrelFile"),R=d((e,t)=>{const s=e.fileCache.get(t);if(s!==void 0)return s;const r=I.readFile(t,"utf8");return e.fileCache.set(t,r),r},"readFileCached"),P=d(e=>{const t=/^(?:import|export)\s+([\w$]+)/,s=/([\w$]+)\s*,\s*\{|\}\s*,\s*([\w$]+)/,r=/[{,]\s*(type\s+)?([\w$]+)(?:\s+as\s+([\w$]+))?/gi;r.lastIndex=0;const a=[];if(e.includes("*"))return a;if(!e.includes("{")){const i=e.match(t);return i&&a.push({imported:"default",local:i[1]}),a}const o=e.match(s);o&&a.push({imported:"default",local:o[1]||o[2]});let n;for(;n=r.exec(e);)n[1]||n[2]&&a.push({imported:n[2],local:n[3]});return a},"getImportNames"),T=d((e,t,s)=>{let r=e.ln,a=t.find(o=>o.ss<e.s&&o.se>e.e&&o.d===-1);if(!a||!a.n){const o=r||s.slice(e.s).match(/default\s+([a-zA-Z_$][\w$]*)(?:;|\n|$)/)?.[1];o&&(a=t.find(n=>{const i=P(s.slice(n.ss,n.s)).find(c=>c.local===o);return i&&(r=i.imported),i}))}if(a&&!r){const o=s.slice(a.ss,e.s);if(!o.includes("*")){const n=o.match(/([\w$]+)\s*as\s*$/)?.[1];n&&(r=n)}}return{imp:a,localExportName:r}},"findMatchingImport"),v=d(async(e,t,s,r,a)=>{const{resolve:o}=e,n=await R(e,t),{exports:i,imports:c}=await K(e,t,n,a);for await(const l of i){const p=l.n;if(p!==s)continue;const u=T(l,c,n),{imp:f,localExportName:w}=u;if(!f||!f.n)return{exportName:s,id:t,resolved:!0};if(f.d>-1)return{exportName:s,id:t,resolved:!0};let h;const g=n.slice(f.ss,l.s);if(N(g)==="import"&&/\bas\b/.test(g)){const S=new RegExp(String.raw`(\w+)\s+as\s+${s}(?!\w)`);h=g.match(S)?.[0]}const x=(await o(f.n,t))?.id;return x?k(x,r)?v(e,x,w||p,r,a):{aliasedImportName:h,exportName:w||s,id:x,resolved:!1}:{aliasedImportName:h,exportName:w,id:t,resolved:!1}}const m=c.filter(l=>/^export\s+\*(?!\s+as)/.test(n.slice(l.ss,l.s)));if(m.length===1){const l=m[0]?.n,p=l?(await e.resolve(l,t))?.id:void 0;if(!p)return{exportName:s,id:t,resolved:!1};const u=await v(e,p,s,r);if(u.resolved)return u}else if(m.length>1){const l=(await Promise.all(m.map(async p=>{const u=p.n,f=u?(await e.resolve(u,t))?.id:void 0;if(f)return v(e,f,s,r)}))).find(p=>p?.resolved);if(l)return l}return{exportName:s,id:t,resolved:!1}},"resolveThroughBarrel"),J=d((e,t,s)=>{const{aliasedImportName:r,exportName:a}=e,o=t.local||t.imported;return r?`{${r}}`:a==="default"&&s!=="export"?o:`{${a!==o?`${a} as ${o}`:a}}`},"getDeclarationClause"),L=d(async(e,t,s,r,a)=>{const o=[],{imports:n}=await C(t,s,a);return await Promise.all(n.map(async i=>{if(!i.n||i.d!==-1)return;const c=s.slice(i.ss,i.s),m=P(c);if(m.length===0)return;const l=(await e.resolve(i.n,t))?.id;if(!l||!y(l)||b(l))return;const p=N(c);try{const u=await Promise.all(m.map(async f=>{const w=await v(e,l,f.imported,r);if(!w)return;const h=J(w,f,p),g=JSON.stringify(w.id);return`${p} ${h} from ${g}`}));if(u.includes(void 0))return;o.push([i.ss,i.se,u.join(";")])}catch(u){a.warn({context:{error:u},message:u.toString(),prefix:"plugin:debarrel"})}})),o},"getDebarrelModifications"),X=d((e,t,s,r)=>{if(s.length===0)return;const a=new M(t,{filename:e});for(const[o,n,i]of s)a.update(o,n,i);return{code:a.toString(),map:r?a.generateMap({file:e}):void 0}},"applyModifications"),Q=d((e,t)=>{const s=new Map,r=new Map,a=d(()=>{s.clear(),r.clear()},"purgeCaches"),o=e.include?j(e.include,[]):void 0;let n=!0;return{buildEnd:a,buildStart:a,async load(i){const c=s.get(i);if(c)return await c},name:"packem:debarrel",options(i){(i.output&&(Array.isArray(i.output)?i.output[0]?.sourcemap:i.output?.sourcemap))===!1&&(n=!1)},async transform(i,c){if(!y(c)||o&&!o(c))return;const m={fileCache:s,parseCache:r,resolve:this.resolve.bind(this)},l=await L(m,c,i,e,t);return X(c,i,l,n)},watchChange(i){s.delete(i),r.delete(i)}}},"debarrelPlugin");export{Q as debarrelPlugin};
@@ -1 +1 @@
1
- import{default as l}from"../../packem_shared/browserslistToEsbuild-C0IWmbNe.js";import{default as r}from"../../packem_shared/esbuildPlugin-DpLtQGuZ.js";export{l as browserslistToEsbuild,r as esbuildPlugin};
1
+ import{default as l}from"../../packem_shared/browserslistToEsbuild-C0IWmbNe.js";import{default as r}from"../../packem_shared/esbuildPlugin-pPPsJB9N.js";export{l as browserslistToEsbuild,r as esbuildPlugin};
@@ -1 +1 @@
1
- var i=Object.defineProperty;var n=(e,r)=>i(e,"name",{value:r,configurable:!0});import{_ as o}from"../packem_shared/fix-dts-default-cjs-exports-BQc0nwIG.js";var p=Object.defineProperty,a=n((e,r)=>p(e,"name",{value:r,configurable:!0}),"n");const l=a((e={})=>{const{matcher:r=a(t=>(t.type==="chunk"||t.type==="asset")&&t.exports?.length>0&&/\.d\.c?ts$/.test(t.fileName)&&t.isEntry,"matcher")}=e;return{name:"packem:fix-dts-default-cjs-exports-plugin",renderChunk(t,s){return r(s)?o(t,{fileName:s.fileName,imports:s.imports},{warn:this.warn}):void 0}}},"fixDtsDefaultCjsExportsPlugin");export{l as fixDtsDefaultCjsExportsPlugin};
1
+ var i=Object.defineProperty;var n=(e,r)=>i(e,"name",{value:r,configurable:!0});import{_ as o}from"../packem_shared/fix-dts-default-cjs-exports-EvsobpME.js";var p=Object.defineProperty,a=n((e,r)=>p(e,"name",{value:r,configurable:!0}),"n");const l=a((e={})=>{const{matcher:r=a(t=>(t.type==="chunk"||t.type==="asset")&&t.exports?.length>0&&/\.d\.c?ts$/.test(t.fileName)&&t.isEntry,"matcher")}=e;return{name:"packem:fix-dts-default-cjs-exports-plugin",renderChunk(t,s){return r(s)?o(t,{fileName:s.fileName,imports:s.imports},{warn:this.warn}):void 0}}},"fixDtsDefaultCjsExportsPlugin");export{l as fixDtsDefaultCjsExportsPlugin};
@@ -1,3 +1,3 @@
1
- var U=Object.defineProperty;var x=(t,e)=>U(t,"name",{value:e,configurable:!0});import{createFilter as X}from"@rollup/pluginutils";import{readFile as W}from"@visulima/fs";import{EXCLUDE_REGEXP as _,ENDING_REGEX as E}from"@visulima/packem-share/constants";import{getDtsExtension as L}from"@visulima/packem-share/utils";import{dirname as R,toNamespacedPath as D,sep as k,extname as J,isAbsolute as q,relative as C,join as A,basename as O}from"@visulima/path";import{parseSync as z}from"oxc-parser";import{_ as B}from"../../packem_shared/fix-dts-default-cjs-exports-BQc0nwIG.js";var H=Object.defineProperty,Q=x((t,e)=>H(t,"name",{value:e,configurable:!0}),"e");const P=/^([\w-]+):/,K=Q(t=>{if(!t||typeof t!="string")throw new Error("Invalid key: Key must be a non-empty string.");const e=[],c=P.exec(t);c&&(e.push(c[1]),t=t.replace(P,""));const n=t.split("/");for(const p of n)(p.includes("*")||p)&&e.push(p);return e},"splitTsconfigPathKey");var V=Object.defineProperty,Y=x((t,e)=>V(t,"name",{value:e,configurable:!0}),"h");const Z=Y((t,e)=>{const c=t.replace(/^\.\//,""),n=e.replace(/^\.\//,"");if(n.startsWith(c))return t+n.slice(c.length);if(t.endsWith(e))return t;const p=K(t),d=K(e);let l=p.length-1,r=d.length-1;for(;l>=0&&r>=0&&p[l]===d[r];)l--,r--;let a=p.slice(0,l).join("/");const f=d.slice(r).join("/");return(!a.startsWith(".")||a==="")&&(a=`./${a}`),a+(f?`/${f}`:"")},"extendString");var ee=Object.defineProperty,te=x((t,e)=>ee(t,"name",{value:e,configurable:!0}),"s");const re=te((...t)=>{if(t.length===0)return"";if(t.length===1)return R(t[0]);t=t.map(p=>D(p).split(k).join("/"));const[e,...c]=t;let n=e.split("/");for(const p of c){const d=p.split("/",n.length);let l=0;for(const r of d)if(r===n[l])l+=1;else{n=n.slice(0,l);break}n=n.slice(0,l)}return(n.length<=1&&n[0]===""?`/${n[0]}`:n.join("/")).split("/").join(k)},"lowestCommonAncestor");var ie=Object.defineProperty,j=x((t,e)=>ie(t,"name",{value:e,configurable:!0}),"g");const S=j((t,e)=>`${t}
1
+ var U=Object.defineProperty;var x=(t,e)=>U(t,"name",{value:e,configurable:!0});import{createFilter as X}from"@rollup/pluginutils";import{readFile as W}from"@visulima/fs";import{EXCLUDE_REGEXP as _,ENDING_REGEX as E}from"@visulima/packem-share/constants";import{getDtsExtension as L}from"@visulima/packem-share/utils";import{dirname as R,toNamespacedPath as D,sep as k,extname as J,isAbsolute as q,relative as C,join as A,basename as O}from"@visulima/path";import{parseSync as z}from"oxc-parser";import{_ as B}from"../../packem_shared/fix-dts-default-cjs-exports-EvsobpME.js";var H=Object.defineProperty,Q=x((t,e)=>H(t,"name",{value:e,configurable:!0}),"e");const P=/^([\w-]+):/,K=Q(t=>{if(!t||typeof t!="string")throw new Error("Invalid key: Key must be a non-empty string.");const e=[],c=P.exec(t);c&&(e.push(c[1]),t=t.replace(P,""));const n=t.split("/");for(const p of n)(p.includes("*")||p)&&e.push(p);return e},"splitTsconfigPathKey");var V=Object.defineProperty,Y=x((t,e)=>V(t,"name",{value:e,configurable:!0}),"h");const Z=Y((t,e)=>{const c=t.replace(/^\.\//,""),n=e.replace(/^\.\//,"");if(n.startsWith(c))return t+n.slice(c.length);if(t.endsWith(e))return t;const p=K(t),d=K(e);let l=p.length-1,r=d.length-1;for(;l>=0&&r>=0&&p[l]===d[r];)l--,r--;let a=p.slice(0,l).join("/");const f=d.slice(r).join("/");return(!a.startsWith(".")||a==="")&&(a=`./${a}`),a+(f?`/${f}`:"")},"extendString");var ee=Object.defineProperty,te=x((t,e)=>ee(t,"name",{value:e,configurable:!0}),"s");const re=te((...t)=>{if(t.length===0)return"";if(t.length===1)return R(t[0]);t=t.map(p=>D(p).split(k).join("/"));const[e,...c]=t;let n=e.split("/");for(const p of c){const d=p.split("/",n.length);let l=0;for(const r of d)if(r===n[l])l+=1;else{n=n.slice(0,l);break}n=n.slice(0,l)}return(n.length<=1&&n[0]===""?`/${n[0]}`:n.join("/")).split("/").join(k)},"lowestCommonAncestor");var ie=Object.defineProperty,j=x((t,e)=>ie(t,"name",{value:e,configurable:!0}),"g");const S=j((t,e)=>`${t}
2
2
  //# sourceMappingURL=${O(e)}.map
3
3
  `,"appendMapUrl"),I=j((t,e,c)=>JSON.stringify({file:O(c),mappings:t,names:[],sourceRoot:"",sources:[C(R(c),e)],version:3}),"generateDtsMap"),fe=j((t,e)=>{const c=X(/\.(?:[mc]?ts|[jt]sx?)$/,e.options.rollup.isolatedDeclarations?.exclude||_);let n=Object.create(null);const p=j((r,a)=>{n[r.replace(E,"")]={...a,ext:J(r)}},"addOutput");let d=[];e.tsconfig?.config.compilerOptions&&(d=Object.entries(e.tsconfig.config.compilerOptions.paths??{}).map(([r])=>r.endsWith("*")?new RegExp(`^${r.replace("*","(.*)")}$`):new RegExp(`^${r}$`)));async function l(r,a){if(!c(a))return;e.logger.debug({message:`Processing file: ${a}`,prefix:"packem:isolated-declarations"});let f;try{f=z(a,r).program}catch(s){e.logger.debug({message:s.message,prefix:"packem:isolated-declarations"})}if(f){const s=f.body.filter(i=>(i.type==="ImportDeclaration"||i.type==="ExportAllDeclaration"||i.type==="ExportNamedDeclaration")&&i.source);for await(const i of s){if(O(i.source.value).includes("."))continue;const o=await this.resolve(i.source.value,a);if(!(!o||o.external)&&(o.id.endsWith(".ts")||o.id.endsWith(".cts")||o.id.endsWith(".mts")||o.id.endsWith(".tsx")||o.id.endsWith(".ctsx")||o.id.endsWith(".mtsx"))){const g=o.id.replace(`${t}/`,"");let u=i.source.value;d.some($=>$.test(i.source.value))&&!i.source.value.startsWith(".")&&(u=`./${i.source.value}`),r=r.replaceAll(`from "${i.source.value}"`,`from "${Z(u,g)}"`)}}}const{errors:b,map:w,sourceText:m}=await e.options.isolatedDeclarationTransformer(a,r,e.options.sourcemap,e.tsconfig?.config?.compilerOptions);if(b.length>0){if(e.options.rollup.isolatedDeclarations.ignoreErrors){this.warn(b[0]);return}return this.error(b[0])}if(p(a,{map:w,source:m}),!f)return;const h=f.body.filter(s=>!("source"in s)||!s.source?!1:"importKind"in s&&s.importKind==="type"||"exportKind"in s&&s.exportKind==="type"?!0:s.type==="ImportDeclaration"?s.specifiers&&s.specifiers.every(i=>i.type==="ImportSpecifier"&&i.importKind==="type"):s.type==="ExportNamedDeclaration"&&s.specifiers&&s.specifiers.every(i=>i.exportKind==="type"));for await(const s of h){if(!s.source)continue;const i=await this.resolve(s.source.value,a);if(!i)return;const o=i.id;if(c(o)&&!n[o.replace(E,"")])try{const g=await W(o);await l.call(this,g,o)}catch{}}}return x(l,"N"),j(l,"transform"),{buildStart(){n=Object.create(null)},name:"packem:isolated-declarations",async renderStart(r,{input:a}){const f=re(...Array.isArray(a)?a:Object.values(a));e.logger.debug({message:`Input base:${f}`,prefix:"packem:isolated-declarations"});const b=Array.isArray(a)?a:Object.values(a);for await(const m of b)if(c(m)&&!n[m.replace(E,"")])try{const h=await W(m);await l.call(this,h,m)}catch{}typeof r.entryFileNames=="function"&&(r.entryFileNames=r.entryFileNames({name:r.name}));const w=r.entryFileNames.replace(/\.(.)?[jt]sx?$/,(m,h)=>`.d.${h||""}ts`);for await(let[m,{ext:h,map:s,source:i}]of Object.entries(n)){let o;if(q(m)){if(!m.startsWith(t)){e.logger.debug({message:`Skipping file outside sourceDirectory: ${m}`,prefix:"packem:isolated-declarations"});continue}o=C(t,m)}else o=m.replace(`${t}/`,"");if(o.startsWith("/")&&(o=o.slice(1)),e.options.rollup.cjsInterop&&r.format==="cjs"){const y=B(i,{fileName:o,imports:[]},{warn:this.warn});y&&(i=y.code)}const g=i.includes("from '")?"'":'"',u=o+h;if((e.options.declaration===!0||e.options.declaration==="compatible")&&r.format==="cjs"){e.logger.debug({message:`Emit compatible dts file: ${o}`,prefix:"packem:isolated-declarations"});const y=w.replace("[name]",D(o)).replace(".cts",".ts");let v=i;e.options.sourcemap&&s&&(v=S(v.trim(),y),this.emitFile({fileName:`${y}.map`,originalFileName:u,source:I(s,u,A(r.dir,y)),type:"asset"})),this.emitFile({fileName:y,originalFileName:u,source:v.replaceAll(/(from\s)['|"]((.*)\..+|['|"].*)['|"];?/g,(F,N,M,T)=>`${N+g+(T||M)}.d.ts${g};`),type:"asset"})}e.logger.debug({message:`Emit dts file: ${o}`,prefix:"packem:isolated-declarations"});const $=w.replace("[name]",D(o));e.options.sourcemap&&s&&(i=S(i.trim(),$),this.emitFile({fileName:`${$}.map`,originalFileName:u,source:I(s,u,A(r.dir,$)),type:"asset"}));const G=L(e,r.format==="cjs"?"cjs":"esm");this.emitFile({fileName:$,originalFileName:u,source:i.replaceAll(/(from\s)['|"]((.*)\..+|['|"].*)['|"];?/g,(y,v,F,N)=>`${v+g+(N||F)}.${G}${g};`),type:"asset"})}},transform:l}},"isolatedDeclarationsPlugin");export{fe as isolatedDeclarationsPlugin};
@@ -1 +1 @@
1
- import{default as s}from"../../packem_shared/isolatedDeclarationsTypescriptTransformer-DkuEkofo.js";import{patchTypescriptTypes as o,patchTypescriptTypes as p}from"../../packem_shared/patchTypescriptTypes-BX_sJsvd.js";import{resolveTsconfigPathsPlugin as i}from"../../packem_shared/resolveTsconfigPathsPlugin-CEasmDpi.js";import{default as l}from"../../packem_shared/resolveTsconfigRootDirectoriesPlugin-Cwj3tqCJ.js";import{default as T}from"../../packem_shared/resolveTypescriptMjsCtsPlugin-DcZrZTmM.js";export{s as isolatedDeclarationsTypescriptTransformer,o as patchTypescriptTypes,p as patchTypescriptTypesPlugin,i as resolveTsconfigPathsPlugin,l as resolveTsconfigRootDirectoriesPlugin,T as resolveTypescriptMjsCtsPlugin};
1
+ import{default as s}from"../../packem_shared/isolatedDeclarationsTypescriptTransformer-DkuEkofo.js";import{patchTypescriptTypes as o,patchTypescriptTypes as p}from"../../packem_shared/patchTypescriptTypes-CZ4v3hr9.js";import{resolveTsconfigPathsPlugin as i}from"../../packem_shared/resolveTsconfigPathsPlugin-CEasmDpi.js";import{default as l}from"../../packem_shared/resolveTsconfigRootDirectoriesPlugin-Cwj3tqCJ.js";import{default as T}from"../../packem_shared/resolveTypescriptMjsCtsPlugin-DcZrZTmM.js";export{s as isolatedDeclarationsTypescriptTransformer,o as patchTypescriptTypes,p as patchTypescriptTypesPlugin,i as resolveTsconfigPathsPlugin,l as resolveTsconfigRootDirectoriesPlugin,T as resolveTypescriptMjsCtsPlugin};
package/dist/types.d.ts CHANGED
@@ -10,6 +10,7 @@ import type { Options as RollupDtsOptions } from "rollup-plugin-dts";
10
10
  import type { NodePolyfillsOptions } from "rollup-plugin-polyfill-node";
11
11
  import type { PureAnnotationsOptions } from "rollup-plugin-pure";
12
12
  import type { PluginVisualizerOptions } from "rollup-plugin-visualizer";
13
+ import type { BabelPluginConfig } from "./plugins/babel/index.d.ts";
13
14
  import type { CJSInteropOptions } from "./plugins/cjs-interop.d.ts";
14
15
  import type { CopyPluginOptions } from "./plugins/copy.d.ts";
15
16
  import type { DataUriPluginOptions } from "./plugins/data-uri.d.ts";
@@ -75,6 +76,7 @@ export interface IsolatedDeclarationsResult {
75
76
  export type IsolatedDeclarationsTransformer = (code: string, id: string, sourceMap?: boolean) => Promise<IsolatedDeclarationsResult>;
76
77
  export interface PackemRollupOptions {
77
78
  alias?: RollupAliasOptions | false;
79
+ babel?: BabelPluginConfig | false;
78
80
  cjsInterop?: CJSInteropOptions;
79
81
  commonjs?: RollupCommonJSOptions | false;
80
82
  copy?: CopyPluginOptions | false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/packem-rollup",
3
- "version": "1.0.0-alpha.30",
3
+ "version": "1.0.0-alpha.31",
4
4
  "description": "Rollup plugins for packem",
5
5
  "keywords": [
6
6
  "visulima",
@@ -37,6 +37,10 @@
37
37
  "types": "./dist/index.d.ts",
38
38
  "default": "./dist/index.js"
39
39
  },
40
+ "./babel": {
41
+ "types": "./dist/plugins/babel/index.d.ts",
42
+ "default": "./dist/plugins/babel/index.js"
43
+ },
40
44
  "./esbuild": {
41
45
  "types": "./dist/plugins/esbuild/index.d.ts",
42
46
  "default": "./dist/plugins/esbuild/index.js"
@@ -150,13 +154,13 @@
150
154
  "@visulima/find-cache-dir": "2.0.4",
151
155
  "@visulima/fs": "4.0.4",
152
156
  "@visulima/package": "4.1.4",
153
- "@visulima/packem-share": "1.0.0-alpha.14",
157
+ "@visulima/packem-share": "1.0.0-alpha.15",
154
158
  "@visulima/path": "1.4.0",
155
159
  "@visulima/source-map": "2.0.3",
156
160
  "cjs-module-lexer": "^2.1.1",
157
161
  "clean-css": "^5.3.3",
158
162
  "glob-parent": "6.0.2",
159
- "html-minifier-next": "^4.3.1",
163
+ "html-minifier-next": "^4.7.0",
160
164
  "magic-string": "0.30.19",
161
165
  "mlly": "1.8.0",
162
166
  "oxc-parser": "0.99.0",
@@ -171,6 +175,7 @@
171
175
  "tinyglobby": "0.2.15"
172
176
  },
173
177
  "peerDependencies": {
178
+ "@babel/core": "*",
174
179
  "@swc/core": "*",
175
180
  "esbuild": "*",
176
181
  "oxc-transform": "*",
@@ -179,6 +184,9 @@
179
184
  "typescript": "*"
180
185
  },
181
186
  "peerDependenciesMeta": {
187
+ "@babel/core": {
188
+ "optional": true
189
+ },
182
190
  "@swc/core": {
183
191
  "optional": true
184
192
  },
@@ -1,6 +0,0 @@
1
- var $=Object.defineProperty;var l=(e,n)=>$(e,"name",{value:n,configurable:!0});import{parse as w}from"@babel/parser";import{w as y}from"./index-Dq8IUFTs.js";import T from"magic-string";import{findStaticImports as b}from"mlly";var x=Object.defineProperty,s=l((e,n)=>x(e,"name",{value:n,configurable:!0}),"s");const C=/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g,N=/MIT License|MIT license|BSD license/,k=/\n{2,}/g,v=/\b(\w+)\$\d+\b/g,A=/[-/\\^$*+?.()|[\]{}]/g,I=s(e=>e.replaceAll(A,String.raw`\$&`),"escapeRegex"),R=s(e=>[...new Set(e)],"unique"),S=s(e=>e.replaceAll(C,n=>N.test(n)?"":n).replaceAll(k,`
2
-
3
- `),"cleanUnnecessaryComments"),d=new Map;function g(e,n,{identifierReplacements:r},o){const p=b(e);for(const t in r){const a=p.find(i=>i.specifier===t&&i.imports.includes("{"));if(!a){this.warn(`${n.fileName} does not import "${t}" for replacement`),process.exitCode=1;continue}const c=r[t];for(const i in c){if(!a.imports.includes(i))throw new Error(`${n.fileName} does not import "${i}" from "${t}" for replacement`);const f=c[i],u=I(i);f.includes(".")&&(e=e.replace(new RegExp(`\\b\\w+\\b as ${u},?\\s?`),"")),e=e.replaceAll(new RegExp(`\\b${u}\\b`,"g"),f)}}const m=R(Array.from(e.matchAll(v),t=>t[0]));if(m.length>0){const t=m.map(c=>`
4
- - ${c}`).join(""),a=n.fileName.replace(/\.[^/.]+$/,"");d.has(a)||o.warn({message:`${n.fileName} contains confusing identifier names${t}
5
-
6
- To replace these, add them to the "rollup -> patchTypes -> identifierReplacements" option in your packem config.`,prefix:"plugin:patch-types"}),d.set(a,!0)}return e}l(g,"N");s(g,"replaceConfusingTypeNames");const E=s((e,n)=>{if(n.leadingComments?.some(r=>r.type==="CommentBlock"&&r.value.includes("@internal"))){const r=e.original[n.end]===","?n.end+1:n.end;return e.remove(n.leadingComments[0].start,r),!0}return!1},"removeInternal");function h(e,n){if(e.includes("@internal")){const r=new T(e),o=w(e,{plugins:["typescript"],sourceType:"module"});if(y(o,{enter(p){E(r,p)&&this.skip()}}),e=r.toString(),e.includes("@internal"))throw new Error(`${n.fileName} has unhandled @internal declarations`)}return e}l(h,"S");s(h,"stripInternalTypes");const D=s((e,n)=>({name:"packem:patch-types",renderChunk(r,o){return r=g.call(this,r,o,e,n),r=h.call(this,r,o),r=S(r),r}}),"patchTypescriptTypes");export{D as patchTypescriptTypes};