f458322303
- Refactor calendar modules and some messaging modules to better organize them by business rules and decouple them - Work toward a common architecture for the different calendar providers by introducing interfaces for the drivers - Modify cron job to use the new sync statuses and stages
55 lines
2.8 KiB
TypeScript
55 lines
2.8 KiB
TypeScript
import { HttpModule } from '@nestjs/axios';
|
|
import { Module } from '@nestjs/common';
|
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
|
|
|
import { AnalyticsModule } from 'src/engine/core-modules/analytics/analytics.module';
|
|
import { FeatureFlagEntity } from 'src/engine/core-modules/feature-flag/feature-flag.entity';
|
|
import { ObjectMetadataRepositoryModule } from 'src/engine/object-metadata-repository/object-metadata-repository.module';
|
|
import { WorkspaceDataSourceModule } from 'src/engine/workspace-datasource/workspace-datasource.module';
|
|
import { AddPersonIdAndWorkspaceMemberIdService } from 'src/modules/calendar-messaging-participant-manager/services/add-person-id-and-workspace-member-id/add-person-id-and-workspace-member-id.service';
|
|
import { MessagingChannelSyncStatusService } from 'src/modules/messaging/common/services/messaging-channel-sync-status.service';
|
|
import { MessagingErrorHandlingService } from 'src/modules/messaging/common/services/messaging-error-handling.service';
|
|
import { MessagingFetchByBatchesService } from 'src/modules/messaging/common/services/messaging-fetch-by-batch.service';
|
|
import { MessagingMessageThreadService } from 'src/modules/messaging/common/services/messaging-message-thread.service';
|
|
import { MessagingMessageService } from 'src/modules/messaging/common/services/messaging-message.service';
|
|
import { MessagingTelemetryService } from 'src/modules/messaging/common/services/messaging-telemetry.service';
|
|
import { MessageParticipantWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-participant.workspace-entity';
|
|
import { MessageThreadWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message-thread.workspace-entity';
|
|
import { MessageWorkspaceEntity } from 'src/modules/messaging/common/standard-objects/message.workspace-entity';
|
|
import { PersonWorkspaceEntity } from 'src/modules/person/standard-objects/person.workspace-entity';
|
|
|
|
@Module({
|
|
imports: [
|
|
HttpModule.register({
|
|
baseURL: 'https://www.googleapis.com/batch/gmail/v1',
|
|
}),
|
|
AnalyticsModule,
|
|
WorkspaceDataSourceModule,
|
|
ObjectMetadataRepositoryModule.forFeature([
|
|
PersonWorkspaceEntity,
|
|
MessageParticipantWorkspaceEntity,
|
|
MessageWorkspaceEntity,
|
|
MessageThreadWorkspaceEntity,
|
|
]),
|
|
TypeOrmModule.forFeature([FeatureFlagEntity], 'core'),
|
|
],
|
|
providers: [
|
|
MessagingMessageService,
|
|
MessagingMessageThreadService,
|
|
MessagingErrorHandlingService,
|
|
MessagingTelemetryService,
|
|
MessagingChannelSyncStatusService,
|
|
MessagingFetchByBatchesService,
|
|
AddPersonIdAndWorkspaceMemberIdService,
|
|
],
|
|
exports: [
|
|
MessagingMessageService,
|
|
MessagingMessageThreadService,
|
|
MessagingErrorHandlingService,
|
|
MessagingTelemetryService,
|
|
MessagingChannelSyncStatusService,
|
|
MessagingFetchByBatchesService,
|
|
],
|
|
})
|
|
export class MessagingCommonModule {}
|