33 lines
863 B
TypeScript
33 lines
863 B
TypeScript
|
|
import { defineConfig } from "tsup";
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Build del servidor:
|
||
|
|
* - incluye código TS de `modules/*` (buildless)
|
||
|
|
* - consume código ya compilado de `packages/*`
|
||
|
|
* - genera un bundle único ESM en `dist/`
|
||
|
|
*/
|
||
|
|
|
||
|
|
export default defineConfig({
|
||
|
|
entry: ["src/index.ts"], // punto de entrada principal
|
||
|
|
format: ["esm"], // ESM nativo (Node 18+)
|
||
|
|
target: "node18", // objetivo de compilación
|
||
|
|
sourcemap: true,
|
||
|
|
clean: true,
|
||
|
|
treeshake: true,
|
||
|
|
dts: false, // opcional, genera .d.ts
|
||
|
|
outDir: "dist",
|
||
|
|
|
||
|
|
// Paquetes de npm a mantener como externos (no se incluyen)
|
||
|
|
external: ["express", "zod", "react", "react-dom", "date-fns"],
|
||
|
|
|
||
|
|
// Paquetes internos buildless que se deben incluir en el bundle
|
||
|
|
noExternal: [
|
||
|
|
"@erp/auth",
|
||
|
|
"@erp/core",
|
||
|
|
"@erp/customers",
|
||
|
|
"@erp/customer-invoices",
|
||
|
|
"@erp/verifactu",
|
||
|
|
"@repo/rdx-logger",
|
||
|
|
],
|
||
|
|
});
|