UNPKG

trainingpeaks-sdk

Version:
47 lines (46 loc) 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createTrainingPeaksSdk = void 0; const adapters_1 = require("../adapters/index.js"); const http_1 = require("../adapters/http/index.js"); const public_api_1 = require("../adapters/public-api/index.js"); const config_1 = require("../config.js"); const entrypoints_1 = require("../entrypoints/index.js"); const createTrainingPeaksSdk = (config = {}) => { const sdkConfig = (0, config_1.getSDKConfig)(config); const logger = (0, adapters_1.createLogger)({ level: sdkConfig.debug.level, enabled: sdkConfig.debug.enabled, }); logger.info('TrainingPeaks SDK initialized', { config }); const sessionStorage = (0, adapters_1.createInMemorySessionStorage)(); const httpClient = (0, http_1.createHttpClient)({ enableCookies: true, logger, sessionStorage, }); const authRepository = (0, public_api_1.createAuthRepository)({ httpClient, sessionStorage, logger, }); const workoutRepository = (0, public_api_1.createWorkoutRepository)({ httpClient, logger, }); const tpRepository = (0, public_api_1.createTrainingPeaksRepository)({ authRepository, workoutRepository, }); return { login: (0, entrypoints_1.loginEntrypoint)({ tpRepository, logger }), logout: (0, entrypoints_1.logoutEntrypoint)({ tpRepository, logger }), getWorkoutsList: (0, entrypoints_1.getWorkoutsListEntrypoint)({ tpRepository, sessionStorage, logger, }), logger, }; }; exports.createTrainingPeaksSdk = createTrainingPeaksSdk;