import { HttpModule } from "@nestjs/axios"; import { Module } from "@nestjs/common"; import { ConfigModule, ConfigService } from "@nestjs/config"; import { MongooseModule } from "@nestjs/mongoose"; import { createHttpModuleOptions } from "src/core/config/http-proxy.factory"; import { SmsSendLogService } from "../entities/db-service/sms-send-log.service"; import { SmsSendLog, SmsSendLogSchema, } from "../entities/schema/sms-send-log.schema"; import { KavenegarService } from "./kavenegar.service"; import { KavenegarSmsGateway } from "./kavenegar-sms.gateway"; import { ParsianSmsGateway } from "./parsian-sms.gateway"; import { SmsGatewayService } from "./sms-gateway.service"; @Module({ imports: [ HttpModule.registerAsync({ imports: [ConfigModule], inject: [ConfigService], useFactory: createHttpModuleOptions, }), ConfigModule, MongooseModule.forFeature([ { name: SmsSendLog.name, schema: SmsSendLogSchema }, ]), ], providers: [ KavenegarService, KavenegarSmsGateway, ParsianSmsGateway, SmsSendLogService, SmsGatewayService, ], exports: [SmsGatewayService, SmsSendLogService], }) export class SmsGatewayModule {}