diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2024-08-30 17:21:18 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2024-08-30 17:21:18 +0800 |
| commit | efbc2ffe6a1ee5ec38a4396305561d6515d0943e (patch) | |
| tree | 2b4c94f18f2c792dfda813050755d5c0273fae22 /node_modules/webpack/lib/Stats.js | |
| parent | 43acceb75957c880a5ba5a31aae221394a36d5f6 (diff) | |
node fixes, updates
Diffstat (limited to 'node_modules/webpack/lib/Stats.js')
| -rw-r--r-- | node_modules/webpack/lib/Stats.js | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/Stats.js b/node_modules/webpack/lib/Stats.js new file mode 100644 index 00000000..22a36632 --- /dev/null +++ b/node_modules/webpack/lib/Stats.js @@ -0,0 +1,89 @@ +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ + +"use strict"; + +/** @typedef {import("../declarations/WebpackOptions").StatsOptions} StatsOptions */ +/** @typedef {import("./Compilation")} Compilation */ +/** @typedef {import("./Compilation").NormalizedStatsOptions} NormalizedStatsOptions */ +/** @typedef {import("./stats/DefaultStatsFactoryPlugin").StatsCompilation} StatsCompilation */ + +class Stats { + /** + * @param {Compilation} compilation webpack compilation + */ + constructor(compilation) { + this.compilation = compilation; + } + + get hash() { + return this.compilation.hash; + } + + get startTime() { + return this.compilation.startTime; + } + + get endTime() { + return this.compilation.endTime; + } + + /** + * @returns {boolean} true if the compilation had a warning + */ + hasWarnings() { + return ( + this.compilation.getWarnings().length > 0 || + this.compilation.children.some(child => child.getStats().hasWarnings()) + ); + } + + /** + * @returns {boolean} true if the compilation encountered an error + */ + hasErrors() { + return ( + this.compilation.errors.length > 0 || + this.compilation.children.some(child => child.getStats().hasErrors()) + ); + } + + /** + * @param {(string | boolean | StatsOptions)=} options stats options + * @returns {StatsCompilation} json output + */ + toJson(options) { + const normalizedOptions = this.compilation.createStatsOptions(options, { + forToString: false + }); + + const statsFactory = this.compilation.createStatsFactory(normalizedOptions); + + return statsFactory.create("compilation", this.compilation, { + compilation: this.compilation + }); + } + + /** + * @param {(string | boolean | StatsOptions)=} options stats options + * @returns {string} string output + */ + toString(options) { + const normalizedOptions = this.compilation.createStatsOptions(options, { + forToString: true + }); + + const statsFactory = this.compilation.createStatsFactory(normalizedOptions); + const statsPrinter = this.compilation.createStatsPrinter(normalizedOptions); + + const data = statsFactory.create("compilation", this.compilation, { + compilation: this.compilation + }); + const result = statsPrinter.print("compilation", data); + return result === undefined ? "" : result; + } +} + +module.exports = Stats; |
