| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | 
							- /*
 
- 	MIT License http://www.opensource.org/licenses/mit-license.php
 
- 	Author Tobias Koppers @sokra
 
- */
 
- "use strict";
 
- /** @typedef {import("./Dependency").DependencyLocation} DependencyLocation */
 
- /** @typedef {import("./Dependency").SourcePosition} SourcePosition */
 
- // TODO webpack 5: pos must be SourcePosition
 
- /**
 
-  * @param {SourcePosition|DependencyLocation|string} pos position
 
-  * @returns {string} formatted position
 
-  */
 
- const formatPosition = pos => {
 
- 	if (pos === null) return "";
 
- 	// TODO webpack 5: Simplify this
 
- 	if (typeof pos === "string") return pos;
 
- 	if (typeof pos === "number") return `${pos}`;
 
- 	if (typeof pos === "object") {
 
- 		if ("line" in pos && "column" in pos) {
 
- 			return `${pos.line}:${pos.column}`;
 
- 		} else if ("line" in pos) {
 
- 			return `${pos.line}:?`;
 
- 		} else if ("index" in pos) {
 
- 			// TODO webpack 5 remove this case
 
- 			return `+${pos.index}`;
 
- 		} else {
 
- 			return "";
 
- 		}
 
- 	}
 
- 	return "";
 
- };
 
- // TODO webpack 5: loc must be DependencyLocation
 
- /**
 
-  * @param {DependencyLocation|SourcePosition|string} loc location
 
-  * @returns {string} formatted location
 
-  */
 
- const formatLocation = loc => {
 
- 	if (loc === null) return "";
 
- 	// TODO webpack 5: Simplify this
 
- 	if (typeof loc === "string") return loc;
 
- 	if (typeof loc === "number") return `${loc}`;
 
- 	if (typeof loc === "object") {
 
- 		if ("start" in loc && loc.start && "end" in loc && loc.end) {
 
- 			if (
 
- 				typeof loc.start === "object" &&
 
- 				typeof loc.start.line === "number" &&
 
- 				typeof loc.end === "object" &&
 
- 				typeof loc.end.line === "number" &&
 
- 				typeof loc.end.column === "number" &&
 
- 				loc.start.line === loc.end.line
 
- 			) {
 
- 				return `${formatPosition(loc.start)}-${loc.end.column}`;
 
- 			} else {
 
- 				return `${formatPosition(loc.start)}-${formatPosition(loc.end)}`;
 
- 			}
 
- 		}
 
- 		if ("start" in loc && loc.start) {
 
- 			return formatPosition(loc.start);
 
- 		}
 
- 		if ("name" in loc && "index" in loc) {
 
- 			return `${loc.name}[${loc.index}]`;
 
- 		}
 
- 		if ("name" in loc) {
 
- 			return loc.name;
 
- 		}
 
- 		return formatPosition(loc);
 
- 	}
 
- 	return "";
 
- };
 
- module.exports = formatLocation;
 
 
  |