import { defineConfig } from "tsup" import { exec } from 'node:child_process' export default defineConfig({ entry: [ "src/index.ts", "src/tasks/**.ts" ], /** * lots of compatibility issues outputting to ESM. So we output to CJS to get things working. */ format: ["cjs"], target: "es2022", sourcemap: true, /** * The common package is using the internal packages approach, so it needs to * be transpiled / bundled together with the deployed code. */ noExternal: [ "@futureporn/utils", "@futureporn/scout", "@futureporn/storage", "@futureporn/types", ], /** * Do not use tsup for generating d.ts files because it can not generate type * the definition maps required for go-to-definition to work in our IDE. We * use tsc for that. */ splitting: false, treeshake: true, clean: true, outDir: 'dist', // Where you want your compiled files to live shims: true, onSuccess: async () => { exec('tsc --emitDeclarationOnly'); } });