trainingpeaks-sdk
Version:
TypeScript SDK for TrainingPeaks API integration
24 lines (23 loc) • 1.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getWorkoutsList = void 0;
const http_errors_1 = require("../../../../../../adapters/errors/http-errors.js");
const api_urls_1 = require("../../../../../../adapters/public-api/constants/api-urls.js");
const workouts_schemas_1 = require("./workouts.schemas.js");
const getWorkoutsList = async (httpClient, params) => {
const { athleteId, startDate, endDate } = params;
const url = (0, api_urls_1.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 (0, http_errors_1.createHttpError)(errorResponse, { url, method: 'GET' });
}
return workouts_schemas_1.GetWorkoutsListApiResponseSchema.parse(response.data);
};
exports.getWorkoutsList = getWorkoutsList;