mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-12 04:18:54 +00:00
66 lines
1.5 KiB
TypeScript
66 lines
1.5 KiB
TypeScript
import { DynamicModule, Type } from '@nestjs/common';
|
|
import { ScheduleModule } from '@nestjs/schedule';
|
|
|
|
import { SERVER_FLAVOR } from '../config';
|
|
import { GqlModule } from '../graphql.module';
|
|
import { ServerConfigModule } from './config';
|
|
import { DocModule } from './doc';
|
|
import { PaymentModule } from './payment';
|
|
import { QuotaModule } from './quota';
|
|
import { SelfHostedModule } from './self-hosted';
|
|
import { StorageModule } from './storage';
|
|
import { SyncModule } from './sync';
|
|
import { UsersModule } from './users';
|
|
import { WorkspaceModule } from './workspaces';
|
|
|
|
const BusinessModules: (Type | DynamicModule)[] = [];
|
|
|
|
switch (SERVER_FLAVOR) {
|
|
case 'sync':
|
|
BusinessModules.push(SyncModule, DocModule);
|
|
break;
|
|
case 'selfhosted':
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
SelfHostedModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
SyncModule,
|
|
DocModule,
|
|
StorageModule
|
|
);
|
|
break;
|
|
case 'graphql':
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
DocModule,
|
|
PaymentModule,
|
|
QuotaModule,
|
|
StorageModule
|
|
);
|
|
break;
|
|
case 'allinone':
|
|
default:
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
QuotaModule,
|
|
SyncModule,
|
|
DocModule,
|
|
PaymentModule,
|
|
StorageModule
|
|
);
|
|
break;
|
|
}
|
|
|
|
export { BusinessModules, SERVER_FLAVOR };
|