chorus/src/config.ts

30 lines
856 B
TypeScript
Raw Normal View History

import { mkdir } from "node:fs/promises";
2024-12-24 14:43:23 +00:00
import {castCommentsConfig, type CommentsConfig} from "./types.ts";
const maybeConfig: any = {
mail: {
imap: {
host: process.env.CHORUS_IMAP_HOST,
port: process.env.CHORUS_IMAP_PORT || 993,
auth: {
user: process.env.CHORUS_IMAP_USER,
pass: process.env.CHORUS_IMAP_PASS,
},
},
threads: {
type: 'alias',
template: process.env.CHORUS_THREAD_TEMPLATE,
idPrefix: 'c.',
2024-12-24 14:43:23 +00:00
},
},
dirs: {
data: process.env.CHORUS_DATA_DIR || 'chorus-data',
},
2024-12-24 14:43:23 +00:00
}
export const config: CommentsConfig = castCommentsConfig(maybeConfig)
export async function ensureDirectoriesExist(): Promise<void> {
await mkdir(`${config.dirs.data}/threads`, { recursive: true })
}