Files
nextjs-notion-starter-kit/lib/get-config-value.ts
2021-01-19 20:54:08 -05:00

38 lines
735 B
TypeScript

import siteConfig from '../site.config'
if (!siteConfig) {
throw new Error(`Config error: invalid site.config.js`)
}
export function getSiteConfig<T>(key: string, defaultValue?: T): T {
const value = siteConfig[key]
if (value !== undefined) {
return value
}
if (defaultValue !== undefined) {
return defaultValue
}
throw new Error(`Config error: missing required site config value "${key}"`)
}
export function getEnv(
key: string,
defaultValue?: string,
env = process.env
): string {
const value = env[key]
if (value !== undefined) {
return value
}
if (defaultValue !== undefined) {
return defaultValue
}
throw new Error(`Config error: missing required env variable "${key}"`)
}