9e5e96b9e4
* fix: client lib require wrapper * fix: bug * fix: add tsconfig.paths.json * fix: collection dir not exists * fix: improve... * fix: update yarn.lock * fix: db.sync * fix: bugs * fix: bugs * fix: bugs * fix: bugs && allow user custom build config * docs: user custom config docs * refactor: custom user build config * fix: bugs * fix: build plugin-client bug --------- Co-authored-by: chenos <chenlinxh@gmail.com>
36 lines
1.1 KiB
TypeScript
36 lines
1.1 KiB
TypeScript
import { build } from 'tsup';
|
|
import fg from 'fast-glob';
|
|
import path from 'path';
|
|
import chalk from 'chalk';
|
|
import { globExcludeFiles, EsbuildSupportExts } from './constant';
|
|
import { PkgLog, UserConfig } from './utils';
|
|
|
|
export function buildCjs(cwd: string, userConfig: UserConfig, sourcemap: boolean = false, log: PkgLog) {
|
|
log('build cjs');
|
|
|
|
const entry = fg.globSync(['src/**', ...globExcludeFiles], { cwd, absolute: true });
|
|
const outDir = path.join(cwd, 'lib');
|
|
const otherExts = Array.from(new Set(entry.map((item) => path.extname(item)).filter((item) => !EsbuildSupportExts.includes(item))));
|
|
if (otherExts.length) {
|
|
log('%s will not be processed, only be copied to the lib directory.', chalk.yellow(otherExts.join(',')));
|
|
}
|
|
return build(userConfig.modifyTsupConfig({
|
|
entry,
|
|
splitting: false,
|
|
clean: true,
|
|
bundle: false,
|
|
silent: true,
|
|
sourcemap,
|
|
treeshake: false,
|
|
target: 'node16',
|
|
keepNames: true,
|
|
outDir,
|
|
loader: {
|
|
...otherExts.reduce((prev, cur) => ({ ...prev, [cur]: 'copy' }), {}),
|
|
'.json': 'copy',
|
|
},
|
|
format: 'cjs',
|
|
skipNodeModulesBundle: true,
|
|
}));
|
|
}
|