diff options
Diffstat (limited to 'scripts/cmd/build.js')
-rw-r--r-- | scripts/cmd/build.js | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/scripts/cmd/build.js b/scripts/cmd/build.js index 764b26eed..5d59f5180 100644 --- a/scripts/cmd/build.js +++ b/scripts/cmd/build.js @@ -47,6 +47,9 @@ export default async function build(...args) { )) ); + const noClean = args.includes('--no-clean-dist'); + const forceCJS = args.includes('--force-cjs'); + const { type = 'module', version, @@ -54,9 +57,13 @@ export default async function build(...args) { } = await fs.readFile('./package.json').then((res) => JSON.parse(res.toString())); // expose PACKAGE_VERSION on process.env for CLI utils config.define = { 'process.env.PACKAGE_VERSION': JSON.stringify(version) }; - const format = type === 'module' ? 'esm' : 'cjs'; + const format = type === 'module' && !forceCJS ? 'esm' : 'cjs'; + const outdir = 'dist'; - await clean(outdir); + + if (!noClean) { + await clean(outdir); + } if (!isDev) { await esbuild.build({ @@ -64,6 +71,7 @@ export default async function build(...args) { bundle: false, entryPoints, outdir, + outExtension: forceCJS ? { '.js': '.cjs' } : {}, format, }); return; |