@churchapps/apihelper
Version:
Library of helper functions not specific to any one ChurchApps project or framework.
36 lines (31 loc) • 1.56 kB
text/typescript
import { AwsHelper } from "./AwsHelper";
export class EnvironmentBase {
static appEnv: string;
static appName: string;
static s3Bucket: string;
static connectionString: string;
static contentRoot: string;
static encryptionKey: string;
static fileStore: string;
static jwtSecret: string;
static mailSystem: string;
static smtpHost: string;
static smtpPass: string;
static smtpSecure: boolean;
static smtpUser: string;
static async populateBase(jsonData: Record<string, unknown>, appName:string, appEnv: string) {
EnvironmentBase.appName = jsonData.appName as string;
EnvironmentBase.appEnv = jsonData.appEnv as string;
EnvironmentBase.connectionString = process.env.CONNECTION_STRING || await AwsHelper.readParameter(`/${appEnv}/${appName}/connectionString`);
EnvironmentBase.contentRoot = jsonData.contentRoot as string;
EnvironmentBase.encryptionKey = process.env.ENCRYPTION_KEY || await AwsHelper.readParameter(`/${appEnv}/encryptionKey`);
EnvironmentBase.fileStore = jsonData.fileStore as string;
EnvironmentBase.jwtSecret = process.env.JWT_SECRET || await AwsHelper.readParameter(`/${appEnv}/jwtSecret`);
EnvironmentBase.mailSystem = jsonData.mailSystem as string;
EnvironmentBase.s3Bucket = jsonData.s3Bucket as string;
EnvironmentBase.smtpHost = process.env.SMTP_HOST;
EnvironmentBase.smtpPass = process.env.SMTP_PASS;
EnvironmentBase.smtpSecure = process.env.SMTP_SECURE === "true";
EnvironmentBase.smtpUser = process.env.SMTP_USER;
}
}