1let desktopBearerTokenPromise: Promise<string> | null = null;
2
3export function readDesktopPrimaryBearerToken(): Promise<string | null> {
4 if (typeof window === "undefined") {
5 return Promise.resolve(null);
6 }
7 const bridge = window.desktopBridge;
8 if (!bridge) {
9 return Promise.resolve(null);
10 }
11
12 desktopBearerTokenPromise ??= bridge.getLocalEnvironmentBearerToken().catch((error) => {
13 desktopBearerTokenPromise = null;
14 throw error;
15 });
16 return desktopBearerTokenPromise;
17}
18
19export function __resetDesktopPrimaryAuthForTests(): void {
20 desktopBearerTokenPromise = null;
21}