UNPKG

@basmilius/tools

Version:

Commonly used tools for building.

5 lines (3 loc) 1.03 kB
import{build as d}from"bun";async function i(t){try{t.root??="src",t.outdir??="dist",t.minify??=!0,t.sourcemap??="linked",t.splitting??=!1,t.format??="esm",t.target??="node",await d(t),console.log("✔ Build complete!")}catch(o){console.error("✘ Build failed!"),console.error(o),process.exit(1)}}import{file as l,pathToFileURL as n,write as u}from"bun";import{isolatedDeclaration as m}from"oxc-transform";function a(){let t=new Set;return{name:"oxc-transform-dts",setup(o){if(!o.config.root||!o.config.outdir){console.warn("✘ No types generated, osx-transform-dts requires both a root and outdir.");return}let e=n(o.config.root).pathname,s=n(o.config.outdir).pathname;o.onStart(()=>{t.clear()}),o.onLoad({filter:/\.ts$/},async(r)=>{if(r.path.startsWith(e)&&!t.has(r.path)){t.add(r.path);let{code:p}=m(r.path,await l(r.path).text());await u(r.path.replace(new RegExp(`^${e}`),s).replace(/\.ts$/,".d.ts"),p)}return})}}}export{a as dts,i as build}; //# debugId=8D54A8D4C2CA7E1464756E2164756E21 //# sourceMappingURL=index.js.map