返回 AiToEarn
youtube.module.ts
根目录 / project / aitoearn-electron / server / src / modules / plat / youtube / youtube.module.ts
1 /*
2 * @Author: nevin
3 * @Date: 2025-03-01 19:27:26
4 * @LastEditTime: 2025-04-27 17:36:19
5 * @LastEditors: nevin
6 * @Description: bilibili Bilibili B站模块
7 */
8 import { Module, forwardRef } from '@nestjs/common';
9 import { MongooseModule } from '@nestjs/mongoose';
10 import { YoutubeController } from './youtube.controller';
11 import { YoutubeService } from './youtube.service';
12 import { GoogleService } from '../google/google.service';
13 import { UserModule } from 'src/user/user.module';
14 import { RedisModule } from 'src/lib/redis/redis.module';
15 import { AuthModule } from 'src/auth/auth.module';
16 import { YouTubeAuthService } from './youtube.auth.service';
17 import { User, UserSchema } from 'src/db/schema/user.schema';
18 import { Account, AccountSchema } from 'src/db/schema/account.schema';
19 import { AccountToken, AccountTokenSchema } from 'src/db/schema/accountToken.schema';
20 import { PubRecord, PubRecordSchema } from 'src/db/schema/pubRecord.schema';
21 import { GoogleModule } from '../google/google.module';
22 import googleConfig from 'config/google.config';
23 import { ConfigModule } from '@nestjs/config';
24 import { AccountModule } from 'src/modules/account/account.module';
25
26 @Module({
27 imports: [
28 ConfigModule.forRoot({
29 load: [googleConfig],
30 }),
31
32 MongooseModule.forFeature([
33 { name: User.name, schema: UserSchema },
34 { name: Account.name, schema: AccountSchema },
35 { name: AccountToken.name, schema: AccountTokenSchema },
36 { name: PubRecord.name, schema: PubRecordSchema },
37 ]),
38 UserModule,
39 RedisModule,
40 AuthModule,
41 forwardRef(() => GoogleModule),
42 AccountModule,
43 ],
44 controllers: [YoutubeController],
45 providers: [YoutubeService,
46 YouTubeAuthService,
47 GoogleService],
48 exports: [YoutubeService, YouTubeAuthService],
49 })
50 export class YoutubeModule {}
51
51 lines TYPESCRIPT