Some checks failed
Verify / Install node dependencies (push) Failing after 2s
Verify / Build packages (push) Has been skipped
Verify / Check linting & formatting (push) Has been skipped
Verify / Run unit tests (push) Has been skipped
Verify / Run e2e tests (shard 1/4) (push) Has been skipped
Verify / Run e2e tests (shard 2/4) (push) Has been skipped
Verify / Run e2e tests (shard 3/4) (push) Has been skipped
Verify / Run e2e tests (shard 4/4) (push) Has been skipped
Publish / Resolve publish config (push) Failing after 2s
Publish / Send notification to Slack (push) Has been skipped
Publish / Send failure notification to Slack (push) Failing after 8s
Verify / Merge e2e reports (push) Has been skipped
Publish / Build (push) Has been skipped
Publish / Bump Versions OR Release to Registry (push) Has been skipped
30 lines
921 B
TypeScript
30 lines
921 B
TypeScript
import type { OutExtensionFactory, PackUserConfig } from 'vite-plus/pack'
|
|
|
|
/**
|
|
* Shared output extension mapping that matches tsup's naming so the
|
|
* published package.json fields (main/module/types/exports) keep working.
|
|
*
|
|
* tsup emits `index.js`/`index.d.ts` for ESM and `index.cjs`/`index.d.cts`
|
|
* for CJS. tsdown defaults to `.mjs`/`.d.mts`, so we override it here.
|
|
*/
|
|
export const tsupCompatibleExtensions: OutExtensionFactory = ({ format }) => {
|
|
if (format === 'es') {
|
|
return { js: '.js', dts: '.d.ts' }
|
|
}
|
|
return { js: '.cjs', dts: '.d.cts' }
|
|
}
|
|
|
|
/**
|
|
* Base pack config for a single-entry package, matching the old tsup config.
|
|
*/
|
|
export const basePackConfig = (): PackUserConfig => ({
|
|
tsconfig: '../../tsconfig.build.json',
|
|
outDir: 'dist',
|
|
dts: { sourcemap: true },
|
|
clean: true,
|
|
sourcemap: true,
|
|
target: 'es2019',
|
|
format: ['esm', 'cjs'],
|
|
outExtensions: tsupCompatibleExtensions,
|
|
})
|