mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-12 07:36:42 +08:00
58 lines
1.4 KiB
TypeScript
58 lines
1.4 KiB
TypeScript
import { DynamicModule, Type } from '@nestjs/common';
|
|
import { ScheduleModule } from '@nestjs/schedule';
|
|
|
|
import { GqlModule } from '../graphql.module';
|
|
import { SERVER_FLAVOR, ServerConfigModule } from './config';
|
|
import { DocModule } from './doc';
|
|
import { PaymentModule } from './payment';
|
|
import { SelfHostedModule } from './self-hosted';
|
|
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.forSync());
|
|
break;
|
|
case 'selfhosted':
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
SelfHostedModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
SyncModule,
|
|
DocModule.forRoot()
|
|
);
|
|
break;
|
|
case 'graphql':
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
DocModule.forRoot(),
|
|
PaymentModule
|
|
);
|
|
break;
|
|
case 'allinone':
|
|
default:
|
|
BusinessModules.push(
|
|
ServerConfigModule,
|
|
ScheduleModule.forRoot(),
|
|
GqlModule,
|
|
WorkspaceModule,
|
|
UsersModule,
|
|
SyncModule,
|
|
DocModule.forRoot(),
|
|
PaymentModule
|
|
);
|
|
break;
|
|
}
|
|
|
|
export { BusinessModules, SERVER_FLAVOR };
|