57 lines
1.4 KiB
JavaScript
57 lines
1.4 KiB
JavaScript
|
|
/* eslint-disable no-console */
|
|||
|
|
/* eslint-disable @typescript-eslint/no-require-imports */
|
|||
|
|
const esbuild = require('esbuild');
|
|||
|
|
const ignorePlugin = require('esbuild-plugin-ignore');
|
|||
|
|
|
|||
|
|
// 执行脚本
|
|||
|
|
(async () => {
|
|||
|
|
try {
|
|||
|
|
console.log('building...');
|
|||
|
|
const result = await esbuild.build({
|
|||
|
|
entryPoints: ['src/cli/index.ts'],
|
|||
|
|
outfile: 'dist/cli.js',
|
|||
|
|
bundle: true,
|
|||
|
|
platform: 'node',
|
|||
|
|
target: ['node10'],
|
|||
|
|
format: 'cjs',
|
|||
|
|
sourcemap: true,
|
|||
|
|
sourcesContent: true,
|
|||
|
|
plugins: [
|
|||
|
|
ignorePlugin([
|
|||
|
|
// @alilc/lowcode-types 中误依赖了 react,这里忽略下
|
|||
|
|
{
|
|||
|
|
resourceRegExp: /^react$/,
|
|||
|
|
contextRegExp: /./,
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
resourceRegExp: /setter-config/,
|
|||
|
|
contextRegExp: /lowcode-types/,
|
|||
|
|
},
|
|||
|
|
]),
|
|||
|
|
],
|
|||
|
|
define: {},
|
|||
|
|
treeShaking: true,
|
|||
|
|
minify: false,
|
|||
|
|
minifyWhitespace: false,
|
|||
|
|
minifyIdentifiers: false,
|
|||
|
|
minifySyntax: false,
|
|||
|
|
legalComments: 'external',
|
|||
|
|
external: Object.keys(require('../package.json').dependencies),
|
|||
|
|
});
|
|||
|
|
if (result.errors.length > 0) {
|
|||
|
|
throw result.errors;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (result.warnings.length > 0) {
|
|||
|
|
result.warnings.forEach((warnings) => {
|
|||
|
|
console.warn(warnings);
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
console.log('done');
|
|||
|
|
} catch (e) {
|
|||
|
|
console.error(e);
|
|||
|
|
process.exit(1);
|
|||
|
|
}
|
|||
|
|
})();
|