aboutsummaryrefslogtreecommitdiff
path: root/src/client/Network.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/Network.ts')
-rw-r--r--src/client/Network.ts13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/client/Network.ts b/src/client/Network.ts
index 6982ecf19..bd0e6e61a 100644
--- a/src/client/Network.ts
+++ b/src/client/Network.ts
@@ -4,10 +4,23 @@ import { Upload } from "../server/SharedMediaTypes";
export namespace Networking {
+ const EnvVarCache = new Map<string, string>();
+
export async function FetchFromServer(relativeRoute: string) {
return (await fetch(relativeRoute)).text();
}
+ export async function FetchEnvironmentVariable(varNameLiteral: string) {
+ let resolved = EnvVarCache.get(varNameLiteral);
+ if (!resolved) {
+ resolved = await FetchFromServer(`/environment/${varNameLiteral}`);
+ if (resolved !== undefined) {
+ EnvVarCache.set(varNameLiteral, resolved);
+ }
+ }
+ return resolved;
+ }
+
export async function PostToServer(relativeRoute: string, body?: any) {
const options = {
uri: Utils.prepend(relativeRoute),