mirror of
https://github.com/benjamin-wilson/public-pool.git
synced 2026-09-29 09:05:06 -07:00
70 lines
2.3 KiB
TypeScript
70 lines
2.3 KiB
TypeScript
import { CacheModule } from '@nestjs/cache-manager';
|
|
import { Module } from '@nestjs/common';
|
|
import { ConfigModule } from '@nestjs/config';
|
|
import { ScheduleModule } from '@nestjs/schedule';
|
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
|
|
|
import { AppController } from './app.controller';
|
|
import { AddressController } from './controllers/address/address.controller';
|
|
import { ClientController } from './controllers/client/client.controller';
|
|
import { BitcoinAddressValidator } from './models/validators/bitcoin-address.validator';
|
|
import { AddressSettingsModule } from './ORM/address-settings/address-settings.module';
|
|
import { BlocksModule } from './ORM/blocks/blocks.module';
|
|
import { ClientStatisticsModule } from './ORM/client-statistics/client-statistics.module';
|
|
import { ClientModule } from './ORM/client/client.module';
|
|
import { TelegramSubscriptionsModule } from './ORM/telegram-subscriptions/telegram-subscriptions.module';
|
|
import { BitcoinRpcService } from './services/bitcoin-rpc.service';
|
|
import { CleanupService } from './services/cleanup.service';
|
|
import { DiscordService } from './services/discord.service';
|
|
import { NotificationService } from './services/notification.service';
|
|
import { StratumV1JobsService } from './services/stratum-v1-jobs.service';
|
|
import { StratumV1Service } from './services/stratum-v1.service';
|
|
import { TelegramService } from './services/telegram.service';
|
|
|
|
const ORMModules = [
|
|
ClientStatisticsModule,
|
|
ClientModule,
|
|
AddressSettingsModule,
|
|
TelegramSubscriptionsModule,
|
|
BlocksModule
|
|
]
|
|
|
|
@Module({
|
|
imports: [
|
|
ConfigModule.forRoot(),
|
|
TypeOrmModule.forRoot({
|
|
type: 'sqlite',
|
|
database: './DB/public-pool.sqlite',
|
|
synchronize: true,
|
|
autoLoadEntities: true,
|
|
cache: true,
|
|
logging: false,
|
|
enableWAL: true
|
|
}),
|
|
CacheModule.register(),
|
|
ScheduleModule.forRoot(),
|
|
|
|
...ORMModules
|
|
],
|
|
controllers: [
|
|
AppController,
|
|
ClientController,
|
|
AddressController
|
|
],
|
|
providers: [
|
|
DiscordService,
|
|
CleanupService,
|
|
StratumV1Service,
|
|
TelegramService,
|
|
BitcoinRpcService,
|
|
NotificationService,
|
|
BitcoinAddressValidator,
|
|
StratumV1JobsService
|
|
],
|
|
})
|
|
export class AppModule {
|
|
constructor() {
|
|
|
|
}
|
|
}
|