From e99666f4c069cdf7c294593643d5b3432483df27 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sun, 29 Sep 2024 21:43:25 -0600 Subject: [PATCH] fix(esm): add tsc alias --- packages/builders/esbuild.config.ts | 50 +++++++++++++------------- packages/builders/package.json | 3 +- packages/builders/tsconfig.server.json | 7 +++- pnpm-lock.yaml | 3 ++ 4 files changed, 37 insertions(+), 26 deletions(-) diff --git a/packages/builders/esbuild.config.ts b/packages/builders/esbuild.config.ts index da73a526d..3f83abe91 100644 --- a/packages/builders/esbuild.config.ts +++ b/packages/builders/esbuild.config.ts @@ -1,25 +1,27 @@ -// import esbuild from "esbuild"; +import { build } from "esbuild"; +import TsconfigPathsPlugin from "@esbuild-plugins/tsconfig-paths"; +import path from "node:path"; -// try { -// esbuild -// .build({ -// entryPoints: ["./src/**/*.ts"], -// bundle: true, -// platform: "node", -// format: "cjs", -// target: "node18", -// outExtension: { ".js": ".js" }, -// minify: true, -// outdir: "dist", -// tsconfig: "tsconfig.server.json", -// packages: "external", -// alias: { -// "@/server": "./src", -// }, -// }) -// .catch(() => { -// return process.exit(1); -// }); -// } catch (error) { -// console.log(error); -// } +build({ + entryPoints: ["./src/**/*.ts", "./src/**/*.tsx"], // Punto de entrada principal de tu aplicación + outdir: "dist", + bundle: false, // Cambia a true si deseas bundlear tu código + platform: "node", + format: "esm", + target: ["esnext"], + sourcemap: false, + tsconfig: "./tsconfig.server.json", + plugins: [ + // TsconfigPathsPlugin({ tsconfig: "./tsconfig.server.json" }), + { + name: "AddJsExtensions", + setup(build) { + build.onResolve({ filter: /.*/ }, (args) => { + if (args.path.startsWith(".") && !path.extname(args.path)) { + return { path: `${args.path}.js` }; + } + }); + }, + }, + ], +}).catch(() => process.exit(1)); diff --git a/packages/builders/package.json b/packages/builders/package.json index 74bfc0037..e64f1caee 100644 --- a/packages/builders/package.json +++ b/packages/builders/package.json @@ -7,7 +7,7 @@ "scripts": { "dev": "tsup --config ./tsup.ts --watch", "build": "tsc --project tsconfig.server.json && tsc-alias -p tsconfig.server.json", - "tsc": "tsc --project tsconfig.server.json", + "esbuild": "tsx ./esbuild.config.ts", "build:types": "tsc --emitDeclarationOnly --experimenta-dts" }, "dependencies": { @@ -48,6 +48,7 @@ "ssh2": "1.15.0" }, "devDependencies": { + "tsx": "^4.7.1", "tsc-alias": "1.8.10", "@types/adm-zip": "^0.5.5", "@types/bcrypt": "5.0.2", diff --git a/packages/builders/tsconfig.server.json b/packages/builders/tsconfig.server.json index c0142e07a..414a89594 100644 --- a/packages/builders/tsconfig.server.json +++ b/packages/builders/tsconfig.server.json @@ -10,10 +10,15 @@ "moduleResolution": "Node", "baseUrl": ".", "incremental": false, + "jsx": "react-jsx", "paths": { "@/server/*": ["src/*"] } }, "include": ["next-env.d.ts", "./src/**/*"], - "exclude": ["**/dist", "tsup.ts"] + "exclude": ["**/dist", "tsup.ts"], + "tsc-alias": { + "resolveFullPaths": true, + "verbose": false + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d20993889..60fa28dff 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -695,6 +695,9 @@ importers: tsup: specifier: 6.4.0 version: 6.4.0(postcss@8.4.40)(typescript@5.5.3) + tsx: + specifier: ^4.7.1 + version: 4.16.2 typescript: specifier: ^5.4.2 version: 5.5.3