akfun 3.3.6 → 3.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/build2esm.js +13 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "akfun",
3
- "version": "3.3.6",
3
+ "version": "3.3.7",
4
4
  "description": "前端脚手架:支持Vue技术栈和react技术栈",
5
5
  "keywords": [
6
6
  "前端工程",
package/src/build2esm.js CHANGED
@@ -1,10 +1,11 @@
1
1
  const ora = require('ora');
2
2
  const rollup = require('rollup');
3
+ const { terser } = require('rollup-plugin-terser'); // 压缩
3
4
  const projectConfig = require('./config/index'); // 引入当前项目配置文件
4
5
  const defaultConfig = require('./config/default.config');
5
6
  const rollupConfig = require('./config/rollup.config'); // rollup的配置文件
6
7
  const { isArray, isObject } = require('./utils/typeof');
7
- const {curConsoleTag } = require("./utils/akfunParams");
8
+ const { curConsoleTag } = require('./utils/akfunParams');
8
9
  const deepMergeConfig = require('./utils/deepMergeConfig');
9
10
 
10
11
  async function build2esmFunc(options, curConfig) {
@@ -37,11 +38,22 @@ module.exports = function (fileName, akfunConfig, _consoleTag) {
37
38
  const spinner = ora(`${consoleTag}开启esm模块构建能力...`).start();
38
39
  const curRollupConfig = rollupConfig(fileName, config); // 默认配置
39
40
  const build2esm = config.build2esm; // 用户的项目配置
41
+ const compress = build2esm.compress ?? true; // 是否压缩代码
40
42
  if (build2esm && build2esm.input) {
41
43
  curRollupConfig.input = build2esm.input;
42
44
  }
43
45
  if (build2esm && build2esm.output) {
44
46
  curRollupConfig.output = build2esm.output;
47
+
48
+ if (isArray(build2esm.output)) {
49
+ build2esm.output.map((outputItem) => {
50
+ if (!outputItem.plugins && compress) {
51
+ outputItem.plugins = [terser()];
52
+ }
53
+ });
54
+ } else if (isObject(build2esm.output) && !build2esm.output.plugins && compress) {
55
+ build2esm.output.plugins = [terser()];
56
+ }
45
57
  }
46
58
  build2esmFunc(curRollupConfig, config).then(() => {
47
59
  spinner.succeed(`${consoleTag}esm模块构建完成。`);