代码拉取完成,页面将自动刷新
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
"use strict";
const Stats = require("./Stats");
const optionOrFallback = (optionValue, fallbackValue) =>
optionValue !== undefined ? optionValue : fallbackValue;
class MultiStats {
constructor(stats) {
this.stats = stats;
this.hash = stats.map(stat => stat.hash).join("");
}
hasErrors() {
return this.stats
.map(stat => stat.hasErrors())
.reduce((a, b) => a || b, false);
}
hasWarnings() {
return this.stats
.map(stat => stat.hasWarnings())
.reduce((a, b) => a || b, false);
}
toJson(options, forToString) {
if (typeof options === "boolean" || typeof options === "string") {
options = Stats.presetToOptions(options);
} else if (!options) {
options = {};
}
const jsons = this.stats.map((stat, idx) => {
const childOptions = Stats.getChildOptions(options, idx);
const obj = stat.toJson(childOptions, forToString);
obj.name = stat.compilation && stat.compilation.name;
return obj;
});
const showVersion =
options.version === undefined
? jsons.every(j => j.version)
: options.version !== false;
const showHash =
options.hash === undefined
? jsons.every(j => j.hash)
: options.hash !== false;
if (showVersion) {
for (const j of jsons) {
delete j.version;
}
}
const obj = {
errors: jsons.reduce((arr, j) => {
return arr.concat(
j.errors.map(msg => {
return `(${j.name}) ${msg}`;
})
);
}, []),
warnings: jsons.reduce((arr, j) => {
return arr.concat(
j.warnings.map(msg => {
return `(${j.name}) ${msg}`;
})
);
}, [])
};
if (showVersion) obj.version = require("../package.json").version;
if (showHash) obj.hash = this.hash;
if (options.children !== false) obj.children = jsons;
return obj;
}
toString(options) {
if (typeof options === "boolean" || typeof options === "string") {
options = Stats.presetToOptions(options);
} else if (!options) {
options = {};
}
const useColors = optionOrFallback(options.colors, false);
const obj = this.toJson(options, true);
return Stats.jsonToString(obj, useColors);
}
}
module.exports = MultiStats;
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。