UNPKG

trainingpeaks-sdk

Version:
20 lines (19 loc) 1.02 kB
import { createHttpError } from '../../../../../../adapters/errors/http-errors.js'; import { generateWorkoutListUrl } from '../../../../../../adapters/public-api/constants/api-urls.js'; import { GetWorkoutsListApiResponseSchema } from './workouts.schemas.js'; export const getWorkoutsList = async (httpClient, params) => { const { athleteId, startDate, endDate } = params; const url = generateWorkoutListUrl(athleteId, startDate, endDate); const response = await httpClient.get(url); if (!response.success || response.data == null) { const errorResponse = { status: response.error?.status || 500, statusText: response.error?.statusText || 'Internal Server Error', data: response.error?.data || { message: 'Failed to fetch workouts list: response data is null or undefined', }, }; throw createHttpError(errorResponse, { url, method: 'GET' }); } return GetWorkoutsListApiResponseSchema.parse(response.data); };