From 0f192fa5bf0437abfe4fa01f852f555901f7400e Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Tue, 8 Sep 2026 20:13:52 +0000 Subject: [PATCH] Fix Drive OAuth client path to live server endpoint Update startDriveOAuth to POST /api/v1/me/drive/oauth/start and open the returned url. Remove the stub fallback and warning toast so Connect Drive opens the real OAuth redirect. Co-authored-by: Sander Vonk --- src/common/workspace.ts | 16 +++++++--------- src/components/Portal/TaskWorkspace.vue | 9 ++------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/src/common/workspace.ts b/src/common/workspace.ts index 5d40a8e3..eb6ff783 100644 --- a/src/common/workspace.ts +++ b/src/common/workspace.ts @@ -362,14 +362,12 @@ export async function deleteWorkspaceFile(workspaceId: string, fileId: string): /** Start Google Drive OAuth — returns redirect URL. */ export async function startDriveOAuth(): Promise { - try { - const payload = await apiFetch<{ url?: string }>("/api/v1/oauth/drive/start", { method: "POST" }); - if (payload?.url) return payload.url; - } catch (err) { - if (isMissingEndpoint(err)) { - return "#drive-oauth-stub"; - } - throw err; + const payload = await apiFetch<{ url?: string; state?: string }>("/api/v1/me/drive/oauth/start", { + method: "POST", + }); + const url = payload?.url?.trim(); + if (!url) { + throw new Error("Drive OAuth start did not return a URL"); } - return "#drive-oauth-stub"; + return url; } diff --git a/src/components/Portal/TaskWorkspace.vue b/src/components/Portal/TaskWorkspace.vue index b2de4b68..465efc87 100644 --- a/src/components/Portal/TaskWorkspace.vue +++ b/src/components/Portal/TaskWorkspace.vue @@ -160,7 +160,7 @@ * @module TaskWorkspace */ -import { ErrorToast, SuccessToast, WarningToast } from "@svonk/util"; +import { ErrorToast, SuccessToast } from "@svonk/util"; import OverlayWrapper from "@/components/Modal/OverlayWrapper.vue"; import Modal from "@/components/Modal/Modal.vue"; import { @@ -352,12 +352,7 @@ export default { async connectDrive() { try { const url = await startDriveOAuth(); - if (url && url !== "#drive-oauth-stub") { - window.open(url, "_blank", "noopener"); - } else { - new WarningToast("Drive connect will be available when the server route is live", 2500); - this.driveConnected = true; - } + window.open(url, "_blank", "noopener"); } catch (err) { new ErrorToast("Couldn't start Drive connect", err, 2000); }