feat(integration): components now play nicer with each other
This commit is contained in:
@ -9,6 +9,8 @@ import type { IEmailRoute } from './mail/routing/interfaces.js';
|
||||
import { logger } from './logger.js';
|
||||
// Import the email configuration helpers directly from mail/delivery
|
||||
import { configureEmailStorage, configureEmailServer } from './mail/delivery/index.js';
|
||||
// Import storage manager
|
||||
import { StorageManager, type IStorageConfig } from './storage/index.js';
|
||||
|
||||
export interface IDcRouterOptions {
|
||||
/**
|
||||
@ -63,6 +65,9 @@ export interface IDcRouterOptions {
|
||||
cloudflareApiKey?: string;
|
||||
/** Other DNS providers can be added here */
|
||||
};
|
||||
|
||||
/** Storage configuration */
|
||||
storage?: IStorageConfig;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -86,6 +91,7 @@ export class DcRouter {
|
||||
public smartProxy?: plugins.smartproxy.SmartProxy;
|
||||
public dnsServer?: plugins.smartdns.dnsServerMod.DnsServer;
|
||||
public emailServer?: UnifiedEmailServer;
|
||||
public storageManager: StorageManager;
|
||||
|
||||
|
||||
// Environment access
|
||||
@ -97,6 +103,8 @@ export class DcRouter {
|
||||
...optionsArg
|
||||
};
|
||||
|
||||
// Initialize storage manager
|
||||
this.storageManager = new StorageManager(this.options.storage);
|
||||
}
|
||||
|
||||
public async start() {
|
||||
|
Reference in New Issue
Block a user