import { defineConfig } from "tsup"; import { NodeResolvePlugin } from "@esbuild-plugins/node-resolve"; export default defineConfig((options) => ({ entry: { index: "src/index.ts", legacy: "src/legacy/index.ts", }, outDir: "dist", splitting: false, sourcemap: true, clean: false, minify: true, format: ["cjs", "esm"], outExtension: ({ format }) => ({ js: format === "cjs" ? ".cjs" : ".mjs" }), platform: "browser", esbuildPlugins: [ NodeResolvePlugin({ extensions: [".js", "ts", "tsx", "jsx"], onResolved: (resolved) => { if (resolved.includes("node_modules")) { return { external: true, }; } return resolved; }, }), ], onSuccess: options.watch ? "pnpm types" : undefined, }));