@qse/edu-scripts 1.13.7 → 1.13.8

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.
@@ -1,96 +1,85 @@
1
- "use strict";
2
-
3
- /**
4
- * Copyright (c) 2015-present, Facebook, Inc.
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE file in the root directory of this source tree.
8
- */
9
-
10
- var fs = require('fs');
11
- var path = require('path');
12
- var chalk = require('chalk');
13
- var filesize = require('filesize');
14
- var recursive = require('recursive-readdir');
15
- var stripAnsi = require('strip-ansi');
16
- var gzipSize = require('gzip-size').sync;
1
+ // src/utils/FileSizeReporter.js
2
+ var fs = require("fs");
3
+ var path = require("path");
4
+ var chalk = require("chalk");
5
+ var filesize = require("filesize");
6
+ var recursive = require("recursive-readdir");
7
+ var stripAnsi = require("strip-ansi");
8
+ var gzipSize = require("gzip-size").sync;
17
9
  function canReadAsset(asset) {
18
10
  return /\.(js|css)$/.test(asset) && !/service-worker\.js/.test(asset) && !/precache-manifest\.[0-9a-f]+\.js/.test(asset);
19
11
  }
20
-
21
- // Prints a detailed summary of build files.
22
12
  function printFileSizesAfterBuild(webpackStats, previousSizeMap, buildFolder, maxBundleGzipSize, maxChunkGzipSize) {
23
13
  var root = previousSizeMap.root;
24
14
  var sizes = previousSizeMap.sizes;
25
- var assets = (webpackStats.stats || [webpackStats]).map(stats => stats.toJson({
26
- all: false,
27
- assets: true
28
- }).assets.filter(asset => canReadAsset(asset.name)).map(asset => {
29
- var fileContents = fs.readFileSync(path.join(root, asset.name));
30
- var size = gzipSize(fileContents);
31
- var previousSize = sizes[removeFileNameHash(root, asset.name)];
32
- var difference = getDifferenceLabel(size, previousSize);
33
- return {
34
- folder: path.join(path.basename(buildFolder), path.dirname(asset.name)),
35
- name: path.basename(asset.name),
36
- size: size,
37
- sizeLabel: filesize(size) + (difference ? ' (' + difference + ')' : '')
38
- };
39
- })).reduce((single, all) => all.concat(single), []);
15
+ var assets = (webpackStats.stats || [webpackStats]).map(
16
+ (stats) => stats.toJson({ all: false, assets: true }).assets.filter((asset) => canReadAsset(asset.name)).map((asset) => {
17
+ var fileContents = fs.readFileSync(path.join(root, asset.name));
18
+ var size = gzipSize(fileContents);
19
+ var previousSize = sizes[removeFileNameHash(root, asset.name)];
20
+ var difference = getDifferenceLabel(size, previousSize);
21
+ return {
22
+ folder: path.join(path.basename(buildFolder), path.dirname(asset.name)),
23
+ name: path.basename(asset.name),
24
+ size,
25
+ sizeLabel: filesize(size) + (difference ? " (" + difference + ")" : "")
26
+ };
27
+ })
28
+ ).reduce((single, all) => all.concat(single), []);
40
29
  assets.sort((a, b) => b.size - a.size);
41
-
42
- // move main file to first
43
- var mainAssetIdx = assets.findIndex(asset => /_\d+\.\d+\.\d+\./.test(asset.name));
30
+ var mainAssetIdx = assets.findIndex((asset) => /_\d+\.\d+\.\d+\./.test(asset.name));
44
31
  assets.unshift(assets.splice(mainAssetIdx, 1)[0]);
45
- var longestSizeLabelLength = Math.max.apply(null, assets.map(a => stripAnsi(a.sizeLabel).length));
32
+ var longestSizeLabelLength = Math.max.apply(
33
+ null,
34
+ assets.map((a) => stripAnsi(a.sizeLabel).length)
35
+ );
46
36
  var suggestBundleSplitting = false;
47
- assets.forEach(asset => {
37
+ assets.forEach((asset) => {
48
38
  var sizeLabel = asset.sizeLabel;
49
39
  var sizeLength = stripAnsi(sizeLabel).length;
50
40
  if (sizeLength < longestSizeLabelLength) {
51
- var rightPadding = ' '.repeat(longestSizeLabelLength - sizeLength);
41
+ var rightPadding = " ".repeat(longestSizeLabelLength - sizeLength);
52
42
  sizeLabel += rightPadding;
53
43
  }
54
44
  var isMainBundle = /_\d+\.\d+\.\d+\./.test(asset.name);
55
45
  var maxRecommendedSize = isMainBundle ? maxBundleGzipSize : maxChunkGzipSize;
56
46
  var isLarge = maxRecommendedSize && asset.size > maxRecommendedSize;
57
- if (isLarge && path.extname(asset.name) === '.js') {
47
+ if (isLarge && path.extname(asset.name) === ".js") {
58
48
  suggestBundleSplitting = true;
59
49
  }
60
- console.log(' ' + (isLarge ? chalk.yellow(sizeLabel) : sizeLabel) + ' ' + chalk.dim(asset.folder + path.sep) + chalk.cyan(asset.name));
50
+ console.log(
51
+ " " + (isLarge ? chalk.yellow(sizeLabel) : sizeLabel) + " " + chalk.dim(asset.folder + path.sep) + chalk.cyan(asset.name)
52
+ );
61
53
  if (isMainBundle) {
62
- console.log('');
54
+ console.log("");
63
55
  }
64
56
  });
65
57
  if (suggestBundleSplitting) {
66
58
  console.log();
67
- console.log(chalk.yellow('产物大小明显大于推荐的大小 (主文件 30k, chunk 1M, 黄色标注为偏大)'));
68
- console.log(chalk.yellow('考虑下使用代码分割解决'));
69
- console.log(chalk.yellow('也可以使用 npm run analyze 命令分析产物'));
59
+ console.log(chalk.yellow("产物大小明显大于推荐的大小 (主文件 30k, chunk 1M, 黄色标注为偏大)"));
60
+ console.log(chalk.yellow("考虑下使用代码分割解决"));
61
+ console.log(chalk.yellow("也可以使用 npm run analyze 命令分析产物"));
70
62
  }
71
63
  }
72
64
  function removeFileNameHash(buildFolder, fileName) {
73
- return fileName.replace(buildFolder, '').replace(/\\/g, '/').replace(/\/\d+\.\d+\.\d+\//, '/').replace(/\/?(.*)(\.[0-9a-f]+)(\.chunk)?(\.js|\.css)/, (match, p1, p2, p3, p4) => p1 + p4);
65
+ return fileName.replace(buildFolder, "").replace(/\\/g, "/").replace(/\/\d+\.\d+\.\d+\//, "/").replace(/\/?(.*)(\.[0-9a-f]+)(\.chunk)?(\.js|\.css)/, (match, p1, p2, p3, p4) => p1 + p4);
74
66
  }
75
-
76
- // Input: 1024, 2048
77
- // Output: "(+1 KB)"
78
67
  function getDifferenceLabel(currentSize, previousSize) {
79
68
  var FIFTY_KILOBYTES = 1024 * 50;
80
69
  var difference = currentSize - previousSize;
81
70
  var fileSize = !Number.isNaN(difference) ? filesize(difference) : 0;
82
71
  if (difference >= FIFTY_KILOBYTES) {
83
- return chalk.red('+' + fileSize);
72
+ return chalk.red("+" + fileSize);
84
73
  } else if (difference < FIFTY_KILOBYTES && difference > 0) {
85
- return chalk.yellow('+' + fileSize);
74
+ return chalk.yellow("+" + fileSize);
86
75
  } else if (difference < 0) {
87
76
  return chalk.green(fileSize);
88
77
  } else {
89
- return '';
78
+ return "";
90
79
  }
91
80
  }
92
81
  function measureFileSizesBeforeBuild(buildFolder) {
93
- return new Promise(resolve => {
82
+ return new Promise((resolve) => {
94
83
  recursive(buildFolder, (err, fileNames) => {
95
84
  var sizes;
96
85
  if (!err && fileNames) {
@@ -109,6 +98,6 @@ function measureFileSizesBeforeBuild(buildFolder) {
109
98
  });
110
99
  }
111
100
  module.exports = {
112
- measureFileSizesBeforeBuild: measureFileSizesBeforeBuild,
113
- printFileSizesAfterBuild: printFileSizesAfterBuild
114
- };
101
+ measureFileSizesBeforeBuild,
102
+ printFileSizesAfterBuild
103
+ };
@@ -1,33 +1,32 @@
1
- "use strict";
2
-
3
- const paths = require('../config/paths');
4
- const appPkg = require(paths.package);
5
- const fs = require('fs');
6
- const edu = appPkg.edu || {};
1
+ // src/utils/appConfig.js
2
+ var paths = require("../config/paths");
3
+ var appPkg = require(paths.package);
4
+ var fs = require("fs");
5
+ var edu = appPkg.edu || {};
7
6
  if (edu.single || edu.mainProject) {
8
7
  if (edu.single) {
9
- edu.mode = 'single';
8
+ edu.mode = "single";
10
9
  delete edu.single;
11
10
  }
12
11
  if (edu.mainProject) {
13
- edu.mode = 'main';
12
+ edu.mode = "main";
14
13
  delete edu.mainProject;
15
14
  }
16
- fs.writeFileSync(paths.package, JSON.stringify(appPkg, null, 2), 'utf-8');
15
+ fs.writeFileSync(paths.package, JSON.stringify(appPkg, null, 2), "utf-8");
17
16
  }
18
- const appConfig = {
17
+ var appConfig = {
19
18
  /** @type {'main'|'single'} */
20
19
  get mode() {
21
20
  return edu.mode;
22
21
  },
23
22
  get mainProject() {
24
- return this.mode === 'main';
23
+ return this.mode === "main";
25
24
  },
26
25
  get single() {
27
- return this.mode === 'single';
26
+ return this.mode === "single";
28
27
  },
29
28
  get grayscale() {
30
29
  return !!edu.grayscale;
31
30
  }
32
31
  };
33
- module.exports = appConfig;
32
+ module.exports = appConfig;
@@ -1,62 +1,62 @@
1
- "use strict";
2
-
3
- const fs = require('fs');
4
- const paths = require('../config/paths');
5
- const chalk = require('chalk');
6
- const pkg = require('../../package.json');
7
- const updateNotifier = require('update-notifier');
8
- const semver = require('semver');
9
- const notifier = updateNotifier({
1
+ // src/utils/beforeStart.js
2
+ var fs = require("fs");
3
+ var paths = require("../config/paths");
4
+ var chalk = require("chalk");
5
+ var pkg = require("../../package.json");
6
+ var updateNotifier = require("update-notifier");
7
+ var semver = require("semver");
8
+ var notifier = updateNotifier({
10
9
  pkg,
11
10
  shouldNotifyInNpmScript: true,
12
- updateCheckInterval: 1000 * 60 // 时刻保持更新
11
+ updateCheckInterval: 1e3 * 60
12
+ // 时刻保持更新
13
13
  });
14
-
15
- if (notifier.update && ['minor', 'major'].includes(notifier.update.type)) {
16
- const message = '发现新版本 ' + chalk.dim('{currentVersion}') + chalk.reset(' → ') + chalk.green('{latestVersion}') + ' \n运行 ' + chalk.cyan('{updateCommand}') + ' 进行更新\n\n' + chalk.bold.red('请始终保持最新版本\n') + '更新日志: ' + chalk.green(`${pkg.homepage}#/changelog`);
17
- notifier.notify({
18
- message
19
- });
14
+ if (notifier.update && ["minor", "major"].includes(notifier.update.type)) {
15
+ const message = "发现新版本 " + chalk.dim("{currentVersion}") + chalk.reset(" ") + chalk.green("{latestVersion}") + " \n运行 " + chalk.cyan("{updateCommand}") + " 进行更新\n\n" + chalk.bold.red("请始终保持最新版本\n") + "更新日志: " + chalk.green(`${pkg.homepage}#/changelog`);
16
+ notifier.notify({ message });
20
17
  process.exit(1);
21
18
  }
22
- const appPkg = require(paths.package);
23
- const appConfig = require('./appConfig');
19
+ var appPkg = require(paths.package);
20
+ var appConfig = require("./appConfig");
24
21
  if (semver.valid(appPkg.version) === null) {
25
- console.log(chalk.red(`package.version 不符合 semver 规范 https://docs.npmjs.com/about-semantic-versioning`));
22
+ console.log(
23
+ chalk.red(`package.version 不符合 semver 规范 https://docs.npmjs.com/about-semantic-versioning`)
24
+ );
26
25
  process.exit(1);
27
26
  }
28
27
  switch (appConfig.mode) {
29
- case 'main':
30
- console.log(chalk.bgMagenta('正在使用教育主工程模式'));
28
+ case "main":
29
+ console.log(chalk.bgMagenta("正在使用教育主工程模式"));
31
30
  break;
32
- case 'single':
33
- console.log(chalk.bgMagenta('正在使用独立项目模式'));
31
+ case "single":
32
+ console.log(chalk.bgMagenta("正在使用独立项目模式"));
34
33
  break;
35
34
  default:
36
- console.log(chalk.bgMagenta('正在使用教育集成模式'));
35
+ console.log(chalk.bgMagenta("正在使用教育集成模式"));
37
36
  break;
38
37
  }
39
38
  if (appConfig.grayscale) {
40
- console.log(chalk.bgYellow('正在使用灰度测试模式'));
39
+ console.log(chalk.bgYellow("正在使用灰度测试模式"));
41
40
  }
42
41
  if (!(appConfig.single || appConfig.mainProject)) {
43
42
  if (fs.existsSync(paths.static)) {
44
- console.log(chalk.bgYellow('教育集成工程不能含有 public/static, 现已自动删除'));
43
+ console.log(chalk.bgYellow("教育集成工程不能含有 public/static, 现已自动删除"));
45
44
  try {
46
- fs.rmSync(paths.static, {
47
- recursive: true
48
- });
49
- } catch (e) {}
45
+ fs.rmSync(paths.static, { recursive: true });
46
+ } catch (e) {
47
+ }
50
48
  }
51
49
  }
52
- if (!fs.existsSync(paths.public) && !process.argv.includes('auto-refactor')) {
50
+ if (!fs.existsSync(paths.public) && !process.argv.includes("auto-refactor")) {
53
51
  console.log(chalk.red(`public 文件夹不存在,请先按文档改造项目`));
54
52
  console.log(`文档: ${chalk.underline(pkg.homepage)}`);
55
- console.log(`\n使用 ${chalk.green('npx edu-scripts auto-refactor')} 自动改造\n`);
53
+ console.log(`
54
+ 使用 ${chalk.green("npx edu-scripts auto-refactor")} 自动改造
55
+ `);
56
56
  process.exit(0);
57
57
  }
58
58
  if (appPkg.browserslist) {
59
- console.log(chalk.yellow('已删除 package.json 中 browserslist,该值由内部自动控制\n'));
59
+ console.log(chalk.yellow("已删除 package.json 中 browserslist,该值由内部自动控制\n"));
60
60
  delete appPkg.browserslist;
61
- fs.writeFileSync(paths.package, JSON.stringify(appPkg, null, 2), 'utf-8');
62
- }
61
+ fs.writeFileSync(paths.package, JSON.stringify(appPkg, null, 2), "utf-8");
62
+ }
@@ -1,78 +1,50 @@
1
- "use strict";
2
-
3
- const t = require('@babel/types');
4
- const {
5
- parse
6
- } = require('@babel/parser');
7
- const generate = require('@babel/generator').default;
8
- const traverse = require('@babel/traverse').default;
9
- const {
10
- format
11
- } = require('prettier');
12
-
13
- // ver.js 中定义模块的数组
14
- const TARGET_IDENTIFIER_NAME = 'project_apiArr';
15
- const MODULE_IDENTIFIER_NAME = 'module';
1
+ // src/utils/changeDeployVersion.js
2
+ var t = require("@babel/types");
3
+ var { parse } = require("@babel/parser");
4
+ var generate = require("@babel/generator").default;
5
+ var traverse = require("@babel/traverse").default;
6
+ var { format } = require("prettier");
7
+ var TARGET_IDENTIFIER_NAME = "project_apiArr";
8
+ var MODULE_IDENTIFIER_NAME = "module";
16
9
  function changeDeployVersion(code, pkg) {
17
- const {
18
- name,
19
- version,
20
- grayscale
21
- } = pkg;
10
+ const { name, version, grayscale } = pkg;
22
11
  let ast;
23
12
  try {
24
13
  ast = parse(code);
25
14
  } catch (error) {
26
15
  throw new Error(`代码解析错误: ${error.message}`);
27
16
  }
28
- const keyName = grayscale ? 'grayscale' : 'main';
29
-
30
- /**
31
- * @return {babel.NodePath<t.VariableDeclarator> | undefined}
32
- */
33
- function findTargetDeclarator(ast) {
17
+ const keyName = grayscale ? "grayscale" : "main";
18
+ function findTargetDeclarator(ast2) {
34
19
  let res;
35
- traverse(ast, {
20
+ traverse(ast2, {
36
21
  VariableDeclarator(path) {
37
- if (t.isIdentifier(path.node.id, {
38
- name: TARGET_IDENTIFIER_NAME
39
- }) && t.isArrayExpression(path.node.init)) {
22
+ if (t.isIdentifier(path.node.id, { name: TARGET_IDENTIFIER_NAME }) && t.isArrayExpression(path.node.init)) {
40
23
  res = path;
41
24
  }
42
25
  }
43
26
  });
44
27
  return res;
45
28
  }
46
-
47
- /**
48
- * @param {babel.NodePath<t.VariableDeclarator>} path
49
- * @return {babel.NodePath<t.ObjectExpression> | undefined}
50
- */
51
29
  function findModuleObject(path) {
52
30
  let res;
53
31
  path.traverse({
54
- ObjectExpression(path) {
55
- if (path.node.properties.some(node => t.isIdentifier(node.key, {
56
- name: MODULE_IDENTIFIER_NAME
57
- }) && t.isLiteral(node.value, {
58
- value: name
59
- }))) {
60
- res = path;
32
+ ObjectExpression(path2) {
33
+ if (path2.node.properties.some(
34
+ (node) => t.isIdentifier(node.key, { name: MODULE_IDENTIFIER_NAME }) && t.isLiteral(node.value, { value: name })
35
+ )) {
36
+ res = path2;
61
37
  }
62
38
  }
63
39
  });
64
40
  return res;
65
41
  }
66
-
67
- /**
68
- * @param {babel.NodePath<t.ObjectExpression>} path
69
- */
70
42
  function modifyModuleVersion(path) {
71
43
  let hasModify = false;
72
44
  path.traverse({
73
- Property(path) {
74
- if (path.node.key.name === keyName) {
75
- path.node.value.value = version;
45
+ Property(path2) {
46
+ if (path2.node.key.name === keyName) {
47
+ path2.node.value.value = version;
76
48
  hasModify = true;
77
49
  }
78
50
  }
@@ -81,26 +53,27 @@ function changeDeployVersion(code, pkg) {
81
53
  path.node.properties.push(t.objectProperty(t.identifier(keyName), t.stringLiteral(version)));
82
54
  }
83
55
  }
84
- /**
85
- * @param {babel.NodePath<t.ObjectExpression>} path
86
- */
87
56
  function deleteModuleComments(path) {
88
57
  path.traverse({
89
- ObjectExpression(path) {
90
- delete path.node.leadingComments;
58
+ ObjectExpression(path2) {
59
+ delete path2.node.leadingComments;
91
60
  }
92
61
  });
93
62
  }
94
-
95
- /**
96
- * @param {babel.NodePath<t.VariableDeclarator>} path
97
- */
98
63
  function addModuleToTarget(path) {
99
64
  const elements = path.node.init.elements;
100
- elements.splice(elements.length - 2, 0, t.objectExpression([t.objectProperty(t.identifier(MODULE_IDENTIFIER_NAME), t.stringLiteral(name)), t.objectProperty(t.identifier(keyName), t.stringLiteral(version))]));
65
+ elements.splice(
66
+ elements.length - 2,
67
+ 0,
68
+ t.objectExpression([
69
+ t.objectProperty(t.identifier(MODULE_IDENTIFIER_NAME), t.stringLiteral(name)),
70
+ t.objectProperty(t.identifier(keyName), t.stringLiteral(version))
71
+ ])
72
+ );
101
73
  }
102
74
  const targetPath = findTargetDeclarator(ast);
103
- if (!targetPath) throw new Error(`ver.js 不合规范,未找到参数 ${TARGET_IDENTIFIER_NAME}`);
75
+ if (!targetPath)
76
+ throw new Error(`ver.js 不合规范,未找到参数 ${TARGET_IDENTIFIER_NAME}`);
104
77
  const moduleObjPath = findModuleObject(targetPath);
105
78
  if (moduleObjPath) {
106
79
  modifyModuleVersion(moduleObjPath);
@@ -108,11 +81,9 @@ function changeDeployVersion(code, pkg) {
108
81
  addModuleToTarget(targetPath);
109
82
  }
110
83
  deleteModuleComments(targetPath);
111
- return format(generate(ast, {
112
- minified: true
113
- }).code, {
114
- parser: 'babel',
84
+ return format(generate(ast, { minified: true }).code, {
85
+ parser: "babel",
115
86
  printWidth: 120
116
87
  });
117
88
  }
118
- module.exports = changeDeployVersion;
89
+ module.exports = changeDeployVersion;
@@ -1,9 +1,31 @@
1
- "use strict";
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
2
18
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
19
+ // src/utils/defineConfig.ts
20
+ var defineConfig_exports = {};
21
+ __export(defineConfig_exports, {
22
+ defineConfig: () => defineConfig
5
23
  });
6
- exports.defineConfig = defineConfig;
24
+ module.exports = __toCommonJS(defineConfig_exports);
7
25
  function defineConfig(config) {
8
26
  return config;
9
- }
27
+ }
28
+ // Annotate the CommonJS export names for ESM import in node:
29
+ 0 && (module.exports = {
30
+ defineConfig
31
+ });
package/lib/utils/exec.js CHANGED
@@ -1,11 +1,7 @@
1
- "use strict";
2
-
3
- const cp = require('child_process');
4
- const exec = cmd => {
1
+ // src/utils/exec.js
2
+ var cp = require("child_process");
3
+ var exec = (cmd) => {
5
4
  console.log(`> ${cmd}`);
6
- return cp.execSync(cmd, {
7
- stdio: 'inherit',
8
- encoding: 'utf-8'
9
- });
5
+ return cp.execSync(cmd, { stdio: "inherit", encoding: "utf-8" });
10
6
  };
11
- module.exports = exec;
7
+ module.exports = exec;
@@ -1,15 +1,14 @@
1
- "use strict";
2
-
3
- const getWebpackConfig = require('../config/webpackConfig');
4
- const getWebpackDevServerConfig = require('../config/webpackDevServerConfig');
5
- const getOverride = require('./getOverride');
1
+ // src/utils/getConfig.js
2
+ var getWebpackConfig = require("../config/webpackConfig");
3
+ var getWebpackDevServerConfig = require("../config/webpackDevServerConfig");
4
+ var getOverride = require("./getOverride");
6
5
  function getConfig(args) {
7
6
  const override = getOverride();
8
7
  let webpackConfig = getWebpackConfig(args, override);
9
8
  if (override.webpack) {
10
9
  webpackConfig = override.webpack(webpackConfig) || webpackConfig;
11
10
  }
12
- if (process.env.NODE_ENV === 'development') {
11
+ if (process.env.NODE_ENV === "development") {
13
12
  let devServerConfig = getWebpackDevServerConfig(args, override);
14
13
  if (override.devServer) {
15
14
  devServerConfig = override.devServer(devServerConfig) || devServerConfig;
@@ -18,4 +17,4 @@ function getConfig(args) {
18
17
  }
19
18
  return webpackConfig;
20
19
  }
21
- module.exports = getConfig;
20
+ module.exports = getConfig;
@@ -1,28 +1,24 @@
1
- "use strict";
2
-
3
- const fs = require('fs');
4
- const paths = require('../config/paths');
5
-
6
- /** @type {import('./defineConfig').Config} */
7
- const defaultOverride = {
1
+ // src/utils/getOverride.js
2
+ var fs = require("fs");
3
+ var paths = require("../config/paths");
4
+ var defaultOverride = {
8
5
  transformNodeModules: true,
9
- minify: 'esbuild',
6
+ minify: "esbuild",
10
7
  proxy: [],
11
8
  extraPostCSSPlugins: []
12
9
  };
13
- let override = null;
14
-
15
- /**
16
- * @return {import('./defineConfig').Config}
17
- */
10
+ var override = null;
18
11
  module.exports = function getOverride() {
19
- if (override) return override;
12
+ if (override)
13
+ return override;
20
14
  override = Object.assign({}, defaultOverride);
21
15
  if (fs.existsSync(paths.override)) {
22
16
  const userOverride = require(paths.override);
23
- if (typeof userOverride !== 'object') throw new Error('格式错误,请使用 npx edu g override 生成文件');
17
+ if (typeof userOverride !== "object")
18
+ throw new Error("格式错误,请使用 npx edu g override 生成文件");
24
19
  Object.assign(override, userOverride);
25
20
  }
26
- if (override.minify === true) override.minify = defaultOverride.minify;
21
+ if (override.minify === true)
22
+ override.minify = defaultOverride.minify;
27
23
  return override;
28
- };
24
+ };