Fixed URL formatting logic

This commit is contained in:
samkul-swe 2025-10-12 20:19:59 -07:00
parent de0c33e7ff
commit bf0f4e3e68

View file

@ -8,6 +8,9 @@ const ENDPOINTS_CONFIG = {
'api/v1/searchspaces': true 'api/v1/searchspaces': true
}; };
function isDetailEndpoint(url: string): boolean {
return /\/\d+$/.test(url) || /\/[a-f0-9-]{8,}$/.test(url);
}
function formatUrlPath(url: string): string { function formatUrlPath(url: string): string {
let basePath = url; let basePath = url;
@ -18,6 +21,13 @@ function formatUrlPath(url: string): string {
queryParams = `?${queryParams}`; queryParams = `?${queryParams}`;
} }
if (isDetailEndpoint(basePath)) {
if (basePath.endsWith('/')) {
basePath = basePath.slice(0, -1);
}
return basePath + queryParams;
}
let needsTrailingSlash = true; let needsTrailingSlash = true;
for (const [endpoint, shouldHaveSlash] of Object.entries(ENDPOINTS_CONFIG)) { for (const [endpoint, shouldHaveSlash] of Object.entries(ENDPOINTS_CONFIG)) {