UNPKG

@crowdin/crowdin-api-client

Version:
95 lines (94 loc) 3.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Labels = void 0; const core_1 = require("../core"); class Labels extends core_1.CrowdinApi { listLabels(projectId, options, deprecatedOffset) { if ((0, core_1.isOptionalNumber)(options, '1' in arguments)) { options = { limit: options, offset: deprecatedOffset }; } let url = `${this.url}/projects/${projectId}/labels`; url = this.addQueryParam(url, 'orderBy', options.orderBy); return this.getList(url, options.limit, options.offset); } /** * @param projectId project identifier * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.post */ addLabel(projectId, request) { const url = `${this.url}/projects/${projectId}/labels`; return this.post(url, request, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.get */ getLabel(projectId, labelId) { const url = `${this.url}/projects/${projectId}/labels/${labelId}`; return this.get(url, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.delete */ deleteLabel(projectId, labelId) { const url = `${this.url}/projects/${projectId}/labels/${labelId}`; return this.delete(url, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.patch */ editLabel(projectId, labelId, request) { const url = `${this.url}/projects/${projectId}/labels/${labelId}`; return this.patch(url, request, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.screenshots.post */ assignLabelToScreenshots(projectId, labelId, request) { const url = `${this.url}/projects/${projectId}/labels/${labelId}/screenshots`; return this.post(url, request, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @param screenshotIds screenshot identifiers * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.screenshots.deleteMany */ unassignLabelFromScreenshots(projectId, labelId, screenshotIds) { let url = `${this.url}/projects/${projectId}/labels/${labelId}/screenshots`; url = this.addQueryParam(url, 'screenshotIds', screenshotIds); return this.delete(url, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.strings.post */ assignLabelToString(projectId, labelId, request) { const url = `${this.url}/projects/${projectId}/labels/${labelId}/strings`; return this.post(url, request, this.defaultConfig()); } /** * @param projectId project identifier * @param labelId label identifier * @param stringIds string identifiers * @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.strings.deleteMany */ unassignLabelFromString(projectId, labelId, stringIds) { let url = `${this.url}/projects/${projectId}/labels/${labelId}/strings`; url = this.addQueryParam(url, 'stringIds', stringIds); return this.delete(url, this.defaultConfig()); } } exports.Labels = Labels;