/** * @file Сервис для источника данных * @version 2022.01.26 * @author Verevkin S.A. * @copyright Verevkin S.A. */ import tool from '../tool'; import { Game } from '../../model/Game'; import { IGameDto } from '../../model/GameDto'; import { Mapper } from '../mapper'; const service = { // region Публичные функции async getGame(): Promise { const resultPromise = tool.get('/game', {}); return resultPromise.then((response: IGameDto | undefined): (Game | undefined) => { if (!response) return; return Mapper.fromGame(response); }); }, async gameTurn(gameGuid: string, witchGuid: string): Promise { const resultPromise = tool.get('/turn', { gameGuid, witchGuid }); return resultPromise.then((response: IGameDto | undefined): (Game | undefined) => { if (!response) return; return Mapper.fromGame(response); }); }, async getVersion(): Promise { return tool.get('/version', {}); } // endregion }; export default service;