From 606064b1fb76a29f99feb55cf811386d2c02e247 Mon Sep 17 00:00:00 2001 From: FatttSnake Date: Mon, 20 May 2024 23:00:09 +0800 Subject: [PATCH] Fix(Navigation): Fix navigate bug --- src/renderer/src/util/navigation.ts | 44 ++++++++++++++--------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/src/renderer/src/util/navigation.ts b/src/renderer/src/util/navigation.ts index 8f2d5dc..79ce25b 100644 --- a/src/renderer/src/util/navigation.ts +++ b/src/renderer/src/util/navigation.ts @@ -42,16 +42,16 @@ export const navigateToView = ( local?: boolean, options?: NavigateOptions ) => { - const url = new URL( - `/view/${username}/${toolId}${version ? `/${version}` : ''}`, - window.location.href - ) + const searchParams = new URLSearchParams() if (platform !== import.meta.env.VITE_PLATFORM) { - url.searchParams.append('platform', platform) + searchParams.append('platform', platform) } - local && url.searchParams.append('source', 'local') + local && searchParams.append('source', 'local') - navigate(`${url.pathname}${url.search}`, options) + navigate( + `/view/${username}/${toolId}${version ? `/${version}` : ''}${searchParams.size ? `?${searchParams.toString()}` : ''}`, + options + ) } export const navigateToSource = ( @@ -62,14 +62,15 @@ export const navigateToSource = ( version?: string, options?: NavigateOptions ) => { - const url = new URL( - `/source/${username}/${toolId}${version ? `/${version}` : ''}`, - window.location.href - ) + const searchParams = new URLSearchParams() if (platform !== import.meta.env.VITE_PLATFORM) { - url.searchParams.append('platform', platform) + searchParams.append('platform', platform) } - navigate(`${url.pathname}${url.search}`, options) + + navigate( + `/source/${username}/${toolId}${version ? `/${version}` : ''}${searchParams.size ? `?${searchParams.toString()}` : ''}`, + options + ) } export const navigateToRedirect = ( @@ -119,12 +120,12 @@ export const navigateToEdit = ( platform: Platform, options?: NavigateOptions ) => { - const url = new URL(`/edit/${toolId}`, window.location.href) + const searchParams = new URLSearchParams() if (platform !== import.meta.env.VITE_PLATFORM) { - url.searchParams.append('platform', platform) + searchParams.append('platform', platform) } - navigate(`${url.pathname}${url.search}`, options) + navigate(`/edit/${toolId}${searchParams.size ? `?${searchParams.toString()}` : ''}`, options) } export const navigateToUser = (navigate: NavigateFunction, options?: NavigateOptions) => { @@ -142,16 +143,13 @@ export const getViewPath = ( version?: string, local?: boolean ) => { - const url = new URL( - `/view/${username}/${toolId}${version ? `/${version}` : ''}`, - window.location.href - ) + const searchParams = new URLSearchParams() if (platform !== import.meta.env.VITE_PLATFORM) { - url.searchParams.append('platform', platform) + searchParams.append('platform', platform) } - local && url.searchParams.append('source', 'local') + local && searchParams.append('source', 'local') - return `${url.pathname}${url.search}` + return `/view/${username}/${toolId}${version ? `/${version}` : ''}${searchParams.size ? `?${searchParams.toString()}` : ''}` } export const getAndroidUrl = (username: string, toolId: string) =>