poem_game_component
Version:
36 lines (32 loc) • 1.23 kB
text/typescript
import { GameRepository } from "./domain/interfaces/GameRepository";
import { RuleFactory } from "./application/RuleFactory";
import { GameFactory } from "./application/GameFactory";
import { GameService } from "./application/GameService";
import { GameController } from "./infrastructure/web/controllers/GameController";
import { createGameRoutes } from "./infrastructure/web/routes/gameRoutes";
import { Game } from "./domain/Game";
import { GameType } from "./domain/enums/GameType";
import { Player } from "./domain/entities/Player";
import { GameStatus } from "./domain/enums/GameStatus";
function createRoutes(gameRepository:GameRepository){
const ruleFactory = new RuleFactory();
const gameFactory = new GameFactory(gameRepository, ruleFactory);
const gameService = new GameService(gameFactory, gameRepository, ruleFactory);
// 控制器初始化
const gameController = new GameController(gameService);
// 路由配置
const routes= createGameRoutes(gameController);
return routes
}
export {
GameRepository,
GameService,
GameFactory,
RuleFactory,
GameController,
createRoutes,
Game,
GameType,
Player,
GameStatus
}