generated from tailored/router-template
42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
import { defineConfig } from 'tsup';
|
|
// import glob from 'fast-glob';
|
|
// const services = glob.sync('src/services/*.ts');
|
|
import fs from 'fs';
|
|
|
|
const clean = () => {
|
|
const distDir = 'dist';
|
|
if (fs.existsSync(distDir)) {
|
|
fs.rmSync(distDir, { recursive: true, force: true });
|
|
}
|
|
};
|
|
clean();
|
|
|
|
const entrys = ['src/index.ts'];
|
|
const nodeEntrys = ['src/dev.ts'];
|
|
|
|
const getCommonConfig = (opts = {}) => {
|
|
return {
|
|
entry: opts.entry,
|
|
outExtension: ({ format }) => ({
|
|
js: format === 'esm' ? '.mjs' : '.js',
|
|
}),
|
|
splitting: false,
|
|
sourcemap: false,
|
|
// clean: true,
|
|
format: 'esm',
|
|
external: ['dotenv'],
|
|
dts: true,
|
|
outDir: 'dist',
|
|
tsconfig: 'tsconfig.json',
|
|
...opts,
|
|
define: {
|
|
'process.env.IS_BROWSER': JSON.stringify(process.env.BROWSER || false),
|
|
...opts.define,
|
|
},
|
|
};
|
|
};
|
|
export default defineConfig([
|
|
// getCommonConfig({ entry: entrys, define: { 'process.env.IS_BROWSER': JSON.stringify(true) } }), // 浏览器
|
|
getCommonConfig({ entry: nodeEntrys, define: { 'process.env.IS_BROWSER': JSON.stringify(false) } }), // node
|
|
]);
|