diff --git a/apps/client/src/features/acadenice/database-view/services/bridge-client.ts b/apps/client/src/features/acadenice/database-view/services/bridge-client.ts index 3d2d4fc5..d04bca74 100644 --- a/apps/client/src/features/acadenice/database-view/services/bridge-client.ts +++ b/apps/client/src/features/acadenice/database-view/services/bridge-client.ts @@ -57,10 +57,15 @@ export function createBridgeClient(bridgeUrl: string): AxiosInstance { }); instance.interceptors.request.use((config) => { - // Priority: cookie token (prod) > VITE_BRIDGE_TOKEN env (dev fallback) + // Priority: cookie token (prod) > VITE_BRIDGE_TOKEN env (dev fallback). + // Vite's define block in vite.config.ts injects VITE_BRIDGE_TOKEN into + // process.env at build/dev time (not into import.meta.env, since the .env + // is loaded from the monorepo root, not from apps/client/). const cookieToken = readTokenFromCookie(); - const metaEnv = (import.meta as unknown as { env?: { VITE_BRIDGE_TOKEN?: string } }).env; - const envToken = metaEnv?.VITE_BRIDGE_TOKEN; + const envToken = + typeof process !== "undefined" + ? (process.env as unknown as { VITE_BRIDGE_TOKEN?: string })?.VITE_BRIDGE_TOKEN + : undefined; const token = cookieToken || envToken; if (token) { config.headers["Authorization"] = `Bearer ${token}`;