12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- "use strict";
- /** @typedef {import("webpack").Compiler} Compiler */
- /** @typedef {import("webpack").Stats} Stats */
- /** @typedef {import("webpack").MultiStats} MultiStats */
- /** @typedef {import("../index.js").IncomingMessage} IncomingMessage */
- /** @typedef {import("../index.js").ServerResponse} ServerResponse */
- /**
- * @template {IncomingMessage} Request
- * @template {ServerResponse} Response
- * @param {import("../index.js").Context<Request, Response>} context
- */
- function getPaths(context) {
- const {
- stats,
- options
- } = context;
- /** @type {Stats[]} */
- const childStats =
- /** @type {MultiStats} */
- stats.stats ?
- /** @type {MultiStats} */
- stats.stats : [
- /** @type {Stats} */
- stats];
- const publicPaths = [];
- for (const {
- compilation
- } of childStats) {
- // The `output.path` is always present and always absolute
- const outputPath = compilation.getPath(compilation.outputOptions.path || "");
- const publicPath = options.publicPath ? compilation.getPath(options.publicPath) : compilation.outputOptions.publicPath ? compilation.getPath(compilation.outputOptions.publicPath) : "";
- publicPaths.push({
- outputPath,
- publicPath
- });
- }
- return publicPaths;
- }
- module.exports = getPaths;
|