From e4c87916da83f8839fc9aed4d6e703012282cd68 Mon Sep 17 00:00:00 2001 From: wxiaoguang Date: Tue, 21 Jan 2025 18:51:53 +0800 Subject: [PATCH] fix pathname usage --- web_src/js/utils.test.ts | 3 +-- web_src/js/utils.ts | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/web_src/js/utils.test.ts b/web_src/js/utils.test.ts index 8a4d392a919c4..ccdbc2dbd798f 100644 --- a/web_src/js/utils.test.ts +++ b/web_src/js/utils.test.ts @@ -47,11 +47,10 @@ test('parseIssueHref', () => { test('parseRepoOwnerPathInfo', () => { expect(parseRepoOwnerPathInfo('/owner/repo/issues/new')).toEqual({ownerName: 'owner', repoName: 'repo'}); - expect(parseRepoOwnerPathInfo('/owner/repo/issues/new?query')).toEqual({ownerName: 'owner', repoName: 'repo'}); expect(parseRepoOwnerPathInfo('/owner/repo/releases')).toEqual({ownerName: 'owner', repoName: 'repo'}); expect(parseRepoOwnerPathInfo('/other')).toEqual({}); window.config.appSubUrl = '/sub'; - expect(parseRepoOwnerPathInfo('/sub/owner/repo/issues/new#hash')).toEqual({ownerName: 'owner', repoName: 'repo'}); + expect(parseRepoOwnerPathInfo('/sub/owner/repo/issues/new')).toEqual({ownerName: 'owner', repoName: 'repo'}); expect(parseRepoOwnerPathInfo('/sub/owner/repo/compare/feature/branch-1...fix/branch-2')).toEqual({ownerName: 'owner', repoName: 'repo'}); window.config.appSubUrl = ''; }); diff --git a/web_src/js/utils.ts b/web_src/js/utils.ts index 31bf7aadf25b8..86bdd3790e0d5 100644 --- a/web_src/js/utils.ts +++ b/web_src/js/utils.ts @@ -41,8 +41,7 @@ export function parseIssueHref(href: string): IssuePathInfo { export function parseRepoOwnerPathInfo(pathname: string): RepoOwnerPathInfo { const appSubUrl = window.config.appSubUrl; if (appSubUrl && pathname.startsWith(appSubUrl)) pathname = pathname.substring(appSubUrl.length); - const path = (pathname || '').replace(/[#?].*$/, ''); - const [_, ownerName, repoName] = /([^/]+)\/([^/]+)/.exec(path) || []; + const [_, ownerName, repoName] = /([^/]+)\/([^/]+)/.exec(pathname) || []; return {ownerName, repoName}; }