Files
blitzkit/packages/website-ue/src/core/api/dynamic.ts
T

24 lines
599 B
TypeScript
Raw Normal View History

2025-12-26 11:33:04 -06:00
import { assertSecret } from "@blitzkit/core";
2025-11-28 13:51:17 -06:00
import type { AbstractAPI } from "./abstract";
2025-11-28 13:19:15 -06:00
let dynamicAPI: AbstractAPI;
if (typeof window === "undefined") {
2025-11-28 13:51:17 -06:00
const { ProxyClient } = await import("@blitzkit/closed");
const { ServerAPI } = await import("./server");
const proxyClient = await new ProxyClient(
2025-12-26 11:33:04 -06:00
assertSecret(import.meta.env.WOTB_SERVER)
2025-11-28 13:51:17 -06:00
).handshake();
const metadata = await proxyClient.metadata();
dynamicAPI = new ServerAPI(metadata);
2025-11-28 13:19:15 -06:00
} else {
2025-11-28 13:51:17 -06:00
const { ClientAPI } = await import("./client");
2025-11-28 13:19:15 -06:00
dynamicAPI = new ClientAPI();
}
export const api = dynamicAPI;
2026-01-11 13:40:01 -06:00