import { Container } from "inversify"; import { TYPES } from "./core/types"; // Services import { DatabaseService } from "./services/DatabaseService"; import { Cloud115Service } from "./services/Cloud115Service"; import { QuarkService } from "./services/QuarkService"; import { Searcher } from "./services/Searcher"; import { DoubanService } from "./services/DoubanService"; import { UserService } from "./services/UserService"; import { ImageService } from "./services/ImageService"; import { SettingService } from "./services/SettingService"; import { SponsorsService } from "./services/SponsorsService"; // Controllers import { Cloud115Controller } from "./controllers/cloud115"; import { QuarkController } from "./controllers/quark"; import { ResourceController } from "./controllers/resource"; import { DoubanController } from "./controllers/douban"; import { ImageController } from "./controllers/teleImages"; import { SettingController } from "./controllers/setting"; import { UserController } from "./controllers/user"; import { SponsorsController } from "./controllers/sponsors"; const container = new Container(); // Services container.bind(TYPES.DatabaseService).to(DatabaseService).inSingletonScope(); container.bind(TYPES.Cloud115Service).to(Cloud115Service).inSingletonScope(); container.bind(TYPES.QuarkService).to(QuarkService).inSingletonScope(); container.bind(TYPES.Searcher).to(Searcher).inSingletonScope(); container.bind(TYPES.ImageService).to(ImageService).inSingletonScope(); container.bind(TYPES.SettingService).to(SettingService).inSingletonScope(); container.bind(TYPES.DoubanService).to(DoubanService).inSingletonScope(); container.bind(TYPES.UserService).to(UserService).inSingletonScope(); container.bind(TYPES.SponsorsService).to(SponsorsService).inSingletonScope(); // Controllers container.bind(TYPES.Cloud115Controller).to(Cloud115Controller); container.bind(TYPES.QuarkController).to(QuarkController); container.bind(TYPES.ResourceController).to(ResourceController); container.bind(TYPES.DoubanController).to(DoubanController); container.bind(TYPES.ImageController).to(ImageController); container.bind(TYPES.SettingController).to(SettingController); container.bind(TYPES.UserController).to(UserController); container.bind(TYPES.SponsorsController).to(SponsorsController); export { container };