2024-11-15 22:55:53 +01:00
|
|
|
import assert from "node:assert"
|
|
|
|
import dotenv from "dotenv"
|
|
|
|
|
|
|
|
dotenv.config()
|
|
|
|
|
|
|
|
export const ACTUAL_BUDGET_ID = getOrThrow("ACTUAL_BUDGET_ID")
|
|
|
|
export const ACTUAL_SYNC_ID = getOrThrow("ACTUAL_SYNC_ID")
|
|
|
|
export const ACTUAL_SERVER_URL = getOrThrow("ACTUAL_SERVER_URL")
|
|
|
|
export const ACTUAL_PASSWORD = getOrThrow("ACTUAL_PASSWORD")
|
2024-12-01 19:35:45 +01:00
|
|
|
export const ACTUAL_ACCOUNT_IDS = getArrayOrThrow("ACTUAL_ACCOUNT_IDS")
|
2024-12-01 20:48:42 +01:00
|
|
|
export const ACTUAL_DATA_DIR = ".cache"
|
2024-11-15 22:55:53 +01:00
|
|
|
|
2024-12-01 20:48:42 +01:00
|
|
|
export const BANK_OAUTH_CLIENT_ID = getOrThrow("BANK_OAUTH_CLIENT_ID")
|
|
|
|
export const BANK_OAUTH_CLIENT_SECRET = getOrThrow("BANK_OAUTH_CLIENT_SECRET")
|
|
|
|
export const BANK_OAUTH_REDIRECT_URI = getOrThrow("BANK_OAUTH_REDIRECT_URI")
|
|
|
|
export const BANK_OAUTH_STATE = getOrThrow("BANK_OAUTH_STATE")
|
2024-12-01 19:35:45 +01:00
|
|
|
export const BANK_ACCOUNT_IDS = getArrayOrThrow("BANK_ACCOUNT_IDS")
|
2024-11-15 22:55:53 +01:00
|
|
|
|
|
|
|
function getOrThrow(key: string): string {
|
|
|
|
const value = process.env[key]
|
|
|
|
assert(value, `Missing environment variable: ${key}`)
|
|
|
|
return value
|
|
|
|
}
|
2024-12-01 19:35:45 +01:00
|
|
|
|
|
|
|
function getArrayOrThrow(key: string): ReadonlyArray<string> {
|
|
|
|
return getOrThrow(key).split(",")
|
|
|
|
}
|