1234567891011121314151617181920212223 |
- /**
- * Prettify a filename from error stacks into the desired format.
- * @param {string} filename The filename to be formatted.
- * @returns {string} The formatted filename.
- */
- function formatFilename(filename) {
- // Strip away protocol and domain for compiled files
- const htmlMatch = /^https?:\/\/(.*)\/(.*)/.exec(filename);
- if (htmlMatch && htmlMatch[1] && htmlMatch[2]) {
- return htmlMatch[2];
- }
- // Strip everything before the first directory for source files
- const sourceMatch = /\/.*?([^./]+[/|\\].*)$/.exec(filename);
- if (sourceMatch && sourceMatch[1]) {
- return sourceMatch[1].replace(/\?$/, '');
- }
- // Unknown filename type, use it as is
- return filename;
- }
- module.exports = formatFilename;
|