ncc-prototype-email-alerts-sub
Version:
Northumberland Council Front End Email Alerts Subscription Prototype
46 lines (38 loc) • 1.13 kB
text/typescript
import dotenv from 'dotenv';
dotenv.config();
const config =
{
port: process.env.PORT
|| "3000",
redisHostUrl: process.env.REDIS_HOSTNAME
|| "localhost",
env: process.env.NODE_ENV
|| "prod",
scaffoldPages: ['basic', 'cya', 'question'],
postCodeCheckUrl: process.env.POSTCODE_CHECK_URL || "https://webapi.northumberland.gov.uk/api/NCCADDRESS/POSTCODE/",
webapi_username: process.env.WEBAPI_U,
webapi_password: process.env.WEBAPI_P,
redisPassword: process.env.REDIS_PASSWORD
}
export function getConfig(): AppConfig {
for (const prop in config) {
if (Object.prototype.hasOwnProperty.call(config, prop)) {
if (prop === null || prop === undefined)
{
throw(`property ${prop} not found`);
}
}
}
return config as AppConfig;
}
export interface AppConfig {
port: string;
redisHostUrl: string;
env: string;
scaffoldPages: string[];
postCodeCheckUrl: string;
webapi_username: string;
webapi_password: string;
redisPassword: string;
}
export default getConfig;