Files
deepseek-harness/tsdown.config.ts
T

28 lines
1.1 KiB
TypeScript

import { defineConfig } from 'tsdown'
/**
* JS bundling for all workspace packages (vendor and the packages hierarchy).
* TypeScript source is compiled first by `tsc -b tsconfig.build.json`; tsdown
* reads only the emitted JS under lib/types and writes lib/index.* runtime
* bundles. Declarations are NOT produced here, hence `dts: false`.
*
* Per-package shape overrides live in `<package>/tsdown.config.ts`
* (schemastery: dual ESM+CJS; logger-console: extra browser entry).
*/
export default defineConfig({
// Explicit globs: `workspace: true` would also discover examples (any package.json), but only
// vendor and the packages hierarchy are pnpm workspaces. Landlock platform packages contain only
// a prebuilt native binary, so they have no JavaScript entry to bundle.
workspace: ['vendor/*', 'packages/*/*'],
entry: ['lib/types/index.js'],
outDir: 'lib',
format: ['esm'],
platform: 'node',
target: 'es2024',
// All packages set "type": "module"; fixedExtension false keeps ESM output
// at .js (not .mjs), matching the package.json main/exports fields.
fixedExtension: false,
dts: false,
clean: false,
})