Files
plates-server/src/push-notifications/push-notifications.module.ts
richarjiang 5b89a07751 stash
2025-12-01 18:12:09 +08:00

56 lines
1.9 KiB
TypeScript

import { Module, forwardRef } from '@nestjs/common';
import { SequelizeModule } from '@nestjs/sequelize';
import { PushNotificationsController } from './push-notifications.controller';
import { PushTemplateController } from './push-template.controller';
import { PushNotificationsService } from './push-notifications.service';
import { ApnsProvider } from './apns.provider';
import { PushTokenService } from './push-token.service';
import { PushTemplateService } from './push-template.service';
import { PushMessageService } from './push-message.service';
import { ChallengeReminderService } from './challenge-reminder.service';
import { UserPushToken } from './models/user-push-token.model';
import { PushMessage } from './models/push-message.model';
import { PushTemplate } from './models/push-template.model';
import { PushReminderHistory } from './models/push-reminder-history.model';
import { ConfigModule } from '@nestjs/config';
import { DatabaseModule } from '../database/database.module';
import { UsersModule } from '../users/users.module';
import { ChallengesModule } from '../challenges/challenges.module';
import { ChallengeParticipant } from '../challenges/models/challenge-participant.model';
@Module({
imports: [
ConfigModule,
DatabaseModule,
forwardRef(() => UsersModule),
forwardRef(() => ChallengesModule),
SequelizeModule.forFeature([
UserPushToken,
PushMessage,
PushTemplate,
PushReminderHistory,
ChallengeParticipant,
]),
],
controllers: [
PushNotificationsController,
PushTemplateController,
],
providers: [
ApnsProvider,
PushNotificationsService,
PushTokenService,
PushTemplateService,
PushMessageService,
ChallengeReminderService,
],
exports: [
ApnsProvider,
PushNotificationsService,
PushTokenService,
PushTemplateService,
PushMessageService,
ChallengeReminderService,
],
})
export class PushNotificationsModule { }