diff --git a/packages/nc-gui-v2/pages/[projectType]/[projectId]/index.vue b/packages/nc-gui-v2/pages/[projectType]/[projectId]/index.vue index 9b5f91a176..9a447e0639 100644 --- a/packages/nc-gui-v2/pages/[projectType]/[projectId]/index.vue +++ b/packages/nc-gui-v2/pages/[projectType]/[projectId]/index.vue @@ -15,6 +15,8 @@ import { TabType } from '~/composables' const route = useRoute() +const { appInfo } = useGlobal() + const { project, loadProject, loadTables, isSharedBase } = useProject() const { addTab, clearTabs } = useTabs() @@ -152,7 +154,7 @@ const isHovered = useElementHover(sidebar) v-if="isUIAllowed('apiDocs')" v-t="['e:api-docs']" class="nc-project-menu-item group" - @click.stop="openLink(`/api/v1/db/meta/projects/${route.params.projectId}/swagger`)" + @click.stop="openLink(`/api/v1/db/meta/projects/${route.params.projectId}/swagger`, appInfo.ncSiteUrl)" > Swagger: Rest APIs diff --git a/packages/nc-gui-v2/utils/urlUtils.ts b/packages/nc-gui-v2/utils/urlUtils.ts index ac9d7fc0f4..95c3aeb41a 100644 --- a/packages/nc-gui-v2/utils/urlUtils.ts +++ b/packages/nc-gui-v2/utils/urlUtils.ts @@ -24,6 +24,7 @@ export const isValidURL = (str: string) => { return !!pattern.test(str) } -export const openLink = (url: string, target = '_blank') => { - window.open(url, target) +export const openLink = (path: string, baseURL: string, target = '_blank') => { + const url = new URL(path, baseURL) + window.open(url.href, target) }