import 'package:yumi/modules/room_game/data/models/room_game_models.dart'; import 'package:yumi/modules/room_game/data/room_game_api.dart'; class RoomGameRepository { RoomGameRepository({RoomGameApi? api}) : _api = api ?? RoomGameApi(); final RoomGameApi _api; Future> fetchShortcutGames({ required String roomId, }) { return _api.fetchShortcutGames(roomId: roomId); } Future> fetchRoomGames({ required String roomId, String category = '', }) async { final response = await _api.fetchRoomGames(roomId: roomId, category: category); return response.items; } Future fetchRoomState({required String roomId}) { return _api.fetchRoomState(roomId: roomId); } Future launchBaishunGame({ required String roomId, required String gameId, int sceneMode = 0, required String clientOrigin, }) { return _api.launchBaishunGame( roomId: roomId, gameId: gameId, sceneMode: sceneMode, clientOrigin: clientOrigin, ); } Future closeBaishunGame({ required String roomId, required String gameSessionId, String reason = 'user_exit', }) { return _api.closeBaishunGame( roomId: roomId, gameSessionId: gameSessionId, reason: reason, ); } }