UNPKG

trade360-nodejs-sdk

Version:
203 lines 9.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PreMatchSnapshotApiClientImplementation = void 0; const enums_1 = require("../../snapshot-api/enums"); const _httpClient_1 = require("../../base-http-client"); const responses_1 = require("../../common/snapshot/responses"); const requests_1 = require("../../common/snapshot/requests"); const { GET_EVENTS_PREFIX_URL, GET_FIXTURE_MARKETS_PREFIX_URL, GET_FIXTURES_PREFIX_URL, GET_SCORES_PREFIX_URL, GET_OUTRIGHT_EVENT_PREFIX_URL, GET_OUTRIGHT_FIXTURE_MARKETS_PREFIX_URL, GET_OUTRIGHT_FIXTURE_PREFIX_URL, GET_OUTRIGHT_LEAGUES_MARKETS_PREFIX_URL, GET_OUTRIGHT_LEAGUE_EVENTS_PREFIX_URL, GET_OUTRIGHT_LEAGUES_PREFIX_URL, GET_OUTRIGHT_SCORES_PREFIX_URL, } = enums_1.PrematchSnapshotApiClientPrefixUrl; /** * MetadataHttpClient class is responsible for sending requests * to the metadata API. It extends the BaseHttpClient class and * contains the logic for sending requests to the metadata API. * @param packageCredentials The package credentials for the API * @param snapshotApiBaseUrl The base URL of the snapshot API * @param logger The logger instance * @param mapper The mapper instance * @returns MetadataHttpClient instance that is responsible for * sending requests to the metadata API. * @extends BaseHttpClient class for sending requests to the * customers API. * @implements IMetadataHttpClient interface for sending * requests to the metadata API. * @see BaseHttpClient class for sending requests to the * customers API. * @see IMetadataHttpClient interface for sending requests to * the metadata API. * @see IHttpServiceConfig interface for the configuration of * the HTTP service. */ class PreMatchSnapshotApiClientImplementation extends _httpClient_1.BaseHttpClient { constructor({ packageCredentials, restApiBaseUrl, logger }, mapper) { super({ restApiBaseUrl, packageCredentials, logger }); this.mapper = mapper; } /** * Sends a request to the snapshot API to get fixtures. * @param requestDto The request DTO for getting fixtures. * @returns A promise that resolves to a * GetFixturesResultElement object containing the fixtures information. */ async getFixtures(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetFixtureRequest); const fixturesCollection = await this.postRequest({ route: GET_FIXTURES_PREFIX_URL, responseBodyType: responses_1.GetFixturesResultElement, requestBody: request, }); return fixturesCollection; } /** * Sends a request to the snapshot API to get livescores. * @param requestDto The request DTO for getting livescores. * @returns A promise that resolves to a * GetLivescoreResultElement object containing the livescores information. */ async getLivescores(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetLivescoreRequest); const scoresCollection = await this.postRequest({ route: GET_SCORES_PREFIX_URL, responseBodyType: responses_1.GetLivescoreResultElement, requestBody: request, }); return scoresCollection; } /** * Sends a request to the snapshot API to get fixtures markets. * @param requestDto The request DTO for getting fixtures markets. * @returns A promise that resolves to a * GetFixtureMarketsResultElement object containing the fixtures * markets information. */ async getFixtureMarkets(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetMarketRequest); const marketsCollection = await this.postRequest({ route: GET_FIXTURE_MARKETS_PREFIX_URL, responseBodyType: responses_1.GetFixtureMarketsResultElement, requestBody: request, }); return marketsCollection; } /** * Sends a request to the snapshot API to get events. * @param requestDto The request DTO for getting events. * @returns A promise that resolves to a * GetEventsResultElement object containing the events information. */ async getEvents(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetEventRequest); const eventsCollection = await this.postRequest({ route: GET_EVENTS_PREFIX_URL, responseBodyType: responses_1.GetEventsResultElement, requestBody: request, }); return eventsCollection; } /** * Sends a request to the snapshot API to get outright events. * @param requestDto The request DTO for getting outright events. * @returns A promise that resolves to a * GetOutrightEventsResultElement object containing the outright events information. */ async getOutrightEvents(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightEventRequest); const eventsCollection = await this.postRequest({ route: GET_OUTRIGHT_EVENT_PREFIX_URL, responseBodyType: responses_1.GetOutrightEventsResultElement, requestBody: request, }); return eventsCollection; } /** * Sends a request to the snapshot API to get outright fixtures. * @param requestDto The request DTO for getting outright fixtures. * @returns A promise that resolves to a * GetOutrightFixtureResultElement object containing the outright fixtures information. */ async getOutrightFixtures(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightFixtureRequest); const fixturesCollection = await this.postRequest({ route: GET_OUTRIGHT_FIXTURE_PREFIX_URL, responseBodyType: responses_1.GetOutrightFixtureResultElement, requestBody: request, }); return fixturesCollection; } /** * Sends a request to the snapshot API to get outright scores. * @param requestDto The request DTO for getting outright scores. * @returns A promise that resolves to a * GetOutrightScoresResultElement object containing the outright scores information. */ async getOutrightScores(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightLivescoreRequest); const scoresCollection = await this.postRequest({ route: GET_OUTRIGHT_SCORES_PREFIX_URL, responseBodyType: responses_1.GetOutrightScoresResultElement, requestBody: request, }); return scoresCollection; } /** * Sends a request to the snapshot API to get outright fixture markets. * @param requestDto The request DTO for getting outright fixture markets. * @returns A promise that resolves to a * GetOutrightFixtureMarketsResultElement object containing the outright fixture markets information. */ async getOutrightFixtureMarkets(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightMarketRequest); const marketsCollection = await this.postRequest({ route: GET_OUTRIGHT_FIXTURE_MARKETS_PREFIX_URL, responseBodyType: responses_1.GetOutrightFixtureMarketsResultElement, requestBody: request, }); return marketsCollection; } /** * Sends a request to the snapshot API to get outright leagues. * @param requestDto The request DTO for getting outright leagues. * @returns A promise that resolves to a * GetOutrightLeaguesResultElement object containing the outright leagues information. */ async getOutrightLeagues(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightLeaguesRequest); const leaguesCollection = await this.postRequest({ route: GET_OUTRIGHT_LEAGUES_PREFIX_URL, responseBodyType: responses_1.GetOutrightLeaguesResultElement, requestBody: request, }); return leaguesCollection; } /** * Sends a request to the snapshot API to get outright league markets. * @param requestDto The request DTO for getting outright leagues markets. * @returns A promise that resolves to a * GetOutrightLeagueMarketsResultElement object containing the outright leagues markets information. */ async getOutrightLeagueMarkets(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightLeagueMarketRequest); const leagueMarketsCollection = await this.postRequest({ route: GET_OUTRIGHT_LEAGUES_MARKETS_PREFIX_URL, responseBodyType: responses_1.GetOutrightLeagueMarketsResultElement, requestBody: request, }); return leagueMarketsCollection; } /** * Sends a request to the snapshot API to get outright league events. * @param requestDto The request DTO for getting outright league events. * @returns A promise that resolves to an array of * GetOutrightLeagueEventsResultElement objects containing the outright league events information. */ async getOutrightLeagueEvents(requestDto) { const request = this.mapper.map(requestDto, requests_1.GetOutrightLeagueEventsRequest); const leagueEventsCollection = await this.postRequest({ route: GET_OUTRIGHT_LEAGUE_EVENTS_PREFIX_URL, responseBodyType: responses_1.GetOutrightLeagueEventsResultElement, requestBody: request, }); return leagueEventsCollection; } } exports.PreMatchSnapshotApiClientImplementation = PreMatchSnapshotApiClientImplementation; //# sourceMappingURL=prematch-snapshot.service.js.map