diff --git a/packages/frontend-2/lib/auth/composables/auth.ts b/packages/frontend-2/lib/auth/composables/auth.ts index 32dedc0db..f22fa5074 100644 --- a/packages/frontend-2/lib/auth/composables/auth.ts +++ b/packages/frontend-2/lib/auth/composables/auth.ts @@ -241,6 +241,7 @@ export const useAuthManager = ( */ const authToken = useAuthCookie() + // NOTE: Refrain from using the name token as it overrides the authToken /** * Token used for embedding */ @@ -249,7 +250,7 @@ export const useAuthManager = ( /** * Token used for dashboard sharing */ - const dashboardToken = computed(() => route.query.token as Optional) + const dashboardToken = computed(() => route.query.dashboardToken as Optional) /** * Get the effective auth token @@ -529,7 +530,8 @@ export const useAuthManager = ( signInOrSignUpWithSso, logout, watchAuthQueryString, - inviteToken + inviteToken, + dashboardToken } } diff --git a/packages/frontend-2/pages/workspaces/[slug]/dashboards/[id].vue b/packages/frontend-2/pages/workspaces/[slug]/dashboards/[id].vue index 87f279fd7..73f4fe581 100644 --- a/packages/frontend-2/pages/workspaces/[slug]/dashboards/[id].vue +++ b/packages/frontend-2/pages/workspaces/[slug]/dashboards/[id].vue @@ -85,9 +85,8 @@ definePageMeta({ }) const { id } = useRoute().params -const { token: urlToken } = useRoute().query const { result } = useQuery(dashboardQuery, () => ({ id: id as string })) -const { effectiveAuthToken } = useAuthManager() +const { effectiveAuthToken, dashboardToken } = useAuthManager() const logger = useLogger() const { isDarkTheme } = useTheme() const { @@ -98,15 +97,12 @@ const editDialogOpen = ref(false) const workspace = computed(() => result.value?.dashboard?.workspace) const dashboard = computed(() => result.value?.dashboard) -const dashboardUrl = computed(() => { - return urlToken - ? `${dashboardsOrigin}/view/${id}?token=${urlToken}&isEmbed=true&theme=${ - isDarkTheme.value ? 'dark' : 'light' - }` - : `${dashboardsOrigin}/dashboards/${id}?token=${ - effectiveAuthToken.value - }&isEmbed=true&theme=${isDarkTheme.value ? 'dark' : 'light'}` -}) +const dashboardUrl = computed( + () => + `${dashboardsOrigin}/dashboards/${id}?token=${ + dashboardToken.value || effectiveAuthToken.value + }&isEmbed=true&theme=${isDarkTheme.value ? 'dark' : 'light'}` +) const toggleFullScreen = () => { if (!document.fullscreenElement) {