@crowdin/crowdin-api-client
Version:
JavaScript library for Crowdin API
109 lines (108 loc) • 4.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Teams = void 0;
const core_1 = require("../core");
class Teams extends core_1.CrowdinApi {
/**
* @param teamId team identifier
* @param options request options
* @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.teams.projects.permissions.getMany
*/
listTeamProjectPermissions(teamId, options) {
const url = `${this.url}/teams/${teamId}/projects/permissions`;
return this.getList(url, options === null || options === void 0 ? void 0 : options.limit, options === null || options === void 0 ? void 0 : options.offset);
}
/**
* @param teamId team identifier
* @param request request body
* @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.teams.projects.permissions.patch
*/
editTeamProjectPermissions(teamId, request) {
const url = `${this.url}/teams/${teamId}/projects/permissions`;
return this.patch(url, request, this.defaultConfig());
}
/**
* @param projectId project identifier
* @param request request body
* @see https://support.crowdin.com/enterprise/api/#operation/api.projects.teams.post
*/
addTeamToProject(projectId, request) {
const url = `${this.url}/projects/${projectId}/teams`;
return this.post(url, request, this.defaultConfig());
}
listTeams(options, deprecatedOffset) {
if ((0, core_1.isOptionalNumber)(options, '0' in arguments)) {
options = { limit: options, offset: deprecatedOffset };
}
let url = `${this.url}/teams`;
url = this.addQueryParam(url, 'orderBy', options.orderBy);
return this.getList(url, options.limit, options.offset);
}
/**
* @param request request body
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.post
*/
addTeam(request) {
const url = `${this.url}/teams`;
return this.post(url, request, this.defaultConfig());
}
/**
* @param teamId team identifier
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.get
*/
getTeam(teamId) {
const url = `${this.url}/teams/${teamId}`;
return this.get(url, this.defaultConfig());
}
/**
* @param teamId team identifier
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.delete
*/
deleteTeam(teamId) {
const url = `${this.url}/teams/${teamId}`;
return this.delete(url, this.defaultConfig());
}
/**
* @param teamId team identifier
* @param request request body
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.patch
*/
editTeam(teamId, request) {
const url = `${this.url}/teams/${teamId}`;
return this.patch(url, request, this.defaultConfig());
}
teamMembersList(teamId, options, deprecatedOffset) {
if ((0, core_1.isOptionalNumber)(options, '1' in arguments)) {
options = { limit: options, offset: deprecatedOffset };
}
const url = `${this.url}/teams/${teamId}/members`;
return this.getList(url, options.limit, options.offset);
}
/**
* @param teamId team identifier
* @param request request body
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.members.post
*/
addTeamMembers(teamId, request) {
const url = `${this.url}/teams/${teamId}/members`;
return this.post(url, request, this.defaultConfig());
}
/**
* @param teamId team identifier
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.members.deleteMany
*/
deleteAllTeamMembers(teamId) {
const url = `${this.url}/teams/${teamId}/members`;
return this.delete(url, this.defaultConfig());
}
/**
* @param teamId team identifier
* @param memberId member identifier
* @see https://support.crowdin.com/enterprise/api/#operation/api.teams.members.delete
*/
deleteTeamMember(teamId, memberId) {
const url = `${this.url}/teams/${teamId}/members/${memberId}`;
return this.delete(url, this.defaultConfig());
}
}
exports.Teams = Teams;