Merge pull request #33045 from ant-design/opt-theme

chore: Speed up site build preview speed
This commit is contained in:
二货机器人 2021-11-26 15:07:02 +08:00 committed by GitHub
commit 90bfbe2a62
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 43 additions and 3 deletions

View File

@ -64,6 +64,8 @@ jobs:
- name: npm run site
id: site
run: npm run site
env:
SITE_ENV: development
- name: upload site artifact
uses: actions/upload-artifact@v2

View File

@ -84,9 +84,9 @@
"pub": "npm run version && antd-tools run pub",
"prepublishOnly": "antd-tools run guard",
"site:theme": "npm run site:theme-dark && npm run site:theme-compact",
"site:theme-dark": "cross-env ESBUILD=1 ANT_THEME=dark bisheng build --ssr -c ./site/bisheng.config.js",
"site:theme-compact": "cross-env ESBUILD=1 ANT_THEME=compact bisheng build --ssr -c ./site/bisheng.config.js",
"site": "npm run site:theme && cross-env NODE_ICU_DATA=node_modules/full-icu ESBUILD=1 concurrently \"bisheng build --ssr -c ./site/bisheng.config.js\"",
"site:theme-dark": "cross-env ESBUILD=1 ANT_THEME=dark bisheng build -c ./site/bisheng.config.js",
"site:theme-compact": "cross-env ESBUILD=1 ANT_THEME=compact bisheng build -c ./site/bisheng.config.js",
"site": "npm run site:theme && cross-env NODE_ICU_DATA=node_modules/full-icu ESBUILD=1 bisheng build --ssr -c ./site/bisheng.config.js",
"sort": "npx sort-package-json",
"sort-api": "antd-tools run sort-api-table",
"start": "antd-tools run clean && cross-env NODE_ENV=development concurrently \"bisheng start -c ./site/bisheng.config.js\"",

View File

@ -111,6 +111,13 @@ module.exports = {
delete config.module.noParse;
// Use dev mod to speed up site preview build
// This is used for CI preview build in `preview-build.yml`
if (process.env.SITE_ENV === 'development') {
console.log('Site build with development mode...');
config.mode = 'development';
}
if (ANT_THEME) {
config.mode = 'development';
config.plugins.forEach(plugin => {
@ -119,6 +126,37 @@ module.exports = {
plugin.options.filename = `${ANT_THEME}.css`;
}
});
// Remove preset target
config.module.rules.forEach(rule => {
if (rule.options?.presets?.[1]?.[0]?.includes('preset-env')) {
delete rule.options.presets[1][1];
delete rule.options.plugins;
}
});
config.optimization.minimize = false;
delete config.optimization.minimizer;
config.externals = [
/^rc-.*/,
/^react.*/,
/^@ant-design\/.*/,
/^@babel\/.*/,
/^@algolia\/.*/,
/^@docsearch\/.*/,
/autocomplete.js/,
/docsearch.js/,
/.*\.md/,
/lodash/,
/jquery/,
/moment/,
/core-js/,
/jsonml/,
/ramda/,
/tinycolor/,
/bisheng-plugin/,
];
}
return config;