platformservice/ts/paths.ts

29 lines
1.2 KiB
TypeScript
Raw Normal View History

2024-02-16 13:28:40 +01:00
import * as plugins from './plugins.js';
2024-02-15 20:30:38 +01:00
// Base directories
export const baseDir = process.cwd();
2024-02-15 20:30:38 +01:00
export const packageDir = plugins.path.join(
plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url),
'../'
);
export const dataDir = plugins.path.join(baseDir, 'data');
// MTA directories
export const keysDir = plugins.path.join(dataDir, 'keys');
export const dnsRecordsDir = plugins.path.join(dataDir, 'dns');
export const sentEmailsDir = plugins.path.join(dataDir, 'emails', 'sent');
export const receivedEmailsDir = plugins.path.join(dataDir, 'emails', 'received');
export const failedEmailsDir = plugins.path.join(dataDir, 'emails', 'failed'); // For failed emails
export const logsDir = plugins.path.join(dataDir, 'logs'); // For logs
// Create directories if they don't exist
export function ensureDirectories() {
// Ensure data directories
plugins.smartfile.fs.ensureDirSync(dataDir);
plugins.smartfile.fs.ensureDirSync(keysDir);
plugins.smartfile.fs.ensureDirSync(dnsRecordsDir);
plugins.smartfile.fs.ensureDirSync(sentEmailsDir);
plugins.smartfile.fs.ensureDirSync(receivedEmailsDir);
plugins.smartfile.fs.ensureDirSync(failedEmailsDir);
plugins.smartfile.fs.ensureDirSync(logsDir);
}