agentsqripts
Version:
Comprehensive static code analysis toolkit for identifying technical debt, security vulnerabilities, performance issues, and code quality problems
19 lines (16 loc) • 520 B
JavaScript
/**
* @file Normalize URL for comparison
* @description Single responsibility: Normalize URLs for consistent comparison
*/
function normalizeUrl(url) {
if (!url || typeof url !== 'string') {
return '';
}
return url
.toLowerCase()
.replace(/\/$/, '') // Remove trailing slash
.replace(/\?.*$/, '') // Remove query parameters
.replace(/\/:\w+/g, '/:param') // Replace :id with :param
.replace(/\/\$\{[^}]+\}/g, '/:param'); // Replace ${id} with :param
}
module.exports = normalizeUrl;