23 行
703 B
TypeScript
23 行
703 B
TypeScript
export { COOKIE_NAME, ONE_YEAR_MS } from "@shared/const";
|
|
|
|
// Generate login URL at runtime so redirect URI reflects the current origin.
|
|
export const getLoginUrl = () => {
|
|
const oauthPortalUrl = import.meta.env.VITE_OAUTH_PORTAL_URL?.trim();
|
|
const appId = import.meta.env.VITE_APP_ID;
|
|
|
|
if (!oauthPortalUrl) {
|
|
return "/login";
|
|
}
|
|
|
|
const redirectUri = `${window.location.origin}/api/oauth/callback`;
|
|
const state = btoa(redirectUri);
|
|
|
|
const url = new URL(`${oauthPortalUrl}/app-auth`);
|
|
url.searchParams.set("appId", appId);
|
|
url.searchParams.set("redirectUri", redirectUri);
|
|
url.searchParams.set("state", state);
|
|
url.searchParams.set("type", "signIn");
|
|
|
|
return url.toString();
|
|
};
|