UNPKG

typerinth

Version:

A TypeScript library for interacting with the Modrinth API.

29 lines (28 loc) 1.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetMultipleProjectsRoute = void 0; const Route_1 = require("../Route"); const errors_1 = require("../../errors"); class GetMultipleProjectsRoute extends Route_1.Route { projectIds; constructor(baseUrl, ua, cacheManager, projectIds) { super(baseUrl, ua, cacheManager); this.projectIds = projectIds; } getCacheKey() { return `projects:${this.projectIds.join(',')}`; } getUrl() { const url = Route_1.Route.addPathSegment(this.baseUrl, `/projects`); url.searchParams.append('ids', `[${this.projectIds.map((id) => `"${id}"`).join(', ')}]`); return url; } parseData(data) { if (!data) throw new errors_1.UnexpectedApiError('Unexpected empty response'); if (data.error) throw new errors_1.ApiError(data.error, data.description); return data; } } exports.GetMultipleProjectsRoute = GetMultipleProjectsRoute;