aboutsummaryrefslogtreecommitdiffstats
path: root/code/app/src/lib/configuration.ts
blob: 541be357e79087d4a38874580de9d65b0fe1bfc6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
export const BASE_DOMAIN = "dev.greatoffice.life";
export const DEV_BASE_DOMAIN = "http://localhost";
export const API_ADDRESS = "https://api." + BASE_DOMAIN;
export const DEV_API_ADDRESS = "http://localhost:5000";
export const SECONDS_BETWEEN_SESSION_CHECK = 600;

export function api_base(path: string = ""): string {
    return (is_development() ? DEV_API_ADDRESS : API_ADDRESS) + (path !== "" ? "/" + path : "");
}

export function is_development(): boolean {
    return import.meta.env.DEV;
}

export function is_testing(): boolean {
    return import.meta.env.VITE_TESTING;
}

export function is_debug(): boolean {
    return localStorage.getItem(StorageKeys.debug) !== "true";
}

export const CookieNames = {
    theme: "go_theme",
    locale: "go_locale",
    session: "go_session"
};

export function get_test_context(): TestContext {
    return {
        user: {
            username: import.meta.env.VITE_TEST_USERNAME,
            password: import.meta.env.VITE_TEST_PASSWORD
        }
    }
}

export interface TestContext {
    user: {
        username: string,
        password: string
    }
}

export const QueryKeys = {
    labels: "labels",
    categories: "categories",
    entries: "entries",
};

export const StorageKeys = {
    session: "sessionData",
    theme: "theme",
    debug: "debug",
    categories: "categories",
    labels: "labels",
    entries: "entries",
    stopwatch: "stopwatchState",
    logLevel: "logLevel"
};